def save():
fn=get_config_fn()
- print "save", fn
dt={
'version': 1,
'apps': getApps()
}
- print "save:", dt
-
st=pickle.dumps(dt)
f=file(fn, 'w')
f.write(st)
def load():
fn=get_config_fn()
- print "load", fn
try:
f=file(fn, 'r')
except:
return
- print "load:", dt
-
setSize(dt['size'])
setApps(dt['apps'])
self.clickcount=0
- def __del__(self):
- print "del"
-
def timePressed(self):
""" return how much time a button is pressed """
dt=time.time() - self.lastpress
return(config.iconsize+config.iconspace)
def draw(self, cr, x, y, mode):
- #print "draw", x, y, mode
self.x=x
self.y=y
return(False)
def timerPressed(self):
- #print "timer"
-
if not self.ispressed:
return(False)
return(ret)
def doPress(self):
- #print "doPress()"
# Double-time: time for pressed and time for not-pressed
if time.time() - self.lastpress > self.presstime*2:
self.clickcount=0
self.lastpress=time.time()
self.ispressed=True
gobject.timeout_add(20, self.timerPressed)
- #print "doPress() end"
def doRelease(self):
- print "doRelease()"
dt=time.time() - self.lastpress
self.ispressed=False
self.invalidate()
if dt<=self.presstime:
self.clickcount+=1
if self.clickcount==1:
- print "click"
self.emit('click')
elif self.clickcount==2:
- print "double-click"
self.emit('double-click')
if self.clickcount==3:
- print "tripple-click"
self.emit('tripple-click')
self.clickcount=0
elif dt>self.presstime and dt<2:
- print "long-press"
self.emit('long-press')
def doCancel(self):
- print "doCancel()"
self.ispressed=False
def invalidate(self, window=None):
w=config.iconsize + config.iconspace
rect=gdk.Rectangle(self.x, self.y, w, w)
- #print "rect", self.x, self.y, w, w
gdk.Window.invalidate_rect(window, rect, True)
gobject.type_register(Icon)
super(IconGrid, self).connect(what, *args)
def setSize(self, size):
- print "igw::setSize", size
-# config.setSize(size)
self.size=size
self.icons.setSize(size)
x2=self.size - int(y/w) - 1
y2=int(x/w)
- print "x2,y2", x2, y2
ret=self.get(x2,y2)
return(ret)
return(ret)
def _draw(self, cr, event):
-# print "mode:", self.mode
-# print "icons", len(self.icons)
-
w=config.iconsize + config.iconspace
for x,y in self.icons:
-# print x, y
-
if self.mode=='l':
x2=x * (config.iconsize + config.iconspace)
y2=y * (config.iconsize + config.iconspace)
if t.width==0 and t.height==0:
continue
-# print "draw:", x, y
ico=self.icons.get(x,y)
ico.draw(cr, x2, y2, self.mode)
self.lasticon=icon
def do_button_press_event(self, event):
- print "press", event.type
icon=self.iconAt(event.x, event.y)
if icon==None:
return
return(True)
def do_button_release_event(self, event):
- print "release"
if self.lasticon!=None:
self.lasticon.invalidate(self.window)
self.lasticon.doRelease()
return(True)
def do_leave_notify_event(self, event):
- print "leave"
- #print "leave", event.x, event.y
self.setLastIcon(None)
return(True)
def do_pproperty_notify_event(self, event):
- print "property"
icon=self.iconAt(event.x, event.y)
if icon==None:
return
return(True)
def do_motion_notify_event(self, event):
- print "motion"
icon=self.iconAt(event.x, event.y)
if self.lasticon==icon:
return(True)
return(True)
def do_button_press_event_old(self, event):
- #print "press"
if event.type==gdk.BUTTON_PRESS:
- print "press", event.type
if self.mode=='p':
self.setMode('l')
else:
def do_event1(self, event):
print "event:", event, event.type
- def butTest(self, arg):
- print "but", arg
-
def reloadIcons(self):
self.icons.load()
self.size=sz
def signalLongpress(self, icon):
- print "signalLongpress()", icon
+ #print "signalLongpress()", icon
self.emit('long-press', icon)
def signalClick(self, icon):
- print "signalClick()", icon
+ #print "signalClick()", icon
self.emit('click', icon)
def signalTrippleClick(self, icon):
- print "signalTrippleClick()", icon
+ #print "signalTrippleClick()", icon
self.emit('tripple-click', icon)
def get(self, x, y):
# y+=1
## self.icons.append(p)
- print "end of Icons init"
-
-
gobject.type_register(Icons)
Icons.register_signals()
self._keyboard_state_changed()
def _on_orientation_signal(self, orientation, stand, face, x, y, z):
- print "orsignal"
if orientation in (self._PORTRAIT, self._LANDSCAPE):
if self._mode == self.AUTOMATIC and \
self._keyboard_state != self._KBD_OPEN:
HomePluginItem.do_realize(self)
def on_orientation_changed(self, orientation):
- print "orch:", orientation
o=orientation[0]
self.setMode(o)
# self.queue_draw()
IconGrid.do_expose_event(self, event)
HomePluginItem.do_expose_event(self, event)
- def do_buttonn_press_event(self, event):
- print "press0"
-
def slot_show_settings(self, dt):
- print "settings", dt
s=WinConfig()
s.show_all()
s.connect('destroy', self.slotConfigDestroy)
def slotConfigDestroy(self, sender):
- print "destroy", sender
dt=sender.getData()
- print "dt:", dt
config.setSize(dt['size'])
config.setApps(dt['apps'])
config.save()
# self.queue_draw()
def signalLongpress(self, sender, icon):
- print "launch:", icon.name
- launcher.launch(icon.name)
+ if icon.name!=None and icon.name!='':
+ launcher.launch(icon.name)
def resize(self):
w=(self.size * config.iconsize) + \
self.setSize(config.getSize())
def slotLongpress(self, sender, icon):
- print "slp", icon
self.doConfig(icon)
def slotButtonSize(self, sender, id):
- print "size:", id
-
self.setSize(id+1)
def setSize(self, sz):
if but.get_active()==True:
break
- print "conf: sz=", sz
-
wapps={}
for x in xrange(sz):
'apps': wapps
}
- print "ret:", ret
-
return(ret)
if __name__=="__main__":