X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=wifiscanner%2Fwifiview;h=b7da997dddae660f6ae40ac4587c67b72f0c44b3;hb=42fb4f3fd9cd4c79b1cc4b32a0db9bfa29bfb8ca;hp=4a6f83b0c6d6cad28213d0260300d0ed066a3eb1;hpb=c032083e68dc93f9eefb7cc1a2386658ea1e702d;p=wifihood diff --git a/wifiscanner/wifiview b/wifiscanner/wifiview index 4a6f83b..b7da997 100755 --- a/wifiscanner/wifiview +++ b/wifiscanner/wifiview @@ -13,69 +13,6 @@ import wifimap.config import wifimap.view -if hildon : - - class ZoomDialog ( hildon.TouchSelector ) : - - def __init__ ( self , widget ) : - hildon.TouchSelector.__init__( self ) - - zooms = gtk.ListStore(str) - - active = index = 0 - for zoom in range(8,19) : - iter = zooms.append() - zooms.set( iter , 0 , "%2d" % zoom ) - if zoom == widget.conf.zoom : - active = index - index += 1 - - column = self.append_text_column( zooms , True ) - #renderer = gtk.CellRendererText() - #column = self.append_column( zooms , renderer ) - #column.set_property('text-column', 0) - - # NOTE : with text=True, we must use 1 instead of 0 - self.set_active( 0 , active ) - -else : - - class ZoomDialog ( gtk.Dialog ) : - - def __init__ ( self , widget ) : - gtk.Dialog.__init__( self , "Select zoom level", - None, - gtk.DIALOG_MODAL, - ( gtk.STOCK_OK, gtk.RESPONSE_ACCEPT, - gtk.STOCK_CANCEL, gtk.RESPONSE_REJECT - ) - ) - - zooms = gtk.ListStore(int) - combo = gtk.ComboBox( zooms ) - - for zoom in range(8,19) : - iter = zooms.append() - zooms.set( iter , 0 , zoom ) - if zoom == widget.conf.zoom : - combo.set_active_iter( iter ) - - cell = gtk.CellRendererText() - combo.pack_start(cell, True) - combo.add_attribute(cell, 'text', 0) - - self.vbox.pack_start(combo , True, True, 0) - - self.connect_object( "response", self.response , combo , widget ) - - def response ( self , combo , response , widget ) : - if response == gtk.RESPONSE_ACCEPT : - item = combo.get_active_iter() - model = combo.get_model() - widget.SetZoom( model.get(item,0)[0] ) - self.destroy() - - class AbstractMapWindow: def destroy(self, widget, data=None): @@ -123,17 +60,13 @@ class AbstractMapWindow: self.connect('button_press_event', self.press_event) self.connect('button_release_event', self.release_event) - self.config = wifimap.config.Configuration() + self.config = wifimap.config.Configuration( 'map' ) self.map = wifimap.view.mapWidget( self.config , map_size ) self.vbox.pack_end( self.map , True , True , 5) self.size_x , self.size_y = map_size self.click_x , self.click_y = None , None - def zoomdialog ( self , widget ) : - dialog = ZoomDialog( widget ) - dialog.show_all() - def run(self): gtk.main() @@ -143,25 +76,27 @@ if hildon : def __init__(self): hildon.Window.__init__( self ) + zoomlevel.set_title( "Wifi Map" ) + program = hildon.Program.get_instance() + program.add_window(self) + AbstractMapWindow.__init__(self) self.add( self.vbox ) + self.create_menu( self.vbox ) + self.show_all() def create_menu ( self , vbox ) : self.menubar = menubar = hildon.AppMenu() - #zoomlevel = hildon.Button(gtk.HILDON_SIZE_AUTO, - # hildon.BUTTON_ARRANGEMENT_VERTICAL, - # "Zoom level", None) - #zoomlevel.connect_object( "clicked", self.zoomstack, self.map ) - selector = ZoomDialog( self.map ) + selector = wifimap.config.ZoomDialog( self.map.conf , self.map.SetZoom ) zoomlevel = hildon.PickerButton(gtk.HILDON_SIZE_AUTO, hildon.BUTTON_ARRANGEMENT_VERTICAL) zoomlevel.set_title( "Zoom" ) zoomlevel.set_selector( selector ) - zoomlevel.connect_object( "value-changed", self.map.ZoomChange , selector ) + zoomlevel.connect_object( "value-changed", selector.zoomdialog , zoomlevel , self.map.conf ) menubar.append( zoomlevel ) menubar.show_all() @@ -185,11 +120,15 @@ else : menubar = gtk.MenuBar() zoomlevel = gtk.MenuItem( label="Zoom level" ) - zoomlevel.connect_object( "activate", self.zoomdialog, self.map ) + 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() + window = MapWindow() window.run()