diff options
author | Lucian Branescu Mihaila <lucian.branescu@gmail.com> | 2010-10-10 17:17:14 (GMT) |
---|---|---|
committer | Lucian Branescu Mihaila <lucian.branescu@gmail.com> | 2010-10-10 17:17:14 (GMT) |
commit | 16f7f33e80dfa02e2a308e19e48d1f6797b3e94a (patch) | |
tree | 998ec6d4086ad9cc12c81b0c51de36947aa55b4e /epubview | |
parent | 6615b6720f37b394a2e7674fbff654c9fcbaf548 (diff) | |
parent | a26d99a5e6de4349206552791882781f9196d9f0 (diff) |
Merge branch 'master' of git://git.sugarlabs.org/read/evince-2-30
Diffstat (limited to 'epubview')
-rw-r--r-- | epubview/epubview.py | 38 |
1 files changed, 18 insertions, 20 deletions
diff --git a/epubview/epubview.py b/epubview/epubview.py index 595eb20..1ee5246 100644 --- a/epubview/epubview.py +++ b/epubview/epubview.py @@ -35,17 +35,17 @@ LOADING_HTML = ''' class _View(gtk.HBox): __gproperties__ = { - 'has-selection' : (gobject.TYPE_BOOLEAN, 'whether has selection', - 'whether the widget has selection or not', - 0, gobject.PARAM_READABLE), - 'zoom' : (gobject.TYPE_FLOAT, 'the zoom level', - 'the zoom level of the widget', - 0.5, 4.0, 1.0, gobject.PARAM_READWRITE) + 'scale' : (gobject.TYPE_FLOAT, 'the zoom level', + 'the zoom level of the widget', + 0.5, 4.0, 1.0, gobject.PARAM_READWRITE) } __gsignals__ = { 'page-changed': (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, - ([])) + ([])), + 'selection-changed': (gobject.SIGNAL_RUN_FIRST, + gobject.TYPE_NONE, + ([])), } def __init__(self): gobject.threads_init() @@ -62,8 +62,8 @@ class _View(gtk.HBox): self.__going_fwd = True self.__going_back = False self.__page_changed = False - self.has_selection = False - self.zoom = 1.0 + self._has_selection = False + self.scale = 1.0 self._epub = None self._findjob = None self.__in_search = False @@ -106,9 +106,9 @@ class _View(gtk.HBox): def do_get_property(self, property): if property.name == 'has-selection': - return self.has_selection + return self._has_selection elif property.name == 'zoom': - return self.zoom + return self.scale else: raise AttributeError, 'unknown property %s' % property.name @@ -122,7 +122,7 @@ class _View(gtk.HBox): ''' Returns True if any part of the content is selected ''' - return self.get_property('has-selection') + return self._has_selection def get_zoom(self): ''' @@ -160,7 +160,7 @@ class _View(gtk.HBox): ''' Returns True if it is possible to zoom in further ''' - if self.zoom < 4: + if self.scale < 4: return True else: return False @@ -169,7 +169,7 @@ class _View(gtk.HBox): ''' Returns True if it is possible to zoom out further ''' - if self.zoom > 0.5: + if self.scale > 0.5: return True else: return False @@ -292,12 +292,11 @@ class _View(gtk.HBox): def __set_zoom(self, value): self._view.set_zoom_level(value) - self.zoom = value + self.scale = value def __set_has_selection(self, value): - if value != self.has_selection: - self.has_selection = value - self.notify('has-selection') + if value != self._has_selection: + self._has_selection = value def _view_populate_popup_cb(self, view, menu): menu.destroy() #HACK @@ -307,6 +306,7 @@ class _View(gtk.HBox): # FIXME: This does not seem to be implemented in # webkitgtk yet print view.has_selection() + self.emit('selection-changed') def _view_buttonrelease_event_cb(self, view, event): # Ugly hack @@ -349,7 +349,6 @@ class _View(gtk.HBox): return False def _view_load_finished_cb(self, v, frame): - # Normally the line below would not be required - ugly workaround for # possible Webkit bug. See : https://bugs.launchpad.net/bugs/483231 self._sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_NEVER) @@ -560,4 +559,3 @@ class _View(gtk.HBox): def _destroy_cb(self, widget): self._epub.close() - |