aboutsummaryrefslogtreecommitdiff
path: root/lib/python
diff options
context:
space:
mode:
authorStefan Pluecken <stefan.pluecken@multimedia-labs.de>2005-08-13 19:51:17 +0000
committerStefan Pluecken <stefan.pluecken@multimedia-labs.de>2005-08-13 19:51:17 +0000
commit0877ce3b6f6cee972818a8c0a2d1bc862c8482be (patch)
tree91d23f198dc8dba893cf47ac3d2bad660da1b366 /lib/python
parenta072a06516d83d3a11c52544bf2f7cb8ab567b4e (diff)
downloadenigma2-0877ce3b6f6cee972818a8c0a2d1bc862c8482be.tar.gz
enigma2-0877ce3b6f6cee972818a8c0a2d1bc862c8482be.zip
adding volume control
Diffstat (limited to 'lib/python')
-rw-r--r--lib/python/Components/VolumeBar.py7
-rw-r--r--lib/python/Screens/InfoBar.py26
-rw-r--r--lib/python/enigma_python.i2
3 files changed, 32 insertions, 3 deletions
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 <lib/actions/action.h>
#include <lib/gdi/gfont.h>
#include <lib/gdi/epng.h>
+#include <lib/dvb/volume.h>
extern void runMainloop();
extern void quitMainloop();
@@ -123,6 +124,7 @@ extern PSignal1<void,int> &keyPressedSignal();
%include <lib/actions/action.h>
%include <lib/gdi/gfont.h>
%include <lib/gdi/epng.h>
+%include <lib/dvb/volume.h>
%include <lib/gdi/gpixmap.h>
/************** eptr **************/