show progress and current time in servicelist event information instead of
[enigma2.git] / lib / python / Screens / Ci.py
index 27ca5aa39cb0f1c0074856939cbf2c0a7143333f..46b0779429425420b2e8dc54706007b1889b66e2 100644 (file)
@@ -1,15 +1,12 @@
-from Screen import *
-from Components.MenuList import MenuList
+from Screen import Screen
 from Components.ActionMap import ActionMap
 from Components.ActionMap import NumberActionMap
-from Components.Header import Header
-from Components.Button import Button
 from Components.Label import Label
 
 from Components.config import config, ConfigSubsection, ConfigSelection, ConfigSubList, getConfigListEntry, KEY_LEFT, KEY_RIGHT, KEY_0, ConfigNothing, ConfigPIN
 from Components.ConfigList import ConfigList
 
-from enigma import eTimer, eDVBCI_UI, eListboxPythonStringContent, eListboxPythonConfigContent
+from enigma import eTimer, eDVBCI_UI
 
 MAX_NUM_CI = 4
 
@@ -235,7 +232,8 @@ class CiMessageHandler:
                                        print "no session"
 
        def dlgClosed(self, slot):
-               del self.dlgs[slot]
+               if slot in self.dlgs:
+                       del self.dlgs[slot]
 
        def registerCIMessageHandler(self, slot, func):
                self.unregisterCIMessageHandler(slot)
@@ -273,6 +271,12 @@ class CiSelection(Screen):
                menuList.list = self.list
                menuList.l.setList(self.list)
                self["entries"] = menuList
+               self["entries"].onSelectionChanged.append(self.selectionChanged)
+               self["text"] = Label(_("Slot %d")%(1))
+
+       def selectionChanged(self):
+               cur_idx = self["entries"].getCurrentIndex()
+               self["text"].setText(_("Slot %d")%((cur_idx / 4)+1))
 
        def keyConfigEntry(self, key):
                try:
@@ -308,7 +312,7 @@ class CiSelection(Screen):
                self.state[slot] = state
 
                slotidx=0
-               while self.list[slotidx][2] != slot:
+               while len(self.list[slotidx]) < 3 or self.list[slotidx][3] != slot:
                        slotidx += 1
 
                slotidx += 1 # do not change Reset