Allow variable size on map window
[wifihood] / wifiscanner / wifiview.py
index dabe111..850deee 100755 (executable)
@@ -6,7 +6,6 @@ try :
 except :
     hildon = False
 
-import urllib2
 import math
 
 import os
@@ -17,8 +16,8 @@ import wifimap.view
 
 class mapWidget ( wifimap.view.AbstractmapWidget , gtk.Image ) :
 
-  def __init__ ( self , config ) :
-    wifimap.view.AbstractmapWidget.__init__( self , config )
+  def __init__ ( self , config , map_size=(800,480) ) :
+    wifimap.view.AbstractmapWidget.__init__( self , config , map_size )
 
     gtk.Image.__init__(self)
 
@@ -81,6 +80,10 @@ class mapWidget ( wifimap.view.AbstractmapWidget , gtk.Image ) :
             pixbuf.copy_area( init_x, init_y, size_x, size_y, self.get_pixbuf(), dest_x , dest_y )
         del(pixbuf)
 
+      self.draw_paths
+
+  def draw_paths( self ) :
+
     pixmap,mask = self.get_pixbuf().render_pixmap_and_mask()
     red = pixmap.new_gc()
     red.foreground = pixmap.get_colormap().alloc_color("red")
@@ -226,7 +229,7 @@ class AbstractMapWindow:
       else :
           print "UNKNOWN",event.keyval
 
-    def __init__(self):
+    def __init__( self , map_size=(800,480) ) :
 
         self.connect("destroy", self.destroy)
 
@@ -234,8 +237,7 @@ class AbstractMapWindow:
 
         self.connect("key-press-event", self.on_key_press)
 
-        vbox = gtk.VBox(False, 0)
-        self.add( vbox )
+        self.vbox = gtk.VBox(False, 0)
 
         # To get explicit GDK_BUTTON_PRESS instead of paired GDK_LEAVE_NOTIFY & GDK_ENTER_NOTIFY
 #        self.add_events(gtk.gdk.BUTTON_MOTION_MASK | gtk.gdk.BUTTON_PRESS_MASK | gtk.gdk.BUTTON_RELEASE_MASK | gtk.gdk.POINTER_MOTION_MASK)
@@ -246,15 +248,10 @@ class AbstractMapWindow:
         self.connect('button_release_event', self.release_event)
         #
         self.config = wifimap.config.Configuration()
-        self.map = mapWidget( self.config )
-        vbox.pack_end( self.map , True , True , 5)
-
-        self.create_menu( vbox )
+        self.map = mapWidget( self.config , map_size )
+        self.vbox.pack_end( self.map , True , True , 5)
 
-        # and the window
-        self.show_all()
-
-        self.size_x , self.size_y = 800 , 480
+        self.size_x , self.size_y = map_size
         self.click_x , self.click_y = None , None
 
     def zoomdialog ( self , widget ) :
@@ -271,6 +268,9 @@ if hildon :
         def __init__(self):
             hildon.Window.__init__( self )
             AbstractMapWindow.__init__(self)
+            self.add( self.vbox )
+            self.create_menu( self.vbox )
+            self.show_all()
 
         def create_menu ( self , vbox ) :
 
@@ -298,6 +298,10 @@ else :
         def __init__(self):
             gtk.Window.__init__( self , gtk.WINDOW_TOPLEVEL )
             AbstractMapWindow.__init__(self)
+            self.add( self.vbox )
+            self.create_menu( self.vbox )
+            self.show_all()
+
             self.resize( self.size_x , self.size_y)
 
         def create_menu ( self , vbox ) :