+
+ def do_change_reftile( self , dx , dy ) :
+ self.tileloader.reftile[0] += dx
+ self.tileloader.reftile[1] += dy
+
+ pixsize = self.get_size()
+ pixbuf = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB, False, 8, pixsize[0] , pixsize[1] )
+ pixbuf.get_from_drawable( self , self.get_colormap() , 0 , 0 , 0 , 0 , pixsize[0] , pixsize[1] )
+
+ # width , source , destination
+ x_vals = [ pixsize[0] , 0 , 0 ]
+ y_vals = [ pixsize[1] , 0 , 0 ]
+
+ if dx :
+ x_vals[0] -= self.tileloader.tilesize
+ x_vals[dx] = self.tileloader.tilesize
+ if dx == 1 :
+ for y in range(self.size[1]) : self.fill[ self.index(self.size[0]-1,y) ] = False
+ if dx == -1 :
+ for y in range(self.size[1]) : self.fill[ self.index(0,y) ] = False
+ if dy :
+ y_vals[0] -= self.tileloader.tilesize
+ y_vals[dy] = self.tileloader.tilesize
+ if dy == 1 :
+ for x in range(self.size[0]) : self.fill[ self.index(x,self.size[1]-1) ] = False
+ if dy == -1 :
+ for x in range(self.size[0]) : self.fill[ self.index(x,0) ] = False
+
+ self.draw_pixbuf( None , pixbuf , x_vals[1] , y_vals[1] , x_vals[-1] , y_vals[-1] , x_vals[0] , y_vals[0] )
+ self.loadtiles()
+