ability to set color in multi content lists
[enigma2.git] / lib / python / Screens / InfoBar.py
index aaa3debace3b2857b9ad629856a3a04a3292542c..cfc35294f3506a7b08d79bd45ac86694cd86e41c 100644 (file)
@@ -1,20 +1,22 @@
 from Screen import Screen
 
 from Screens.MovieSelection import MovieSelection
 from Screen import Screen
 
 from Screens.MovieSelection import MovieSelection
+from Screens.ChannelSelection import ChannelSelectionRadio
 from Screens.MessageBox import MessageBox
 from ServiceReference import ServiceReference
 
 from Components.Clock import Clock
 from Components.ActionMap import ActionMap, HelpableActionMap
 from Screens.MessageBox import MessageBox
 from ServiceReference import ServiceReference
 
 from Components.Clock import Clock
 from Components.ActionMap import ActionMap, HelpableActionMap
-from Components.ServicePosition import ServicePosition
+from Components.ServicePosition import ServicePosition, ServicePositionGauge
 
 from Tools.Notifications import AddNotificationWithCallback
 
 
 from Tools.Notifications import AddNotificationWithCallback
 
-from Screens.InfoBarGenerics import InfoBarVolumeControl, InfoBarShowHide, \
+from Screens.InfoBarGenerics import InfoBarShowHide, \
        InfoBarPowerKey, InfoBarNumberZap, InfoBarChannelSelection, InfoBarMenu, \
        InfoBarPowerKey, InfoBarNumberZap, InfoBarChannelSelection, InfoBarMenu, \
-       InfoBarEPG, InfoBarEvent, InfoBarServiceName, InfoBarPVR, InfoBarInstantRecord, \
+       InfoBarEPG, InfoBarEvent, InfoBarServiceName, InfoBarSeek, InfoBarInstantRecord, \
        InfoBarAudioSelection, InfoBarAdditionalInfo, InfoBarNotifications, InfoBarDish, \
        InfoBarAudioSelection, InfoBarAdditionalInfo, InfoBarNotifications, InfoBarDish, \
-       InfoBarSubserviceSelection, InfoBarTuner
+       InfoBarSubserviceSelection, InfoBarTuner, InfoBarShowMovies, InfoBarTimeshift,  \
+       InfoBarServiceNotifications, InfoBarPVRState, InfoBarCueSheetSupport, InfoBarSimpleEventView
 
 from Screens.HelpMenu import HelpableScreen, HelpMenu
 
 
 from Screens.HelpMenu import HelpableScreen, HelpMenu
 
@@ -22,30 +24,37 @@ from enigma import *
 
 import time
 
 
 import time
 
-class InfoBar(Screen, InfoBarVolumeControl, InfoBarShowHide, InfoBarPowerKey,
+class InfoBar(Screen, InfoBarShowHide, InfoBarPowerKey,
        InfoBarNumberZap, InfoBarChannelSelection, InfoBarMenu, InfoBarEPG,
        InfoBarEvent, InfoBarServiceName, InfoBarInstantRecord, InfoBarAudioSelection, 
        HelpableScreen, InfoBarAdditionalInfo, InfoBarNotifications, InfoBarDish,
        InfoBarNumberZap, InfoBarChannelSelection, InfoBarMenu, InfoBarEPG,
        InfoBarEvent, InfoBarServiceName, InfoBarInstantRecord, InfoBarAudioSelection, 
        HelpableScreen, InfoBarAdditionalInfo, InfoBarNotifications, InfoBarDish,
-       InfoBarSubserviceSelection, InfoBarTuner):
+       InfoBarSubserviceSelection, InfoBarTuner, InfoBarTimeshift, InfoBarSeek):
 
        def __init__(self, session):
                Screen.__init__(self, session)
 
                self["actions"] = HelpableActionMap(self, "InfobarActions",
                        {
 
        def __init__(self, session):
                Screen.__init__(self, session)
 
                self["actions"] = HelpableActionMap(self, "InfobarActions",
                        {
-                               "showMovies": (self.showMovies, _("Play recorded movies..."))
+                               "showMovies": (self.showMovies, _("Play recorded movies...")),
+                               "showRadio": (self.showRadio, _("Show the radio player..."))
                        })
                
                for x in HelpableScreen, \
                        })
                
                for x in HelpableScreen, \
