From 9f1433a269d2279a5aeaa04b1a202e47886b7ed1 Mon Sep 17 00:00:00 2001 From: Enrico Zini Date: Sun, 14 Jun 2009 13:23:55 +0800 Subject: [PATCH 1/1] Slightly better structure to menus --- plugins/50_sat_monitor.py | 2 +- plugins/99_debug.py | 2 +- zavai/__init__.py | 2 +- zavai/menu.py | 14 ++++++++++---- 4 files changed, 13 insertions(+), 7 deletions(-) diff --git a/plugins/50_sat_monitor.py b/plugins/50_sat_monitor.py index 1594a80..47458dc 100644 --- a/plugins/50_sat_monitor.py +++ b/plugins/50_sat_monitor.py @@ -113,7 +113,7 @@ def init(conf = None, registry = None, **kw): registry.register("app.satellite_monitor", SatelliteMonitor) menu_gps = registry.menu("main.gps") - monitor = gtk.Button(_("Monitor")) + monitor = zavai.MenuButton(_("Monitor")) monitor.connect("clicked", lambda *args: start_monitor(registry)) menu_gps.add_child(monitor) diff --git a/plugins/99_debug.py b/plugins/99_debug.py index b6458e8..160fa14 100644 --- a/plugins/99_debug.py +++ b/plugins/99_debug.py @@ -23,7 +23,7 @@ import sys def init(conf = None, registry = None, **kw): debug = registry.menu("main.debug") - quit = gtk.Button("Quit") + quit = zavai.MenuButton("Quit") quit.connect("clicked", gtk.main_quit) debug.add_child(quit) diff --git a/zavai/__init__.py b/zavai/__init__.py index 9a788d9..b349c43 100644 --- a/zavai/__init__.py +++ b/zavai/__init__.py @@ -19,7 +19,7 @@ from conf import read_config from plugins import load_plugins from registry import Registry, Resource -from menu import Menu, MenuLink +from menu import Menu, MenuLink, MenuButton from app import Zavai from gps import GPS, GPX diff --git a/zavai/menu.py b/zavai/menu.py index 21559d3..07c6965 100644 --- a/zavai/menu.py +++ b/zavai/menu.py @@ -20,6 +20,11 @@ import sys import zavai import gtk +class MenuButton(gtk.Button): + def __init__(self, *args, **kw): + super(MenuButton, self).__init__(*args, **kw) + self.set_size_request(0, 80) + class Menu(gtk.VBox, zavai.Resource): def __init__(self, registry, name, *args, **kw): super(Menu, self).__init__() @@ -34,13 +39,14 @@ class Menu(gtk.VBox, zavai.Resource): if parent is not None: self.vbox = gtk.VBox() - self.pack_start(self.vbox) - self.pack_start(registry.menu_link(parent, "Back"), True, True) + self.pack_start(self.vbox, False, False) + self.pack_start(gtk.Label(""), True, True) + self.pack_start(registry.menu_link(parent, "Back"), False, False) def add_child(self, widget): - self.vbox.pack_start(widget, True, True) + self.vbox.pack_start(widget, False, False) -class MenuLink(gtk.Button, zavai.Resource): +class MenuLink(MenuButton, zavai.Resource): def __init__(self, registry, targetName, label): super(MenuLink, self).__init__(label) self.target = "menu." + targetName -- 2.30.2