take care of scrollbar size when build movielist and timerlist entries
[enigma2.git] / lib / python / Components / config.py
index 4e467897835b90026a32dd871073598ef4e9832c..7df6e762f7c3df5d0fa86e54d3b31c91acfb253e 100644 (file)
@@ -336,7 +336,7 @@ class ConfigSequence(ConfigElement):
                        max_pos += len(str(self.limits[num][1]))
 
                        while self._value[num] < self.limits[num][0]:
-                               self.value[num] += 1
+                               self._value[num] += 1
 
                        while self._value[num] > self.limits[num][1]:
                                self._value[num] -= 1
@@ -440,11 +440,15 @@ class ConfigSequence(ConfigElement):
                return str(v)
 
        def fromstring(self, value):
-               return [int(x) for x in self.saved_value.split(self.seperator)]
+               return [int(x) for x in value.split(self.seperator)]
 
 class ConfigIP(ConfigSequence):
        def __init__(self, default):
                ConfigSequence.__init__(self, seperator = ".", limits = [(0,255),(0,255),(0,255),(0,255)], default = default)
+       
+       def getHTML(self, id):
+               # we definitely don't want leading zeros
+               return '.'.join(["%d" % d for d in self.value])
 
 class ConfigMAC(ConfigSequence):
        def __init__(self, default):
@@ -698,6 +702,12 @@ class ConfigSubList(list, object):
                        item.saved_value = self.stored_values[i]
                        item.load()
 
+       def dict(self):
+               res = dict()
+               for index in range(len(self)):
+                       res[str(index)] = self[index]
+               return res
+
 # same as ConfigSubList, just as a dictionary.
 # care must be taken that the 'key' has a proper
 # str() method, because it will be used in the config
@@ -737,6 +747,9 @@ class ConfigSubDict(dict, object):
                        item.saved_value = self.stored_values[str(key)]
                        item.load()
 
+       def dict(self):
+               return self
+
 # Like the classes above, just with a more "native"
 # syntax.
 #
@@ -797,6 +810,9 @@ class ConfigSubsection(object):
                for x in self.content.items.values():
                        x.load()
 
+       def dict(self):
+               return self.content.items
+
 # the root config object, which also can "pickle" (=serialize)
 # down the whole config tree.
 #
@@ -878,7 +894,7 @@ class ConfigFile:
        def __resolveValue(self, pickles, cmap):
                if cmap.has_key(pickles[0]):
                        if len(pickles) > 1:
-                               return self.__resolveValue(pickles[1:], cmap[pickles[0]].content.items)
+                               return self.__resolveValue(pickles[1:], cmap[pickles[0]].dict())
                        else:
                                return str(cmap[pickles[0]].value)
                return None