From 0877ce3b6f6cee972818a8c0a2d1bc862c8482be Mon Sep 17 00:00:00 2001 From: Stefan Pluecken Date: Sat, 13 Aug 2005 19:51:17 +0000 Subject: adding volume control --- lib/python/Components/VolumeBar.py | 7 +++++-- lib/python/Screens/InfoBar.py | 26 +++++++++++++++++++++++++- lib/python/enigma_python.i | 2 ++ 3 files changed, 32 insertions(+), 3 deletions(-) (limited to 'lib/python') diff --git a/lib/python/Components/VolumeBar.py b/lib/python/Components/VolumeBar.py index a6da5980..63771e24 100644 --- a/lib/python/Components/VolumeBar.py +++ b/lib/python/Components/VolumeBar.py @@ -1,12 +1,15 @@ from HTMLComponent import * from GUIComponent import * from VariableValue import * +from VariableText import * + +from enigma import eSlider +from enigma import eLabel class VolumeBar(HTMLComponent, GUIComponent, VariableValue): - def __init__(self): - GUIComponent.__init__(self) VariableValue.__init__(self) + GUIComponent.__init__(self) def createWidget(self, parent): g = eSlider(parent) diff --git a/lib/python/Screens/InfoBar.py b/lib/python/Screens/InfoBar.py index be6b65c9..6f8dde1b 100644 --- a/lib/python/Screens/InfoBar.py +++ b/lib/python/Screens/InfoBar.py @@ -1,6 +1,7 @@ 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 @@ -22,7 +23,8 @@ class InfoBar(Screen): #instantiate forever self.servicelist = self.session.instantiateDialog(ChannelSelection) - + self.volumeBar = VolumeBar() + self["actions"] = ActionMap( [ "InfobarActions" ], { "switchChannelUp": self.switchChannelUp, @@ -30,14 +32,20 @@ class InfoBar(Screen): "mainMenu": self.mainMenu, "zapUp": self.zapUp, "zapDown": self.zapDown, + "volumeUp": self.volUp, + "volumeDown": self.volDown, + "volumeMute": self.volMute, "instantRecord": self.instantRecord, "hide": self.hide, "toggleShow": self.toggleShow, "showMovies": self.showMovies, + "quit": self.quit }) # self["okbutton"] = Button("mainMenu", [self.mainMenu]) self["CurrentTime"] = Clock() + + self["Volume"] = self.volumeBar self["ServiceName"] = ServiceName(self.session.nav) @@ -79,6 +87,21 @@ class InfoBar(Screen): 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): self.session.open(MessageBox, "this would be an instant recording! do you really know what you're doing?!") @@ -105,3 +128,4 @@ class InfoBar(Screen): def showMovies(self): self.session.open(MovieSelection) + diff --git a/lib/python/enigma_python.i b/lib/python/enigma_python.i index ae8bf92d..c2d62613 100644 --- a/lib/python/enigma_python.i +++ b/lib/python/enigma_python.i @@ -67,6 +67,7 @@ is usually caused by not marking PSignals as immutable. #include #include #include +#include extern void runMainloop(); extern void quitMainloop(); @@ -123,6 +124,7 @@ extern PSignal1 &keyPressedSignal(); %include %include %include +%include %include /************** eptr **************/ -- cgit v1.2.3