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"))
# 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))
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()