X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/7c961a72f320fb95a6a751f0a6ce7456bf9ce14a..42a0556e68162bd6befa9d81f9e285f0d73055b5:/lib/python/Components/TimerList.py diff --git a/lib/python/Components/TimerList.py b/lib/python/Components/TimerList.py index 8bb6a0d9..2f60fcfb 100644 --- a/lib/python/Components/TimerList.py +++ b/lib/python/Components/TimerList.py @@ -4,8 +4,9 @@ from GUIComponent import * from Tools.FuzzyDate import FuzzyTime import time -from enigma import eListboxPythonMultiContent, eListbox, gFont +from enigma import eListboxPythonMultiContent, eListbox, gFont, loadPNG from timer import TimerEntry +from Tools.Directories import resolveFilename, SCOPE_SKIN_IMAGE RT_HALIGN_LEFT = 0 RT_HALIGN_RIGHT = 1 @@ -30,8 +31,8 @@ def TimerEntryComponent(timer, processed): res.append((eListboxPythonMultiContent.TYPE_TEXT, 0, 30, 560, 20, 1, RT_HALIGN_LEFT|RT_VALIGN_CENTER, timer.name)) repeatedtext = "" - days = [ "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun" ] - if not timer.repeated: + days = [ _("Mon"), _("Tue"), _("Wed"), _("Thu"), _("Fri"), _("Sat"), _("Sun") ] + if timer.repeated: flags = timer.repeated count = 0 for x in range(0, 7): @@ -41,27 +42,40 @@ def TimerEntryComponent(timer, processed): repeatedtext += days[x] count += 1 flags = flags >> 1 - res.append((eListboxPythonMultiContent.TYPE_TEXT, 0, 50, 300, 20, 1, RT_HALIGN_LEFT|RT_VALIGN_CENTER, repeatedtext + (" %s ... %s" % (FuzzyTime(timer.begin)[1], FuzzyTime(timer.end)[1])))) + if timer.justplay: + res.append((eListboxPythonMultiContent.TYPE_TEXT, 0, 50, 400, 20, 1, RT_HALIGN_LEFT|RT_VALIGN_CENTER, repeatedtext + ((" %s "+ _("(ZAP)")) % (FuzzyTime(timer.begin)[1])))) + else: + res.append((eListboxPythonMultiContent.TYPE_TEXT, 0, 50, 400, 20, 1, RT_HALIGN_LEFT|RT_VALIGN_CENTER, repeatedtext + ((" %s ... %s (%d " + _("mins") + ")") % (FuzzyTime(timer.begin)[1], FuzzyTime(timer.end)[1], (timer.end - timer.begin) / 60)))) else: - res.append((eListboxPythonMultiContent.TYPE_TEXT, 0, 50, 300, 20, 1, RT_HALIGN_LEFT|RT_VALIGN_CENTER, repeatedtext + ("%s, %s ... %s" % (FuzzyTime(timer.begin) + FuzzyTime(timer.end)[1:])))) + if timer.justplay: + res.append((eListboxPythonMultiContent.TYPE_TEXT, 0, 50, 400, 20, 1, RT_HALIGN_LEFT|RT_VALIGN_CENTER, repeatedtext + (("%s, %s " + _("(ZAP)")) % (FuzzyTime(timer.begin))))) + else: + res.append((eListboxPythonMultiContent.TYPE_TEXT, 0, 50, 400, 20, 1, RT_HALIGN_LEFT|RT_VALIGN_CENTER, repeatedtext + (("%s, %s ... %s (%d " + _("mins") + ")") % (FuzzyTime(timer.begin) + FuzzyTime(timer.end)[1:] + ((timer.end - timer.begin) / 60,))))) if not processed: if timer.state == TimerEntry.StateWaiting: - state = "waiting" + state = _("waiting") elif timer.state == TimerEntry.StatePrepared: - state = "about to start" + state = _("about to start") elif timer.state == TimerEntry.StateRunning: - state = "recording..." + if timer.justplay: + state = _("zapped") + else: + state = _("recording...") else: - state = "" + state = _("") else: - state = "done!" + state = _("done!") res.append((eListboxPythonMultiContent.TYPE_TEXT, 320, 50, 240, 20, 1, RT_HALIGN_RIGHT|RT_VALIGN_CENTER, state)) + + if timer.disabled: + png = loadPNG(resolveFilename(SCOPE_SKIN_IMAGE, "redx.png")) + res.append((eListboxPythonMultiContent.TYPE_PIXMAP_ALPHATEST, 490, 5, 40, 40, png)) return res -class TimerList(HTMLComponent, GUIComponent): +class TimerList(HTMLComponent, GUIComponent, object): def __init__(self, list): GUIComponent.__init__(self) self.l = eListboxPythonMultiContent() @@ -72,10 +86,11 @@ class TimerList(HTMLComponent, GUIComponent): def getCurrent(self): return self.l.getCurrentSelection() - def GUIcreate(self, parent): - self.instance = eListbox(parent) - self.instance.setContent(self.l) - self.instance.setItemHeight(70) + GUI_WIDGET = eListbox + + def postWidgetCreate(self, instance): + instance.setContent(self.l) + instance.setItemHeight(70) def moveToIndex(self, index): self.instance.moveSelectionTo(index) @@ -83,13 +98,11 @@ class TimerList(HTMLComponent, GUIComponent): def getCurrentIndex(self): return self.instance.getCurrentIndex() + currentIndex = property(moveToIndex, getCurrentIndex) + currentSelection = property(getCurrent) + def moveDown(self): self.instance.moveSelection(self.instance.moveDown) - def GUIdelete(self): - self.instance.setContent(None) - self.instance = None - def invalidate(self): self.l.invalidate() -