print "do nothing - wait"
elif self.tag == "MENU":
print "answer MENU"
- eDVBCI_UI.getInstance().answerMenu(self.slotid, self["entries"].getCurrent()[1])
+ cur = self["entries"].getCurrent()
+ if cur:
+ eDVBCI_UI.getInstance().answerMenu(self.slotid, cur[1])
+ else:
+ eDVBCI_UI.getInstance().answerMenu(self.slotid, 0)
self.showWait()
elif self.tag == "LIST":
print "answer LIST"
else:
print "give cancel action to ci"
+ def keyConfigEntry(self, key):
+ try:
+ self["entries"].handleKey(key)
+ except AttributeError:
+ pass
+
def keyNumberGlobal(self, number):
- self["entries"].handleKey(config.key[str(number)])
+ self.keyConfigEntry(config.key[str(number)])
def keyLeft(self):
- self["entries"].handleKey(config.key["prevElement"])
+ self.keyConfigEntry(config.key["prevElement"])
def keyRight(self):
- self["entries"].handleKey(config.key["nextElement"])
+ self.keyConfigEntry(config.key["nextElement"])
def updateList(self, list):
List = self["entries"]
List.l.setList(list)
-
def showWait(self):
self.tag = "WAIT"
self["title"].setText("")
#mmi session still active ?
if eDVBCI_UI.getInstance().getMMIState(self.slotid) != 1:
self.closeMmi()
-
- #new screen available?
+
if eDVBCI_UI.getInstance().availableMMI(self.slotid) == 1:
self.showScreen()
-
+
#FIXME: check for mmi-session closed
class CiSelection(Screen):
def cancel(self):
self.Timer.stop()
self.close()
-
+
+ def mmiAvail(self, slot):
+ print "mmi avail slot", slot
+
def __init__(self, session):
#FIXME support for one ci only
Screen.__init__(self, session)
self.Timer = eTimer()
self.Timer.timeout.get().append(self.TimerCheck)
self.Timer.start(1000)
+
+ eDVBCI_UI.getInstance().mmiAvail.get().append(self.mmiAvail)