diff options
Diffstat (limited to 'lib/python')
| -rw-r--r-- | lib/python/Components/Renderer/FrontpanelLed.py | 22 | ||||
| -rw-r--r-- | lib/python/Components/Renderer/Makefile.am | 3 | ||||
| -rw-r--r-- | lib/python/Screens/SessionGlobals.py | 3 |
3 files changed, 27 insertions, 1 deletions
diff --git a/lib/python/Components/Renderer/FrontpanelLed.py b/lib/python/Components/Renderer/FrontpanelLed.py new file mode 100644 index 00000000..cf4b0229 --- /dev/null +++ b/lib/python/Components/Renderer/FrontpanelLed.py @@ -0,0 +1,22 @@ +from Components.Element import Element + +# this is not a GUI renderer. +class FrontpanelLed(Element): + def __init__(self): + Element.__init__(self) + + def changed(self, *args, **kwargs): + print ">> Frontpanel LED changed" + print ">> FP led:", self.source.value + if self.source.value: + pattern = 0x55555555 + speed = 20 + else: + pattern = 0 + speed = 1 + + try: + open("/proc/stb/fp/led0_pattern", "w").write("%08x" % pattern) + open("/proc/stb/fp/led_pattern_speed", "w").write("%d" % speed) + except IOError: + pass diff --git a/lib/python/Components/Renderer/Makefile.am b/lib/python/Components/Renderer/Makefile.am index eb55ad62..371c8d72 100644 --- a/lib/python/Components/Renderer/Makefile.am +++ b/lib/python/Components/Renderer/Makefile.am @@ -2,4 +2,5 @@ installdir = $(LIBDIR)/enigma2/python/Components/Renderer install_PYTHON = \ __init__.py Label.py Progress.py Listbox.py Renderer.py Pixmap.py \ - FixedLabel.py PositionGauge.py Canvas.py Picon.py Pig.py + FixedLabel.py PositionGauge.py Canvas.py Picon.py Pig.py \ + FrontpanelLed.py diff --git a/lib/python/Screens/SessionGlobals.py b/lib/python/Screens/SessionGlobals.py index 3eadf332..a9636cac 100644 --- a/lib/python/Screens/SessionGlobals.py +++ b/lib/python/Screens/SessionGlobals.py @@ -7,6 +7,7 @@ from Components.Sources.FrontendInfo import FrontendInfo from Components.Sources.Source import Source from Components.Sources.TunerInfo import TunerInfo from Components.Sources.RecordState import RecordState +from Components.Renderer.FrontpanelLed import FrontpanelLed class SessionGlobals(Screen): def __init__(self, session): @@ -22,6 +23,8 @@ class SessionGlobals(Screen): session.nav.event.append(self.serviceEvent) self.service_state = 0 + FrontpanelLed().connect(self["RecordState"]) + def serviceEvent(self, evt): if evt == iPlayableService.evStart: self.service_state = 1 |
