diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2007-11-02 01:54:54 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2007-11-02 01:54:54 +0000 |
| commit | 7579ae7495f580bfa86f4216ef15811f54588c5a (patch) | |
| tree | 0ab0b92635feebe025630b867645a21a4d629d05 /lib/python/Components | |
| parent | 3e452d49848cb3c65f7dd8e42c42a30047989df7 (diff) | |
| download | enigma2-7579ae7495f580bfa86f4216ef15811f54588c5a.tar.gz enigma2-7579ae7495f580bfa86f4216ef15811f54588c5a.zip | |
split Misc Converter/Source into RecordState and TunerInfo Source /
Converter
add deprecation Warnings for some old InfoBar Components (Nim_A, NimB,
NimA_Active, NimB_Active, BlinkingPoint)
Diffstat (limited to 'lib/python/Components')
| -rw-r--r-- | lib/python/Components/Converter/Makefile.am | 2 | ||||
| -rw-r--r-- | lib/python/Components/Converter/Misc.py | 0 | ||||
| -rw-r--r-- | lib/python/Components/Converter/TunerInfo.py | 34 | ||||
| -rw-r--r-- | lib/python/Components/GUIComponent.py | 1 | ||||
| -rw-r--r-- | lib/python/Components/GUISkin.py | 7 | ||||
| -rw-r--r-- | lib/python/Components/Sources/Makefile.am | 4 | ||||
| -rw-r--r-- | lib/python/Components/Sources/Misc.py | 0 | ||||
| -rw-r--r-- | lib/python/Components/Sources/RecordState.py | 32 | ||||
| -rw-r--r-- | lib/python/Components/Sources/TunerInfo.py | 29 |
9 files changed, 105 insertions, 4 deletions
diff --git a/lib/python/Components/Converter/Makefile.am b/lib/python/Components/Converter/Makefile.am index 8519d0cd..73b689b3 100644 --- a/lib/python/Components/Converter/Makefile.am +++ b/lib/python/Components/Converter/Makefile.am @@ -5,4 +5,4 @@ install_PYTHON = \ Poll.py RemainingToText.py StringList.py ServiceName.py FrontendInfo.py ServiceInfo.py \ ConditionalShowHide.py ServicePosition.py ValueRange.py RdsInfo.py Streaming.py \ StaticMultiList.py ServiceTime.py MovieInfo.py MenuEntryCompare.py StringListSelection.py \ - ValueBitTest.py Misc.py + ValueBitTest.py TunerInfo.py diff --git a/lib/python/Components/Converter/Misc.py b/lib/python/Components/Converter/Misc.py deleted file mode 100644 index e69de29b..00000000 --- a/lib/python/Components/Converter/Misc.py +++ /dev/null diff --git a/lib/python/Components/Converter/TunerInfo.py b/lib/python/Components/Converter/TunerInfo.py new file mode 100644 index 00000000..2ed71e34 --- /dev/null +++ b/lib/python/Components/Converter/TunerInfo.py @@ -0,0 +1,34 @@ +from Components.Sources.TunerInfo import TunerInfo as TunerInfoSource +from Components.Converter.Converter import Converter +from Components.Element import cached + +class TunerInfo(Converter, object): + def __init__(self, type): + Converter.__init__(self, type) + self.type = { + "TunerUseMask": TunerInfoSource.FE_USE_MASK + }[type] + + @cached + def getBoolean(self): + if self.type == TunerInfoSource.FE_USE_MASK: + return self.source.getTunerUseMask() and True or False + boolean = property(getBoolean) + + @cached + def getText(self): + if self.type == TunerInfoSource.FE_USE_MASK: + return str(self.source.getTunerUseMask()) + return "" + text = property(getText) + + @cached + def getValue(self): + if self.type == TunerInfoSource.FE_USE_MASK: + return self.source.getTunerUseMask() + return -1 + value = property(getValue) + + def changed(self, what): + if what[0] != self.CHANGED_SPECIFIC or what[1] == self.type: + Converter.changed(self, what) diff --git a/lib/python/Components/GUIComponent.py b/lib/python/Components/GUIComponent.py index deb8b34a..a3b1b9e1 100644 --- a/lib/python/Components/GUIComponent.py +++ b/lib/python/Components/GUIComponent.py @@ -11,6 +11,7 @@ class GUIComponent(object): self.__visible = 0 self.visible = 1 self.skinAttributes = None + self.deprecationInfo = None def execBegin(self): pass diff --git a/lib/python/Components/GUISkin.py b/lib/python/Components/GUISkin.py index 39499c77..ce4d397d 100644 --- a/lib/python/Components/GUISkin.py +++ b/lib/python/Components/GUISkin.py @@ -20,7 +20,12 @@ class GUISkin: val = self[key] if isinstance(val, GUIComponent): val.GUIcreate(parent) - if not val.applySkin(desktop): + depr = val.deprecationInfo + if val.applySkin(desktop): + if depr: + print "WARNING: OBSOLETE COMPONENT '%s' USED IN SKIN. USE '%s' INSTEAD!" % (key, depr[0]) + print "OBSOLETE COMPONENT WILL BE REMOVED %s, PLEASE UPDATE!" % (depr[1]) + elif not depr: print "warning, skin is missing element", key, "in", self for w in self.additionalWidgets: diff --git a/lib/python/Components/Sources/Makefile.am b/lib/python/Components/Sources/Makefile.am index b6f25554..5ac636c8 100644 --- a/lib/python/Components/Sources/Makefile.am +++ b/lib/python/Components/Sources/Makefile.am @@ -3,5 +3,5 @@ installdir = $(LIBDIR)/enigma2/python/Components/Sources install_PYTHON = \ __init__.py Clock.py EventInfo.py Source.py List.py CurrentService.py \ FrontendStatus.py Boolean.py Config.py ServiceList.py RdsDecoder.py StreamService.py \ - StaticText.py CanvasSource.py ServiceEvent.py Event.py FrontendInfo.py \ - Misc.py + StaticText.py CanvasSource.py ServiceEvent.py Event.py FrontendInfo.py TunerInfo.py \ + RecordState.py diff --git a/lib/python/Components/Sources/Misc.py b/lib/python/Components/Sources/Misc.py deleted file mode 100644 index e69de29b..00000000 --- a/lib/python/Components/Sources/Misc.py +++ /dev/null diff --git a/lib/python/Components/Sources/RecordState.py b/lib/python/Components/Sources/RecordState.py new file mode 100644 index 00000000..328f921b --- /dev/null +++ b/lib/python/Components/Sources/RecordState.py @@ -0,0 +1,32 @@ +from Source import Source +from Components.Element import cached +from enigma import iRecordableService + +class RecordState(Source): + def __init__(self, session): + Source.__init__(self) + self.records_running = 0 + self.session = session + session.nav.record_event.append(self.gotRecordEvent) + + def gotRecordEvent(self, service, event): + prev_records = self.records_running + if event in (iRecordableService.evEnd, iRecordableService.evStart): + recs = self.session.nav.getRecordings() + self.records_running = len(recs) + if self.records_running != prev_records: + self.changed((self.CHANGED_ALL,)) + + def destroy(self): + session.nav.record_event.remove(self.gotRecordEvent) + Source.destroy(self) + + @cached + def getBoolean(self): + return self.records_running and True or False + boolean = property(getBoolean) + + @cached + def getValue(self): + return self.records_running + value = property(getValue) diff --git a/lib/python/Components/Sources/TunerInfo.py b/lib/python/Components/Sources/TunerInfo.py new file mode 100644 index 00000000..7ac34915 --- /dev/null +++ b/lib/python/Components/Sources/TunerInfo.py @@ -0,0 +1,29 @@ +from Source import Source +from enigma import eDVBResourceManager + +class TunerInfo(Source): + FE_USE_MASK = 0 + + def __init__(self): + Source.__init__(self) + self.tuner_use_mask = 0 + res_mgr = eDVBResourceManager.getInstance() + if res_mgr: + res_mgr.frontendUseMaskChanged.get().append(self.tunerUseMaskChanged) + else: + print "no res_mgr!!" + + def tunerUseMaskChanged(self, mask): + self.tuner_use_mask = mask + self.changed((self.CHANGED_SPECIFIC, self.FE_USE_MASK)) + + def getTunerUseMask(self): + return self.tuner_use_mask + + def destroy(self): + res_mgr = eDVBResourceManager.getInstance() + if res_mgr: + res_mgr.frontendUseMaskChanged.get().remove(self.tunerUseMaskChanged) + else: + print "no res_mgr!!" + Source.destroy(self) |
