diff options
author | James Simmons <jim@simmons.olpc> | 2009-07-26 00:12:47 (GMT) |
---|---|---|
committer | James Simmons <jim@simmons.olpc> | 2009-07-26 00:12:47 (GMT) |
commit | 59ac3bdf1737245b437c391558e30cf48bdddc9b (patch) | |
tree | 240ff6ea3817d7a65a047a93a0d72de027ec70f2 /ReadEtextsActivity.py | |
parent | b877e129597ab533ef5f25cbb22429808193b738 (diff) |
new file: .gitignore
modified: ReadEtextsActivity.py
modified: readtoolbar.py
Allow setting and removing multiple highlights on a page.
Diffstat (limited to 'ReadEtextsActivity.py')
-rw-r--r-- | ReadEtextsActivity.py | 36 |
1 files changed, 25 insertions, 11 deletions
diff --git a/ReadEtextsActivity.py b/ReadEtextsActivity.py index a1185fd..950d14b 100644 --- a/ReadEtextsActivity.py +++ b/ReadEtextsActivity.py @@ -393,18 +393,21 @@ class ReadEtextsActivity(activity.Activity): return True def mark_set_cb(self, textbuffer, iter, textmark): - buffer = self.textview.get_buffer() - begin, end = buffer.get_selection_bounds() - underline_tuple = [begin.get_offset(), end.get_offset()] - tuples_list = self.annotations.get_highlights(self.page) - - count = 0 - while count < len(tuples_list) : - underline_tuple = tuples_list[count] - - count = count + 1 + self.read_toolbar.update_underline_button(False) if textbuffer.get_has_selection(): + buffer = self.textview.get_buffer() + begin, end = buffer.get_selection_bounds() + underline_tuple = [begin.get_offset(), end.get_offset()] + tuples_list = self.annotations.get_highlights(self.page) + count = 0 + while count < len(tuples_list) : + compare_tuple = tuples_list[count] + if underline_tuple[0] >= compare_tuple[0] and underline_tuple[1] <= compare_tuple[1]: + self.read_toolbar.update_underline_button(True) + break + count = count + 1 + self.edit_toolbar.copy.set_sensitive(True) self.read_toolbar.underline.props.sensitive = True else: @@ -491,7 +494,18 @@ class ReadEtextsActivity(activity.Activity): tuples_list.append(underline_tuple) self.annotations.set_highlights(self.page, tuples_list) else: - self.annotations.remove_bookmark(self.page) + buffer = self.textview.get_buffer() + begin, end = buffer.get_selection_bounds() + underline_tuple = [begin.get_offset(), end.get_offset()] + tuples_list = self.annotations.get_highlights(self.page) + count = 0 + while count < len(tuples_list) : + compare_tuple = tuples_list[count] + if underline_tuple[0] >= compare_tuple[0] and underline_tuple[1] <= compare_tuple[1]: + tuples_list.remove(compare_tuple) + self.annotations.set_highlights(self.page, tuples_list) + break + count = count + 1 self.show_underlines() def show_underlines(self): |