-                               InfoBarVolumeControl, InfoBarShowHide, InfoBarPowerKey, \
+                               InfoBarShowHide, InfoBarPowerKey, \
                                InfoBarNumberZap, InfoBarChannelSelection, InfoBarMenu, InfoBarEPG, \
                                InfoBarEvent, InfoBarServiceName, InfoBarInstantRecord, InfoBarAudioSelection, \
                                InfoBarNumberZap, InfoBarChannelSelection, InfoBarMenu, InfoBarEPG, \
                                InfoBarEvent, InfoBarServiceName, InfoBarInstantRecord, InfoBarAudioSelection, \
-                               InfoBarAdditionalInfo, InfoBarNotifications, InfoBarDish, InfoBarSubserviceSelection, InfoBarTuner:
+                               InfoBarAdditionalInfo, InfoBarNotifications, InfoBarDish, InfoBarSubserviceSelection, \
+                               InfoBarTuner, InfoBarTimeshift, InfoBarSeek:
                        x.__init__(self)
 
                self.helpList.append((self["actions"], "InfobarActions", [("showMovies", "Watch a Movie...")]))
                        x.__init__(self)
 
                self.helpList.append((self["actions"], "InfobarActions", [("showMovies", "Watch a Movie...")]))
+               self.helpList.append((self["actions"], "InfobarActions", [("showRadio", "Hear Radio...")]))
 
                self["CurrentTime"] = Clock()
 
                self["CurrentTime"] = Clock()
+               # ServicePosition(self.session.nav, ServicePosition.TYPE_REMAINING)
+
+       def showRadio(self):
+               self.session.open(ChannelSelectionRadio)
 
        def showMovies(self):
                self.session.openWithCallback(self.movieSelected, MovieSelection)
 
        def showMovies(self):
                self.session.openWithCallback(self.movieSelected, MovieSelection)
@@ -54,9 +63,10 @@ class InfoBar(Screen, InfoBarVolumeControl, InfoBarShowHide, InfoBarPowerKey,
                if service is not None:
                        self.session.open(MoviePlayer, service)
 
                if service is not None:
                        self.session.open(MoviePlayer, service)
 
-class MoviePlayer(Screen, InfoBarVolumeControl, InfoBarShowHide, InfoBarPowerKey, \
+class MoviePlayer(Screen, InfoBarShowHide, InfoBarPowerKey, \
                InfoBarMenu, \
                InfoBarMenu, \
-               InfoBarServiceName, InfoBarPVR, InfoBarAudioSelection, HelpableScreen, InfoBarNotifications):
+               InfoBarServiceName, InfoBarSeek, InfoBarShowMovies, InfoBarAudioSelection, HelpableScreen, InfoBarNotifications,
+               InfoBarServiceNotifications, InfoBarPVRState, InfoBarCueSheetSupport, InfoBarSimpleEventView):
                
        def __init__(self, session, service):
                Screen.__init__(self, session)
                
        def __init__(self, session, service):
                Screen.__init__(self, session)
@@ -66,10 +76,17 @@ class MoviePlayer(Screen, InfoBarVolumeControl, InfoBarShowHide, InfoBarPowerKey
                                "leavePlayer": (self.leavePlayer, _("leave movie player..."))
                        })
                
                                "leavePlayer": (self.leavePlayer, _("leave movie player..."))
                        })
                
-               for x in HelpableScreen, InfoBarVolumeControl, InfoBarShowHide, InfoBarPowerKey, InfoBarMenu, InfoBarServiceName, InfoBarPVR, InfoBarAudioSelection, InfoBarNotifications:
+               for x in HelpableScreen, InfoBarShowHide, InfoBarPowerKey, InfoBarMenu, \
+                               InfoBarServiceName, InfoBarSeek, InfoBarShowMovies, \
+                               InfoBarAudioSelection, InfoBarNotifications, InfoBarSimpleEventView, \
+                               InfoBarServiceNotifications, InfoBarPVRState, InfoBarCueSheetSupport:
                        x.__init__(self)
 
                self["CurrentTime"] = ServicePosition(self.session.nav, ServicePosition.TYPE_REMAINING)
                        x.__init__(self)
 
                self["CurrentTime"] = ServicePosition(self.session.nav, ServicePosition.TYPE_REMAINING)
+               self["ElapsedTime"] = ServicePosition(self.session.nav, ServicePosition.TYPE_POSITION)
+               self["PositionGauge"] = ServicePositionGauge(self.session.nav)
+               
+               # TYPE_LENGTH?
                
                self.lastservice = self.session.nav.getCurrentlyPlayingServiceReference()
                self.session.nav.playService(service)
                
                self.lastservice = self.session.nav.getCurrentlyPlayingServiceReference()
                self.session.nav.playService(service)