Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/toolbar.py
diff options
context:
space:
mode:
authorMarc Maurer <uwog@uwog.net>2007-05-16 21:13:51 (GMT)
committer Marc Maurer <uwog@uwog.net>2007-05-16 21:13:51 (GMT)
commit602b380d9048576befdeb82048c67e9bf17d08a8 (patch)
treeccbe52ea20c1d8d6c0bfc2fdafdd6c4b898295ed /toolbar.py
parent004b17047b709cf4503dd7854e27c9d8ae334c30 (diff)
Add a page spinner. It follows the current page number, but you can't use it yet to set the actual page yet
Diffstat (limited to 'toolbar.py')
-rw-r--r--toolbar.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/toolbar.py b/toolbar.py
index 79dd971..c00e815 100644
--- a/toolbar.py
+++ b/toolbar.py
@@ -296,6 +296,23 @@ class ViewToolbar(gtk.Toolbar):
self.insert(tool_item_zoom, -1)
tool_item_zoom.show()
+ separator = gtk.SeparatorToolItem()
+ separator.set_draw(True)
+ self.insert(separator, -1)
+
+ self._page_spin_adj = gtk.Adjustment(0, 1, 0, 1, 1, 0)
+ self._page_spin = gtk.SpinButton(self._page_spin_adj, 0, 0)
+ self._page_spin_id = self._page_spin.connect('value-changed', self._page_spin_cb)
+ self._page_spin.set_numeric(True)
+ self._page_spin.show()
+ tool_item_page = gtk.ToolItem()
+ tool_item_page.add(self._page_spin)
+ self.insert(tool_item_page, -1)
+ tool_item_page.show()
+
+ self._abiword_canvas.connect("page-count", self._page_count_cb)
+ self._abiword_canvas.connect("current-page", self._current_page_cb)
+
def set_zoom_percentage(self, zoom):
self._zoom_percentage = zoom
#print 'new zoom percentage:',self._zoom_percentage
@@ -319,3 +336,21 @@ class ViewToolbar(gtk.Toolbar):
self._zoom_percentage = self._zoom_spin.get_value_as_int()
self._abiword_canvas.set_zoom_percentage(self._zoom_percentage)
+ def _page_spin_cb(self, button):
+ print "page spin"
+ self._page_num = self._page_spin.get_value_as_int()
+# TODO
+
+ def _page_count_cb(self, canvas, count):
+ print "page count:",count
+ current_page = canvas.get_current_page_num()
+ self._page_spin_adj.set_all(current_page, 1, count, 1, 1, 0)
+
+ def _current_page_cb(self, canvas, num):
+ print "current page:",num
+ self._page_spin.handler_block(self._page_spin_id)
+ try:
+ self._page_spin.set_value(num)
+ finally:
+ self._page_spin.handler_unblock(self._page_spin_id)
+