2 from Screens.Screen import Screen
5 from Components.ActionMap import ActionMap
6 from Components.Button import Button
7 from AutoTimerList import AutoTimerPreviewList
9 class AutoTimerPreview(Screen):
10 """Preview Timers which would be set"""
12 skin = """<screen name="AutoTimerPreview" title="Preview AutoTimer" position="75,155" size="565,265">
13 <widget name="timerlist" position="5,5" size="555,210" scrollbarMode="showOnDemand" />
14 <ePixmap position="0,220" zPosition="4" size="140,40" pixmap="skin_default/buttons/red.png" transparent="1" alphatest="on" />
15 <ePixmap position="280,220" zPosition="4" size="140,40" pixmap="skin_default/buttons/yellow.png" transparent="1" alphatest="on" />
16 <widget name="key_red" position="0,220" zPosition="5" size="140,40" valign="center" halign="center" font="Regular;21" transparent="1" foregroundColor="white" shadowColor="black" shadowOffset="-1,-1" />
17 <widget name="key_yellow" position="280,220" zPosition="5" size="140,40" valign="center" halign="center" font="Regular;21" transparent="1" foregroundColor="white" shadowColor="black" shadowOffset="-1,-1" />
20 def __init__(self, session, timers):
21 Screen.__init__(self, session)
23 # Sort timers by begin
24 timers.sort(key = lambda x: x[1])
29 self["timerlist"] = AutoTimerPreviewList(self.timers)
32 self["key_red"] = Button(_("Cancel"))
33 self["key_yellow"] = Button()
35 self.setSortDescription()
38 self["actions"] = ActionMap(["SetupActions", "ColorActions"],
40 "cancel": self.cancel,
46 def setSortDescription(self):
47 if self.sort_type == 1:
48 self["key_yellow"].setText(_("Sort Time"))
50 self["key_yellow"].setText(_("Sort AutoTimer"))
54 timer = self["timerlist"].getCurrent()
55 if self.sort_type == 1:
56 self.timers.sort(key=lambda x: x[1])
59 self.timers.sort(key = lambda x: x[4].lower())
61 self["timerlist"].setList(self.timers)
62 self["timerlist"].moveToEntry(timer)
63 self.setSortDescription()