Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/ReadEtextsActivity.py
diff options
context:
space:
mode:
authorJames Simmons <jim@olpc.simmons>2009-07-07 00:42:37 (GMT)
committer James Simmons <jim@olpc.simmons>2009-07-07 00:42:37 (GMT)
commit76771120068eeeb42fe99b6b3e02617a7436f0ac (patch)
treee24f7b6a1dc2acaabb3494b9e922f2040bd50c00 /ReadEtextsActivity.py
parentb7aff4ce574f189f874d68f34c03c3710e962860 (diff)
modified: ReadEtextsActivity.py
modified: readtoolbar.py
Diffstat (limited to 'ReadEtextsActivity.py')
-rw-r--r--ReadEtextsActivity.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/ReadEtextsActivity.py b/ReadEtextsActivity.py
index 507008a..e3e97cb 100644
--- a/ReadEtextsActivity.py
+++ b/ReadEtextsActivity.py
@@ -49,6 +49,12 @@ COLUMN_PATH = 2
_logger = logging.getLogger('read-etexts-activity')
+class Annotations():
+ title = ''
+ notes = {0:''}
+ bookmarks = []
+ highlights = {0: [] }
+
class ReadHTTPRequestHandler(network.ChunkedGlibHTTPRequestHandler):
"""HTTP Request Handler for transferring document while collaborating.
@@ -149,15 +155,23 @@ class ReadEtextsActivity(activity.Activity):
self.scrolled = gtk.ScrolledWindow()
self.scrolled.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
self.scrolled.props.shadow_type = gtk.SHADOW_NONE
+
self.textview = gtk.TextView()
self.textview.set_editable(False)
self.textview.set_cursor_visible(False)
self.textview.set_left_margin(50)
self.textview.connect("key_press_event", self.keypress_cb)
+
+ self.annotation_textview = gtk.TextView()
+ self.annotation_textview.set_left_margin(50)
+ self.annotation_textview.set_right_margin(50)
+ self.annotation_textview.set_wrap_mode(gtk.WRAP_WORD)
+
buffer = self.textview.get_buffer()
buffer.connect("mark-set", self.mark_set_cb)
self.font_desc = pango.FontDescription("sans %d" % style.zoom(10))
self.textview.modify_font(self.font_desc)
+ self.annotation_textview.modify_font(self.font_desc)
self.scrolled.add(self.textview)
self.textview.show()
self.scrolled.show()
@@ -195,10 +209,12 @@ class ReadEtextsActivity(activity.Activity):
vbox.pack_start(self.progressbar, False, False, 10)
vbox.pack_start(self.scrolled)
vbox.pack_end(self.list_scroller)
+ vbox.pack_end(self.annotation_textview, False, False, 10)
self.set_canvas(vbox)
tv.show()
vbox.show()
self.list_scroller.hide()
+ self.annotation_textview.show()
textbuffer = self.textview.get_buffer()
self.tag = textbuffer.create_tag()
@@ -206,6 +222,8 @@ class ReadEtextsActivity(activity.Activity):
self.tag.set_property( 'foreground', "white")
self.tag.set_property( 'background', "black")
+ self.annotations = Annotations()
+
xopower.setup_idle_timeout()
if xopower.service_activated:
self.scrolled.props.vadjustment.connect("value-changed", self._user_action_cb)
@@ -350,6 +368,8 @@ class ReadEtextsActivity(activity.Activity):
def page_next(self):
page = self.page
+ textbuffer = self.annotation_textview.get_buffer()
+ self.annotations.notes[page] = textbuffer.get_text(textbuffer.get_start_iter(), textbuffer.get_end_iter())
page = page + 1
if page >= len(self.page_index): page=len(self.page_index) - 1
self.show_page(page)
@@ -360,6 +380,8 @@ class ReadEtextsActivity(activity.Activity):
def page_previous(self):
page = self.page
+ textbuffer = self.annotation_textview.get_buffer()
+ self.annotations.notes[page] = textbuffer.get_text(textbuffer.get_start_iter(), textbuffer.get_end_iter())
page=page-1
if page < 0: page=0
self.show_page(page)
@@ -375,12 +397,14 @@ class ReadEtextsActivity(activity.Activity):
font_size = 1
self.font_desc.set_size(font_size * 1024)
self.textview.modify_font(self.font_desc)
+ self.annotation_textview.modify_font(self.font_desc)
def font_increase(self):
font_size = self.font_desc.get_size() / 1024
font_size = font_size + 1
self.font_desc.set_size(font_size * 1024)
self.textview.modify_font(self.font_desc)
+ self.annotation_textview.modify_font(self.font_desc)
def scroll_down(self):
v_adjustment = self.scrolled.get_vadjustment()
@@ -423,6 +447,11 @@ class ReadEtextsActivity(activity.Activity):
textbuffer = self.textview.get_buffer()
label_text = label_text + '\n\n\n'
textbuffer.set_text(label_text)
+ annotation_textbuffer = self.annotation_textview.get_buffer()
+ try:
+ annotation_textbuffer.set_text(self.annotations.notes[page_number])
+ except KeyError:
+ annotation_textbuffer.set_text('')
self.prepare_highlighting(label_text)
def prepare_highlighting(self, label_text):