add HarddiskManager
[enigma2.git] / lib / python / Screens / InfoBar.py
index ee09e5771fbb2ea691c84959e3af2670b435e6d4..44484a512816dc15f311fb457c6b85c8124377ec 100644 (file)
@@ -1,19 +1,22 @@
 from Screen import Screen
 from ChannelSelection import ChannelSelection
 from Components.Clock import Clock
 from Screen import Screen
 from ChannelSelection import ChannelSelection
 from Components.Clock import Clock
+from Components.VolumeBar import VolumeBar
 from Components.ActionMap import ActionMap
 from Components.Button import Button
 from Components.ServiceName import ServiceName
 from Components.EventInfo import EventInfo
 from Components.ActionMap import ActionMap
 from Components.Button import Button
 from Components.ServiceName import ServiceName
 from Components.EventInfo import EventInfo
+from Components.ServicePosition import ServicePosition
 
 from Screens.MessageBox import MessageBox
 
 from Screens.MessageBox import MessageBox
+from Screens.MovieSelection import MovieSelection
 
 from enigma import *
 
 import time
 
 # hack alert!
 
 from enigma import *
 
 import time
 
 # hack alert!
-from Menu import *
+from Menu import MainMenu, mdom
 
 class InfoBar(Screen):
        def __init__(self, session):
 
 class InfoBar(Screen):
        def __init__(self, session):
@@ -21,7 +24,8 @@ class InfoBar(Screen):
 
                #instantiate forever
                self.servicelist = self.session.instantiateDialog(ChannelSelection)
 
                #instantiate forever
                self.servicelist = self.session.instantiateDialog(ChannelSelection)
-               
+               self.volumeBar = VolumeBar()            
+
                self["actions"] = ActionMap( [ "InfobarActions" ], 
                        {
                                "switchChannelUp": self.switchChannelUp,
                self["actions"] = ActionMap( [ "InfobarActions" ], 
                        {
                                "switchChannelUp": self.switchChannelUp,
@@ -29,13 +33,21 @@ class InfoBar(Screen):
                                "mainMenu": self.mainMenu,
                                "zapUp": self.zapUp,
                                "zapDown": self.zapDown,
                                "mainMenu": self.mainMenu,
                                "zapUp": self.zapUp,
                                "zapDown": self.zapDown,
+                               "volumeUp": self.volUp,
+                               "volumeDown": self.volDown,
+                               "volumeMute": self.volMute,
                                "instantRecord": self.instantRecord,
                                "hide": self.hide,
                                "instantRecord": self.instantRecord,
                                "hide": self.hide,
-                               "toggleShow": self.toggleShow
+                               "toggleShow": self.toggleShow,
+                               "showMovies": self.showMovies,
+                               "quit": self.quit
                        })
 #              self["okbutton"] = Button("mainMenu", [self.mainMenu])
                
                        })
 #              self["okbutton"] = Button("mainMenu", [self.mainMenu])
                
-               self["CurrentTime"] = Clock()
+               self["CurrentTime"] = ServicePosition(self.session.nav, ServicePosition.TYPE_REMAINING)
+               # Clock()
+
+               self["Volume"] = self.volumeBar
                
                self["ServiceName"] = ServiceName(self.session.nav)
                
                
                self["ServiceName"] = ServiceName(self.session.nav)
                
@@ -51,7 +63,7 @@ class InfoBar(Screen):
                print "loading mainmenu XML..."
                menu = mdom.childNodes[0]
                assert menu.tagName == "menu", "root element in menu must be 'menu'!"
                print "loading mainmenu XML..."
                menu = mdom.childNodes[0]
                assert menu.tagName == "menu", "root element in menu must be 'menu'!"
-               self.session.open(Menu, menu, menu.childNodes)
+               self.session.open(MainMenu, menu, menu.childNodes)
 
        def switchChannelUp(self):      
                self.servicelist.moveUp()
 
        def switchChannelUp(self):      
                self.servicelist.moveUp()
@@ -77,10 +89,25 @@ class InfoBar(Screen):
        def     zapDown(self):
                self.servicelist.moveDown()
                self.servicelist.zap()
        def     zapDown(self):
                self.servicelist.moveDown()
                self.servicelist.zap()
+
+       def     volUp(self):
+               eDVBVolumecontrol.getInstance().volumeUp()
+               self.volumeBar.setValue(eDVBVolumecontrol.getInstance().getVolume())
+
+       def     volDown(self):
+               eDVBVolumecontrol.getInstance().volumeDown()
+               self.volumeBar.setValue(eDVBVolumecontrol.getInstance().getVolume())
+
+       def     volMute(self):
+               eDVBVolumecontrol.getInstance().volumeToggleMute()
+               self.volumeBar.setValue(eDVBVolumecontrol.getInstance().getVolume())
+
+       def     quit(self):
+               quitMainloop()
                
        def instantRecord(self):
                
        def instantRecord(self):
-               self.session.open(MessageBox, "this would be an instant recording! do you really know what you're doing?!")
-               return
+               #self.session.open(MessageBox, "this would be an instant recording! do you really know what you're doing?!")
+               #return
        
                if self.recording != None:
                        print "remove entry"
        
                if self.recording != None:
                        print "remove entry"
@@ -100,4 +127,7 @@ class InfoBar(Screen):
                                                epg = ev
                        # fix me, description. 
                        self.recording = self.session.nav.recordWithTimer(time.time(), time.time() + 30, serviceref, epg, "instant record")
                                                epg = ev
                        # fix me, description. 
                        self.recording = self.session.nav.recordWithTimer(time.time(), time.time() + 30, serviceref, epg, "instant record")
+       
+       def showMovies(self):
+               self.session.open(MovieSelection)