summaryrefslogtreecommitdiff
path: root/xgps
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2009-12-16 11:52:29 +0000
committerEric S. Raymond <esr@thyrsus.com>2009-12-16 11:52:29 +0000
commitc7400940a7eaa711d366962547562d51d0f52bb6 (patch)
treeab60b05a9484444b4a6685aa2cd1bc6e1e8b7763 /xgps
parent48941c8d648b02108b26289fff474e7d0fe15db9 (diff)
downloadgpsd-c7400940a7eaa711d366962547562d51d0f52bb6.tar.gz
Add File and Units menu to xgps.
Diffstat (limited to 'xgps')
-rwxr-xr-xxgps64
1 files changed, 35 insertions, 29 deletions
diff --git a/xgps b/xgps
index d93f87da..38315b27 100755
--- a/xgps
+++ b/xgps
@@ -191,35 +191,41 @@ class Base:
self.window.connect("destroy", lambda w: gtk.main_quit())
- #self.tooltips = gtk.Tooltips()
-
- # Set up toolbar style
- toolbar = gtk.Toolbar()
- toolbar.set_orientation(gtk.ORIENTATION_HORIZONTAL)
- toolbar.set_style(gtk.TOOLBAR_TEXT)
- toolbar.set_border_width(1)
- vbox.pack_start(toolbar, expand = False)
- toolbar.show()
-
- quit = gtk.ToolButton(gtk.STOCK_QUIT)
- toolbar.insert(quit, -1)
- quit.set_tooltip_text("Leave this program.")
- quit.connect("clicked", lambda w: gtk.main_quit())
- quit.show()
-
- #viewmenu = gtk.Menu()
- #for (t, w) in (("Satellites", self.satbox),
- # ("Raw Data", self.rawdisplay),
- # ("GPS Display", self.dataframe)):
- # button = gtk.CheckButton(t)
- # viewmenu.add(button)
- #viewmenu.show_all()
-
- #properties = gtk.ToolButton(gtk.STOCK_PROPERTIES)
- #toolbar.insert(properties, -1)
- #properties.set_tooltip_text("Preferences.")
- #properties.connect("clicked", self.properties_handler)
- #properties.show()
+ uimanager = gtk.UIManager()
+ self.accelgroup = uimanager.get_accel_group()
+ self.window.add_accel_group(self.accelgroup)
+ self.actiongroup = gtk.ActionGroup('xgps')
+ self.actiongroup.add_actions(
+ [('Quit', gtk.STOCK_QUIT, '_Quit', None,
+ 'Quit the Program', lambda w: gtk.main_quit()),
+ ('File', None, '_File'),
+ ('Units', None, '_Units')])
+ self.actiongroup.get_action('Quit').set_property('short-label', '_Quit')
+ self.actiongroup.add_radio_actions(
+ [('Imperial', None, '_Imperial', '<Control>i',
+ 'Imperial units', 0),
+ ('Nautical', None, '_Nautical', '<Control>n',
+ 'Nautical units', 1),
+ ('Metric', None, '_Metric', '<Control>m',
+ 'Metric Units', 2),
+ ], 0, lambda a, v: self.set_units(['i', 'n', 'm'][a.get_current_value()]))
+ uimanager.insert_action_group(self.actiongroup, 0)
+ uimanager.add_ui_from_string('''
+<ui>
+ <menubar name="MenuBar">
+ <menu action="File">
+ <menuitem action="Quit"/>
+ </menu>
+ <menu action="Units">
+ <menuitem action="Imperial"/>
+ <menuitem action="Nautical"/>
+ <menuitem action="Metric"/>
+ </menu>
+ </menubar>
+</ui>
+''')
+ menubar = uimanager.get_widget('/MenuBar')
+ vbox.pack_start(menubar, False)
self.satbox = gtk.HBox(False, 0)
vbox.add(self.satbox)