def __init__(self, isconfig):
self.__gobject_init__()
self.icons={}
+ self.allicons={}
self.size=0
self.isconfig=isconfig
+ # signal handlers
+ self.h={}
+
+ # setup allicons
+ maxsz=4
+ for x in xrange(maxsz):
+ for y in xrange(maxsz):
+ k=(x,y)
+ ico=Icon(self.isconfig)
+ self.allicons[k]=ico
+ self.connect_one(ico)
+
@classmethod
def register_signals(cls):
signals=icon.signals
return(IconIter(self.icons))
def connect_one(self, which):
- which.connect('long-press', self.signalLongpress)
- which.connect('click', self.signalClick)
- which.connect('tripple-click', self.signalTrippleClick)
+ self.h[which]={
+ 'longpress': which.connect('long-press', self.signalLongpress),
+ 'click': which.connect('click', self.signalClick),
+ 'tripple': which.connect('tripple-click',
+ self.signalTrippleClick)
+ }
def disconnect_one(self, which):
- which.disconnect('long-press', self.signalLongpress)
- which.disconnect('click', self.signalClick)
- which.disconnect('tripple-click', self.signalTrippleClick)
+ for i in self.h[which]:
+ which.disconnect(self.h[which][i])
+ self.h.pop(which)
+# which.disconnect(self.h[which]_longpress)
+# which.disconnect(self.h_click)
+# which.disconnect(self.h_tripple)
def setSize(self, sz):
+# print "sz:", sz, self.size
+
if sz==self.size:
return
for x in xrange(sz):
for y in xrange(sz):
k=(x,y)
- if old.has_key(k):
- self.icons[k]=old[k]
- old.pop(k)
- else:
- ico=Icon(self.isconfig)
- self.icons[k]=ico
- self.connect_one(ico)
+ ico=self.allicons[k]
+ self.icons[k]=ico
+# if old.has_key(k):
+# old.pop(k) # Re-used
+# else:
+# self.connect_one(ico)
# Disconnect signals
- for i in old:
- self.disconnect_one(old[i])
+# for i in old:
+# self.disconnect_one(old[i])
self.size=sz
return(ret)
def load(self):
- x=0
- y=0
- fn=["maegirls", "wifieye", 'battery-eye', 'image-viewer',
- 'tecnoballz', 'ncalc', 'rtcom-call-ui', 'rtcom-messaging-ui',
- 'extcalllog', 'browser', 'modest', 'osso-addressbook']
- for f in fn:
- dt=apps.readOne(f)
- dt['icon2']=getIcon(dt['icon'])
- print x, y, dt
- self.get(x,y).setApp(dt)
- x+=1
- if x>=config.size:
- x=0
- y+=1
-# self.icons.append(p)
+# x=0
+# y=0
+# fn=["maegirls", "wifieye", 'battery-eye', 'image-viewer',
+# 'tecnoballz', 'ncalc', 'rtcom-call-ui', 'rtcom-messaging-ui',
+# 'extcalllog', 'browser', 'modest', 'osso-addressbook']
+
+ wapps=config.getApps()
+ sz=config.getSize()
+
+ for k in wapps:
+ x,y=k
+ if x>=sz or y>=sz:
+ continue
+
+ appname=wapps[k]
+ if appname!=None:
+ app=apps.readOne(appname)
+ app['icon2']=getIcon(app['icon'])
+ self.get(x,y).setApp(app)
+
+# for f in fn:
+# dt=apps.readOne(f)
+# dt['icon2']=getIcon(dt['icon'])
+# print x, y, dt
+# self.get(x,y).setApp(dt)
+# x+=1
+# if x>=config.getSize(getSize()):
+# x=0
+# y+=1
+## self.icons.append(p)
print "end of Icons init"