diff options
| author | ghost <andreas.monzner@multimedia-labs.de> | 2008-12-03 17:40:25 +0100 |
|---|---|---|
| committer | ghost <andreas.monzner@multimedia-labs.de> | 2008-12-03 17:40:25 +0100 |
| commit | 2e5c13aebb389a6d74e4130658ccee6a863d01f6 (patch) | |
| tree | 41690ea5a25209d0d4e0be320d25daf248fe1772 /lib | |
| parent | cc53ef67c6cfb594f1d30d1367210c0d3bc41d15 (diff) | |
| download | enigma2-2e5c13aebb389a6d74e4130658ccee6a863d01f6.tar.gz enigma2-2e5c13aebb389a6d74e4130658ccee6a863d01f6.zip | |
add possibility to change start/end time in timer edit with Vol/Bouquet +/- (thx to Moritz Venn)
Diffstat (limited to 'lib')
| -rwxr-xr-x | lib/python/Components/config.py | 28 | ||||
| -rw-r--r-- | lib/python/Screens/TimerEntry.py | 33 |
2 files changed, 58 insertions, 3 deletions
diff --git a/lib/python/Components/config.py b/lib/python/Components/config.py index 4d57bbb9..d79337ba 100755 --- a/lib/python/Components/config.py +++ b/lib/python/Components/config.py @@ -604,6 +604,34 @@ class ConfigClock(ConfigSequence): t = time.localtime(default) ConfigSequence.__init__(self, seperator = ":", limits = [(0,23),(0,59)], default = [t.tm_hour, t.tm_min]) + def increment(self): + # Check if Minutes maxed out + if self._value[1] == 59: + # Check if Hours not maxed out + if self._value[0] < 23: + # Increment Hour, reset Minutes to 0 + self._value[0] += 1 + self._value[1] = 0 + else: + # Increment Minutes + self._value[1] += 1 + # Trigger change + self.changed() + + def decrement(self): + # Check if Minutes is minimum + if self._value[1] == 0: + # Check if Hour is greater than 0 + if self._value[0] > 0: + # Decrement Hour, set Minutes to 59 + self._value[0] -= 1 + self._value[1] = 59 + else: + # Decrement Minutes + self._value[1] -= 1 + # Trigger change + self.changed() + class ConfigInteger(ConfigSequence): def __init__(self, default, limits = (0, 9999999999)): ConfigSequence.__init__(self, seperator = ":", limits = [limits], default = default) diff --git a/lib/python/Screens/TimerEntry.py b/lib/python/Screens/TimerEntry.py index be8b5240..0544eff1 100644 --- a/lib/python/Screens/TimerEntry.py +++ b/lib/python/Screens/TimerEntry.py @@ -32,11 +32,15 @@ class TimerEntry(Screen, ConfigListScreen): self.createConfig() - self["actions"] = NumberActionMap(["SetupActions"], + self["actions"] = NumberActionMap(["SetupActions", "GlobalActions", "PiPSetupActions"], { "ok": self.keySelect, "save": self.keyGo, "cancel": self.keyCancel, + "volumeUp": self.incrementStart, + "volumeDown": self.decrementStart, + "size+": self.incrementEnd, + "size-": self.decrementEnd }, -2) self.list = [] @@ -160,9 +164,14 @@ class TimerEntry(Screen, ConfigListScreen): self.entryDate = getConfigListEntry(_("Date"), self.timerentry_date) if self.timerentry_type.value == "once": self.list.append(self.entryDate) - self.list.append(getConfigListEntry(_("StartTime"), self.timerentry_starttime)) + + self.entryStartTime = getConfigListEntry(_("StartTime"), self.timerentry_starttime) + self.list.append(self.entryStartTime) if self.timerentry_justplay.value != "zap": - self.list.append(getConfigListEntry(_("EndTime"), self.timerentry_endtime)) + self.entryEndTime = getConfigListEntry(_("EndTime"), self.timerentry_endtime) + self.list.append(self.entryEndTime) + else: + self.entryEndTime = None self.channelEntry = getConfigListEntry(_("Channel"), self.timerentry_service) self.list.append(self.channelEntry) @@ -319,6 +328,24 @@ class TimerEntry(Screen, ConfigListScreen): self.saveTimer() self.close((True, self.timer)) + def incrementStart(self): + self.timerentry_starttime.increment() + self["config"].invalidate(self.entryStartTime) + + def decrementStart(self): + self.timerentry_starttime.decrement() + self["config"].invalidate(self.entryStartTime) + + def incrementEnd(self): + if self.entryEndTime is not None: + self.timerentry_endtime.increment() + self["config"].invalidate(self.entryEndTime) + + def decrementEnd(self): + if self.entryEndTime is not None: + self.timerentry_endtime.decrement() + self["config"].invalidate(self.entryEndTime) + def subserviceSelected(self, service): if not service is None: self.timer.service_ref = ServiceReference(service[1]) |
