BUGFIX : add viewport to actually use central tile as reference
authorjaviplx <javiplx@gmail.com>
Sun, 8 May 2011 13:00:18 +0000 (13:00 +0000)
committerjaviplx <javiplx@gmail.com>
Sun, 8 May 2011 13:00:18 +0000 (13:00 +0000)
git-svn-id: file:///svnroot/wifihood/branches/mapview-redesign@148 c51dfc6a-5949-4919-9c8e-f207a149c383

view.py

diff --git a/view.py b/view.py
index 0585a2a..e411b38 100755 (executable)
--- a/view.py
+++ b/view.py
@@ -22,6 +22,8 @@ class background_map ( gtk.gdk.Pixmap ) :
         self.size = map( lambda x : x + 2 * bordersize , size )
         pixsize = map( lambda x : x * tileloader.tilesize , self.size )
 
+        self.vport = bordersize * tileloader.tilesize , bordersize * tileloader.tilesize
+
         gtk.gdk.Pixmap.__init__( self , None , pixsize[0] , pixsize[1] , 24 )
 
         self.fill = map( lambda x : False , range( self.size[0] * self.size[1] ) )
@@ -36,7 +38,7 @@ class background_map ( gtk.gdk.Pixmap ) :
         for x in range(self.size[0]) :
             for y in range(self.size[1]) :
 
-                pixbuf = self.tileloader.get_tile( (x,y) )
+                pixbuf = self.tileloader.get_tile( (x-self.center[0],y-self.center[1]) )
                 if pixbuf :
                     self.fill[ self.index(x,y) ] = True
                 else :
@@ -245,7 +247,7 @@ class simpleMapWidget ( AbstractmapWidget , gtk.Image ) :
         self._bg = background_map( map_size , tile_loader( config ) )
 
         p = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB, True, 8, map_size[0] , map_size[1] )
-        p.get_from_drawable( self._bg , self._bg.get_colormap() , 0, 0 , 0, 0 , map_size[0] , map_size[1] )
+        p.get_from_drawable( self._bg , self._bg.get_colormap() , self._bg.vport[0], self._bg.vport[1] , 0, 0 , map_size[0] , map_size[1] )
         self.set_from_pixbuf(p)
     
     def composeMap( self ) :