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
## FIXME
self.__marked = [ ]
- self["key_red"] = Button("red")
- self["key_green"] = Button("green")
- self["key_yellow"] = Button("yellow")
- self["key_blue"] = Button("blue")
+ self["key_red"] = Button("All")
+ self["key_green"] = Button("Provider")
+ self["key_yellow"] = Button("Satellite")
+ self["key_blue"] = Button("Favourites")
self["list"] = ServiceList()
self["list"].setRoot(eServiceReference("""1:0:1:0:0:0:0:0:0:0:(type == 1)"""))
class ChannelActionMap(ActionMap):
def action(self, contexts, action):
if action[:7] == "bouquet":
- print "setting root to " + action[8:]
- self.csel["list"].setRoot(eServiceReference("1:0:1:0:0:0:0:0:0:0:" + 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:]))
else:
ActionMap.action(self, contexts, action)
"cancel": self.close,
"ok": self.channelSelected,
"mark": self.doMark,
- "contextMenu": self.doContext
+ "contextMenu": self.doContext,
+ "showFavourites": self.showFavourites
})
self["actions"].csel = self
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())
- 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 showFavourites(self):
+ l = self["list" ]
+ l.setRoot(eServiceReference('1:0:1:0:0:0:0:0:0:0:(provider == "fav")'))
+ l.setMode(l.MODE_FAVOURITES)