# "funktionalitaet"
def doClock(self):
- self.setText("clock: " + time.asctime())
+ t = time.localtime()
+ self.setText("%2d:%02d:%02d" % (t[3], t[4], t[5]))
# realisierung als GUI
def createWidget(self, parent, skindata):
def GUIdelete(self):
self.instance.setContent(None)
+ del self.instance
class ServiceList(HTMLComponent, GUIComponent):
def __init__(self):
GUIComponent.__init__(self)
self.l = eListboxServiceContent()
-
+
def getCurrent(self):
r = eServiceReference()
self.l.getCurrent(r)
def setRoot(self, root):
self.l.setRoot(root)
+
+ # mark stuff
+ def clearMarked(self):
+ self.l.clearMarked()
+
+ def isMarked(self, ref):
+ return self.l.isMarked(ref)
+
+ def addMarked(self, ref):
+ self.l.addMarked(ref)
+
+ def removeMarked(self, ref):
+ self.l.removeMarked(ref)
class ServiceScan:
self.progressbar = progressbar
self.text = text
self.scan = eComponentScan()
+ self.state = self.Idle
+ self.scanStatusChanged()
+
+ def execBegin(self):
+ self.scan.statusChanged.get().append(self.scanStatusChanged)
if self.scan.start():
self.state = self.Error
else:
self.state = self.Running
- self.scan.statusChanged.get().append(self.scanStatusChanged)
self.scanStatusChanged()
+
+ def execEnd(self):
+ self.scan.statusChanged.get().remove(self.scanStatusChanged)
+ if not self.isDone():
+ print "*** warning *** scan was not finished!"
def isDone(self):
return self.state == self.Done
-
- def fix(self):
- self.scan.statusChanged.get().remove(self.scanStatusChanged)
class ActionMap:
- def __init__(self, context, actions = { }, prio=0):
+ def __init__(self, contexts = [ ], actions = { }, prio=0):
self.actions = actions
- self.context = context
+ self.contexts = contexts
self.prio = prio
self.p = eActionMapPtr()
eActionMap.getInstance(self.p)
def execBegin(self):
- self.p.bindAction(self.context, self.prio, self.action)
+ for ctx in self.contexts:
+ self.p.bindAction(ctx, self.prio, self.action)
def execEnd(self):
- self.p.unbindAction(self.context, self.action)
+ for ctx in self.contexts:
+ self.p.unbindAction(ctx, self.action)
def action(self, context, action):
+ print " ".join(("action -> ", context, action))
try:
self.actions[action]()
except KeyError:
class EventInfo(PerServiceDisplay):
Now = 0
Next = 1
+ Now_Duration = 2
+ Next_Duration = 3
+
def __init__(self, navcore, now_or_next):
# listen to evUpdatedEventInfo and evStopService
# note that evStopService will be called once to establish a known state
if not self.navcore.getCurrentService(service):
if not service.info(info):
- print "got info !"
ev = eServiceEventPtr()
- info.getEvent(ev, self.now_or_next)
- self.setText(ev.m_event_name)
+ info.getEvent(ev, self.now_or_next & 1)
+ if self.now_or_next & 2:
+ self.setText("%d min" % (ev.m_duration / 60))
+ else:
+ self.setText(ev.m_event_name)
print "new event info in EventInfo! yeah!"
def stopEvent(self):