Implement wrapped menubar for mapping application
authorjaviplx <javiplx@gmail.com>
Sat, 7 May 2011 15:01:14 +0000 (15:01 +0000)
committerjaviplx <javiplx@gmail.com>
Sat, 7 May 2011 15:01:14 +0000 (15:01 +0000)
git-svn-id: file:///svnroot/wifihood/branches/hildon-wrapping@129 c51dfc6a-5949-4919-9c8e-f207a149c383

hildongtk.py
wifiview

index 0582338..bbfa0b9 100644 (file)
@@ -1,7 +1,7 @@
 
 import gtk
 
-_wrapper_version = 0.9
+__version__ = 0.9
 
 gtk.HILDON_SIZE_FINGER_HEIGHT = -1
 gtk.HILDON_SIZE_AUTO = -1
@@ -15,12 +15,19 @@ class Program :
         return Program()
     get_instance = staticmethod( get_instance )
     def add_window ( self , window ) :
-        print "ATE",self.window , window
         self.window = window
 
 class Window ( gtk.Window ) :
     def __init__ ( self ) :
         gtk.Window.__init__( self , gtk.WINDOW_TOPLEVEL )
+    def set_app_menu( self , menubar ) :
+        self.vbox.pack_start(menubar,True,True,5)
+
+class AppMenu ( gtk.MenuBar ) :
+    def append ( self , item ) :
+      _item = gtk.MenuItem( "KK-%s"%item.get_label() )
+      _item.connect( "activate", lambda arg : item.get_selector().show_all() )
+      gtk.MenuBar.append( self , _item )
 
 class StackableWindow ( gtk.Window ) :
     def __init__ ( self ) :
@@ -71,7 +78,7 @@ class PickerButton ( gtk.Button ) :
         return self._selector
     def set_selector ( self , selector ) :
         self._selector = selector
-        self.connect_object( "clicked", self._selector.muestra , self._selector )
+        self.connect( "clicked", lambda arg : self._selector.show_all() )
         self._build_label()
 
 class TouchSelector ( gtk.Dialog ) :
@@ -103,9 +110,6 @@ class TouchSelector ( gtk.Dialog ) :
             model = self.combo.get_model()
             return model.get(item,0)[0]
 
-    def muestra ( self , widget ) :
-        self.show_all()
-
     def response ( self , widget , response , config ) :
         if response == gtk.RESPONSE_ACCEPT :
             self.zoomdialog( widget , config )
index fa9198f..2b6ddf7 100755 (executable)
--- a/wifiview
+++ b/wifiview
@@ -89,8 +89,6 @@ class MapWindow ( AbstractMapWindow , hildon.Window ) :
 
         def create_menu ( self , vbox ) :
 
-          if not "_wrapper_version" in dir(hildon) :
-
             self.menubar = menubar = hildon.AppMenu()
 
             selector = wifimap.config.ZoomDialog( self.map.conf , self.map.SetZoom )
@@ -98,22 +96,14 @@ class MapWindow ( AbstractMapWindow , hildon.Window ) :
                                           hildon.BUTTON_ARRANGEMENT_VERTICAL)
             zoomlevel.set_title( "Zoom" )
             zoomlevel.set_selector( selector )
-            zoomlevel.connect_object( "value-changed", selector.zoomdialog , zoomlevel , self.map.conf )
+#            zoomlevel.connect_object( "value-changed", selector.zoomdialog , zoomlevel , self.map.conf )
+            selector.connect_object( "response", selector.response , zoomlevel , self.map.conf )
+            #zoomlevel.connect_object( "activate", self.zoomdialog, self.map.conf )
             menubar.append( zoomlevel )
 
             menubar.show_all()
             self.set_app_menu( menubar )
 
-          else :
-
-            menubar = gtk.MenuBar()
-
-            zoomlevel = gtk.MenuItem( label="Zoom level" )
-            zoomlevel.connect_object( "activate", self.zoomdialog, self.map.conf )
-            menubar.append( zoomlevel )
-
-            vbox.pack_start(menubar,True,True,5)
-
         def zoomdialog ( self , config ) :
             dialog = wifimap.config.ZoomDialog( config , self.map.SetZoom )
             dialog.show_all()