from enigma import eServiceReference
-from Screens.Menu import FixedMenu
+from Screens.FixedMenu import FixedMenu
import xml.dom.minidom
def __init__(self, session):
Screen.__init__(self, session)
+ self.entry_marked = False
self.movemode = False
self.bouquet_mark_edit = False
self.__marked = [ ]
self["key_red"] = Button("All")
- self["key_green"] = Button("ARD")
- self["key_yellow"] = Button("ZDF")
+ self["key_green"] = Button("Provider")
+ self["key_yellow"] = Button("Satellite")
self["key_blue"] = Button("Favourites")
self["list"] = ServiceList()
class ChannelActionMap(ActionMap):
def action(self, contexts, action):
if action[:7] == "bouquet":
- print "setting root to " + action[8:]
l = self.csel["list"]
l.setMode(l.MODE_NORMAL)
l.setRoot(eServiceReference("1:0:1:0:0:0:0:0:0:0:" + action[8:]))
l = self["list"]
for x in marked:
- print "mark: " + str(x)
l.addMarked(x)
def endMarkedEdit(self, abort):
# ...
def channelSelected(self):
- self.session.nav.playService(self["list"].getCurrent())
- print "current: " + self["list"].getCurrent().toString()
- self.close()
+ ref = self["list"].getCurrent()
+ if self.movemode:
+ if self.entry_marked:
+ self["list"].setCurrentMarked(False)
+ self.entry_marked = False
+ else:
+ self["list"].setCurrentMarked(True)
+ self.entry_marked = True
+ elif (ref.flags & 7) == 7:
+ l = self["list"]
+ l.setMode(l.MODE_NORMAL)
+ l.setRoot(ref)
+ else:
+ self.session.nav.playService(ref)
+ self.close()
#called from infoBar
def zap(self):
self.session.open(ChannelContextMenu, self)
def setMoveMode(self, mode):
- self.movemode = mode
-
+ if mode:
+ self.movemode = False
+ else:
+ self.movemode = True
+
+ def getCurrent(self):
+ return self["list"].getCurrent()
+
def showFavourites(self):
l = self["list" ]
l.setRoot(eServiceReference('1:0:1:0:0:0:0:0:0:0:(provider == "fav")'))