X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/fdd708fdeb5ddbb23b471a4a309d7f107a3c67b3..cae001777c7b32bdb4f6f4199e9f49058946fe9f:/lib/python/Screens/TimerEntry.py diff --git a/lib/python/Screens/TimerEntry.py b/lib/python/Screens/TimerEntry.py index 50df93d3..14aa1ce3 100644 --- a/lib/python/Screens/TimerEntry.py +++ b/lib/python/Screens/TimerEntry.py @@ -40,7 +40,7 @@ class TimerEntry(Screen): config.timerentry = ConfigSubsection() config.timerentry.type = configElement_nonSave("config.timerentry.type", configSelection, 0, ("once", "repeated")) - config.timerentry.description = configElement_nonSave("config.timerentry.description", configText, self.timer.description, (configText.extendableSize,)) + config.timerentry.description = configElement_nonSave("config.timerentry.description", configText, self.timer.description, (configText.extendableSize, self.keyRightCallback)) config.timerentry.repeated = configElement_nonSave("config.timerentry.repeated", configSelection, 0, ("daily", "weekly", "Mon-Fri", "user-defined")) @@ -63,6 +63,21 @@ class TimerEntry(Screen): # FIXME some service-chooser needed here config.timerentry.service = configElement_nonSave("config.timerentry.service", configSelection, 0, ((str(self.timer.service_ref.getServiceName())),)) + config.timerentry.startdate.addNotifier(self.checkDate) + config.timerentry.enddate.addNotifier(self.checkDate) + + def checkDate(self, configElement): + if (configElement.getConfigPath() == "config.timerentry.startdate"): + if (config.timerentry.enddate.value < config.timerentry.startdate.value): + config.timerentry.enddate.value = config.timerentry.startdate.value + config.timerentry.enddate.change() + self["config"].invalidate(config.timerentry.enddate) + if (configElement.getConfigPath() == "config.timerentry.enddate"): + if (config.timerentry.enddate.value < config.timerentry.startdate.value): + config.timerentry.startdate.value = config.timerentry.enddate.value + config.timerentry.startdate.change() + self["config"].invalidate(config.timerentry.startdate) + def createSetup(self): self.list = [] self.list.append(getConfigListEntry("Description", config.timerentry.description)) @@ -114,6 +129,12 @@ class TimerEntry(Screen): self["config"].handleKey(config.key["prevElement"]) self.newConfig() + def keyRightCallback(self, configPath): + currentConfigPath = self["config"].getCurrent()[1].parent.getConfigPath() + # check if we are still on the same config entry + if (currentConfigPath == configPath): + self.keyRight() + def keyRight(self): self["config"].handleKey(config.key["nextElement"]) self.newConfig()