class ConfigElement(object):
def __init__(self):
self.saved_value = None
+ self.save_forced = False
self.last_value = None
self.save_disabled = False
self.__notifiers = None
# you need to override this if str(self.value) doesn't work
def save(self):
- if self.save_disabled or self.value == self.default:
+ if self.save_disabled or (self.value == self.default and not self.save_forced):
self.saved_value = None
else:
self.saved_value = self.tostring(self.value)
step += stepwidth
ConfigSelection.__init__(self, choices, default)
-
+
def getValue(self):
- return int(self.text)
+ return int(ConfigSelection.getValue(self))
def setValue(self, val):
- self.text = str(val)
-
+ ConfigSelection.setValue(self, str(val))
+
def handleKey(self, key):
if not self.wraparound:
if key == KEY_RIGHT:
if self.choices.index(self.value) == 0:
return
ConfigSelection.handleKey(self, key)
-
-
class ConfigNumber(ConfigText):
def __init__(self, default = 0):
else:
return ConfigText.getMulti(self, selected)
+ def onSelect(self, session):
+ self.allmarked = (self.value != "")
+
# a slider.
class ConfigSlider(ConfigElement):
def __init__(self, default = 0, increment = 1, limits = (0, 100)):