X-Git-Url: http://git.maemo.org/git/?p=drlaunch;a=blobdiff_plain;f=src%2Ficongrid.py;h=670c80f1ff06aec58c139848e92b1348341e9adb;hp=5184d099f9fa9c01c9589ee275797c3e61942bd3;hb=c8a10df6fd650fb9fabd9b9ac2c69c5e2e4985a8;hpb=799fd1a826e0a481ac5390e7ad719da299546ec6 diff --git a/src/icongrid.py b/src/icongrid.py index 5184d09..670c80f 100755 --- a/src/icongrid.py +++ b/src/icongrid.py @@ -32,20 +32,19 @@ import cairo import time from portrait import FremantleRotation -from xdg.IconTheme import getIconPath +#from xdg.IconTheme import getIconPath -import config +#import config import apps import icon from icon import Icon from icons import Icons -def getIcon(name): - ico=getIconPath(name, config.iconsize) - ret=gtk.gdk.pixbuf_new_from_file_at_size(ico, config.iconsize, - config.iconsize) - - return(ret) +#def getIcon(name, iconsize): +# ico=getIconPath(name, iconsize) +# ret=gtk.gdk.pixbuf_new_from_file_at_size(ico, iconsize, iconsize) +# +# return(ret) #class IconGrid(gtk.Widget, FremantleRotation): class IconGrid(object): #(gobject.GObject): @@ -56,20 +55,15 @@ class IconGrid(object): #(gobject.GObject): self.isconfig=isconfig - self.icons=Icons(isconfig) - - self.setMode('l') + self.icons=None + self.lasticon=None # The last icon that got selected - # Maybe fix those: -# w=(config.getSize() * config.iconsize) + \ -# (config.getSize()) * config.iconspace - #self.set_size_request(w, w) + def do_realize(self, config): + self.config=config -# self.setSize(config.getSize()) + self.icons=Icons(self.isconfig, self.config) + self.setMode('l') self.setSize((4,4)) - - self.lasticon=None # The last icon that got selected - self.reloadIcons() def connect(self, what, *args): @@ -94,9 +88,9 @@ class IconGrid(object): #(gobject.GObject): def iconAt(self, x, y): """ Get icon at coordinates x,y. X and Y are in pixels """ - w=config.iconsize + config.iconspace + w=self.config.iconsize + self.config.iconspace - if self.mode=='l' or config.getIndiv(): + if self.mode=='l' or self.config.getIndiv(): x2=int(x / w) y2=int(y / w) else: @@ -113,14 +107,15 @@ class IconGrid(object): #(gobject.GObject): return(ret) def _draw(self, cr, event): - w=config.iconsize + config.iconspace + w=self.config.iconsize + self.config.iconspace for x,y in self.icons: - if self.mode=='l' or config.getIndiv(): - x2=x * (config.iconsize + config.iconspace) - y2=y * (config.iconsize + config.iconspace) + if self.mode=='l' or self.config.getIndiv(): + x2=x * (self.config.iconsize + self.config.iconspace) + y2=y * (self.config.iconsize + self.config.iconspace) else: - x2=y * (config.iconsize + config.iconspace) - y2=(self.size[1]-x-1) * (config.iconsize + config.iconspace) + x2=y * (self.config.iconsize + self.config.iconspace) + y2=(self.size[1]-x-1) * \ + (self.config.iconsize + self.config.iconspace) # Only repaint the needed icons rect=gdk.Rectangle(x2, y2, w, w) @@ -217,17 +212,21 @@ class IconGrid(object): #(gobject.GObject): # self.setMode(o) class IconGridWidget(IconGrid, gtk.Widget): - def __init__(self, isconfig): + def __init__(self, isconfig, config): IconGrid.__init__(self, isconfig) gtk.Widget.__init__(self) + self.config=config + + IconGrid.do_realize(self, self.config) + if isconfig: - maxsz=config.getMaxSize() - w=maxsz[0] * (config.iconsize + config.iconspace) - h=maxsz[1] * (config.iconsize + config.iconspace) + maxsz=self.config.getMaxSize() + w=maxsz[0] * (self.config.iconsize + self.config.iconspace) + h=maxsz[1] * (self.config.iconsize + self.config.iconspace) else: - w=self.size[0] * (config.iconsize + config.iconspace) - h=self.size[1] * (config.iconsize + config.iconspace) + w=self.size[0] * (self.config.iconsize + self.config.iconspace) + h=self.size[1] * (self.config.iconsize + self.config.iconspace) self.set_size_request(w, h)