aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Pluecken <stefan.pluecken@multimedia-labs.de>2005-11-26 03:49:30 +0000
committerStefan Pluecken <stefan.pluecken@multimedia-labs.de>2005-11-26 03:49:30 +0000
commit8138d67d47307c7e438166b9c9cac5992e4929a5 (patch)
tree20c70e3530d103ed26ef4af2c6f84e88e769ece6
parente33169b42fa0e0aafa995ca2ec0abd605f9768f2 (diff)
downloadenigma2-8138d67d47307c7e438166b9c9cac5992e4929a5.tar.gz
enigma2-8138d67d47307c7e438166b9c9cac5992e4929a5.zip
show dolby, crypt and format status in the infobar - we don't have functionality to get the info about this yet
-rw-r--r--data/crypt.png0
-rw-r--r--data/dolby.png0
-rw-r--r--data/format.png0
-rw-r--r--data/skin.xml5
-rw-r--r--lib/python/Components/BlinkingPixmap.py33
-rw-r--r--lib/python/Components/Pixmap.py32
-rw-r--r--lib/python/Screens/InfoBar.py13
-rw-r--r--lib/python/Screens/InfoBarGenerics.py15
8 files changed, 57 insertions, 41 deletions
diff --git a/data/crypt.png b/data/crypt.png
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/data/crypt.png
diff --git a/data/dolby.png b/data/dolby.png
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/data/dolby.png
diff --git a/data/format.png b/data/format.png
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/data/format.png
diff --git a/data/skin.xml b/data/skin.xml
index c0371d3e..aac69c58 100644
--- a/data/skin.xml
+++ b/data/skin.xml
@@ -146,6 +146,11 @@
<ePixmap position="0,0" zPosition="1" size="720,148" pixmap="/usr/share/enigma2/info-bg.png" />
<widget name="BlinkingPoint" pixmap="/usr/share/enigma2/record.png" position="430,35" size="20,20" />
+
+ <widget name="CryptActive" pixmap="/usr/share/enigma2/crypt.png" position="570,40" size="12,15" />
+ <widget name="DolbyActive" pixmap="/usr/share/enigma2/dolby.png" position="585,40" size="25,15" />
+ <widget name="FormatActive" pixmap="/usr/share/enigma2/format.png" position="613,40" size="28,15" />
+
<widget name="ServiceName" position="69,25" size="427,26" valign="center" font="Arial;22" backgroundColor="#101258" />
<widget name="CurrentTime" position="575,10" size="90,30" backgroundColor="dark" font="Arial;19" />
<widget name="Event_Now_StartTime" position="210,68" size="60,22" font="Arial;20" backgroundColor="dark" />
diff --git a/lib/python/Components/BlinkingPixmap.py b/lib/python/Components/BlinkingPixmap.py
index e564eb1e..45b8a06b 100644
--- a/lib/python/Components/BlinkingPixmap.py
+++ b/lib/python/Components/BlinkingPixmap.py
@@ -1,21 +1,13 @@
-from HTMLComponent import *
-from GUIComponent import *
-
from Pixmap import *
from enigma import *
import time
-class BlinkingPixmap(GUIComponent, Pixmap):
- SHOWN = 0
- HIDDEN = 1
-
+class BlinkingPixmap(Pixmap):
def __init__(self):
Pixmap.__init__(self)
- GUIComponent.__init__(self)
- self.state = self.SHOWN
self.blinking = False
self.setBlinkTime(500)
@@ -23,23 +15,6 @@ class BlinkingPixmap(GUIComponent, Pixmap):
self.timer = eTimer()
self.timer.timeout.get().append(self.blink)
-
- def createWidget(self, parent):
- return self.getePixmap(parent)
-
- def removeWidget(self, w):
- pass
-
- def showPixmap(self):
- print "Show pixmap"
- self.state = self.SHOWN
- self.instance.show()
-
- def hidePixmap(self):
- print "Hide pixmap"
- self.state = self.HIDDEN
- self.instance.hide()
-
def setBlinkTime(self, time):
self.blinktime = time
@@ -67,12 +42,8 @@ class BlinkingPixmapConditional(BlinkingPixmap, PixmapConditional):
def activateCondition(self, condition):
if (condition):
- if self.blinking: # we are already blinking
- pass
- else: # we don't blink
+ if not self.blinking: # we are already blinking
self.startBlinking()
else:
if self.blinking: # we are blinking
self.stopBlinking()
- else: # we don't blink
- pass
diff --git a/lib/python/Components/Pixmap.py b/lib/python/Components/Pixmap.py
index 264ffe29..48eec237 100644
--- a/lib/python/Components/Pixmap.py
+++ b/lib/python/Components/Pixmap.py
@@ -1,12 +1,18 @@
import skin
+from GUIComponent import *
from enigma import *
-class Pixmap:
+class Pixmap(GUIComponent):
"""Pixmap can be used for components which diplay a pixmap"""
+ SHOWN = 0
+ HIDDEN = 1
+
def __init__(self):
+ GUIComponent.__init__(self)
self.instance = None
+ self.state = self.SHOWN
def GUIcreate(self, parent):
self.instance = self.createWidget(parent)
@@ -20,6 +26,22 @@ class Pixmap:
#pixmap.setPixmapFromFile(self.filename)
return ePixmap(parent)
+ def createWidget(self, parent):
+ return self.getePixmap(parent)
+
+ def removeWidget(self, w):
+ pass
+
+ def showPixmap(self):
+ print "Show pixmap"
+ self.state = self.SHOWN
+ self.instance.show()
+
+ def hidePixmap(self):
+ print "Hide pixmap"
+ self.state = self.HIDDEN
+ self.instance.hide()
+
def removeWidget(self, instance):
pass
@@ -39,12 +61,14 @@ class PixmapConditional(Pixmap):
def activateCondition(self, condition):
if (condition):
- self.instance.show()
+ if (self.state == self.HIDDEN):
+ self.showPixmap()
else:
- self.instance.hide()
+ if (self.state == self.SHOWN):
+ self.hidePixmap()
def update(self):
- if (self.setConnect != None):
+ if (self.conditionalFunction != None):
try:
self.conditionalFunction() # check, if the conditionalfunction is still valid
except:
diff --git a/lib/python/Screens/InfoBar.py b/lib/python/Screens/InfoBar.py
index b0dfc0ab..62e4fcd2 100644
--- a/lib/python/Screens/InfoBar.py
+++ b/lib/python/Screens/InfoBar.py
@@ -10,7 +10,7 @@ from Components.ServicePosition import ServicePosition
from Screens.InfoBarGenerics import InfoBarVolumeControl, InfoBarShowHide, \
InfoBarPowerKey, InfoBarNumberZap, InfoBarChannelSelection, InfoBarMenu, \
InfoBarEPG, InfoBarEvent, InfoBarServiceName, InfoBarPVR, InfoBarInstantRecord, \
- InfoBarAudioSelection
+ InfoBarAudioSelection, InfoBarAdditionalInfo
from Screens.HelpMenu import HelpableScreen, HelpMenu
@@ -18,10 +18,10 @@ from enigma import *
import time
-class InfoBar(Screen, InfoBarVolumeControl, InfoBarShowHide, InfoBarPowerKey, \
- InfoBarNumberZap, InfoBarChannelSelection, InfoBarMenu, InfoBarEPG, \
- InfoBarEvent, InfoBarServiceName, InfoBarInstantRecord, InfoBarAudioSelection,
- HelpableScreen):
+class InfoBar(Screen, InfoBarVolumeControl, InfoBarShowHide, InfoBarPowerKey,
+ InfoBarNumberZap, InfoBarChannelSelection, InfoBarMenu, InfoBarEPG,
+ InfoBarEvent, InfoBarServiceName, InfoBarInstantRecord, InfoBarAudioSelection,
+ HelpableScreen, InfoBarAdditionalInfo):
def __init__(self, session):
Screen.__init__(self, session)
@@ -34,7 +34,8 @@ class InfoBar(Screen, InfoBarVolumeControl, InfoBarShowHide, InfoBarPowerKey, \
for x in HelpableScreen, \
InfoBarVolumeControl, InfoBarShowHide, InfoBarPowerKey, \
InfoBarNumberZap, InfoBarChannelSelection, InfoBarMenu, InfoBarEPG, \
- InfoBarEvent, InfoBarServiceName, InfoBarInstantRecord, InfoBarAudioSelection:
+ InfoBarEvent, InfoBarServiceName, InfoBarInstantRecord, InfoBarAudioSelection, \
+ InfoBarAdditionalInfo:
x.__init__(self)
self.helpList.append((self["actions"], "InfobarActions", [("showMovies", "Watch a Movie...")]))
diff --git a/lib/python/Screens/InfoBarGenerics.py b/lib/python/Screens/InfoBarGenerics.py
index ce2c0da5..8ab16c53 100644
--- a/lib/python/Screens/InfoBarGenerics.py
+++ b/lib/python/Screens/InfoBarGenerics.py
@@ -6,6 +6,7 @@ from Components.config import configfile, configsequencearg
from Components.config import config, configElement, ConfigSubsection, configSequence
from ChannelSelection import ChannelSelection
+from Components.Pixmap import PixmapConditional
from Components.BlinkingPixmap import BlinkingPixmapConditional
from Components.ServiceName import ServiceName
from Components.EventInfo import EventInfo
@@ -461,3 +462,17 @@ class InfoBarAudioSelection:
n = audio.getNumberOfTracks()
if n > 0:
self.session.open(AudioSelection, audio)
+
+class InfoBarAdditionalInfo:
+ def __init__(self):
+ self["DolbyActive"] = PixmapConditional()
+ # TODO: get the info from c++ somehow
+ self["DolbyActive"].setConnect(lambda: False)
+
+ self["CryptActive"] = PixmapConditional()
+ # TODO: get the info from c++ somehow
+ self["CryptActive"].setConnect(lambda: False)
+
+ self["FormatActive"] = PixmapConditional()
+ # TODO: get the info from c++ somehow
+ self["FormatActive"].setConnect(lambda: False) \ No newline at end of file