fix (hope so) configSequence
authorStefan Pluecken <stefan.pluecken@multimedia-labs.de>
Mon, 12 Dec 2005 00:24:34 +0000 (00:24 +0000)
committerStefan Pluecken <stefan.pluecken@multimedia-labs.de>
Mon, 12 Dec 2005 00:24:34 +0000 (00:24 +0000)
lib/python/Components/NimManager.py
lib/python/Components/config.py

index dbce97b..a8ad632 100644 (file)
@@ -427,9 +427,9 @@ def InitNimManager(nimmgr):
                        nim.diseqcC = configElement(cname + "diseqcC", configSatlist, 0, nimmgr.satList);
                        nim.diseqcD = configElement(cname + "diseqcD", configSatlist, 0, nimmgr.satList);
                        nim.positionerMode = configElement(cname + "positionerMode", configSelection, 0, (_("USALS"), _("manual")));
-                       nim.longitude = configElement(cname + "longitude", configSequence, [5,100], configsequencearg.get("FLOAT", [(0,100),(0,999)]));
+                       nim.longitude = configElement(cname + "longitude", configSequence, [5,100], configsequencearg.get("FLOAT", [(0,90),(0,999)]));
                        nim.longitudeOrientation = configElement(cname + "longitudeOrientation", configSelection, 0, (_("East"), _("West")))
-                       nim.latitude = configElement(cname + "latitude", configSequence, [50,767], configsequencearg.get("FLOAT", [(0,100),(0,999)]));
+                       nim.latitude = configElement(cname + "latitude", configSequence, [50,767], configsequencearg.get("FLOAT", [(0,90),(0,999)]));
                        nim.latitudeOrientation = configElement(cname + "latitudeOrientation", configSelection, 0, (_("North"), _("South")))
                        satNimList = nimmgr.getNimListOfType(nimmgr.nimType["DVB-S"], slot.slotid)
                        satNimListNames = []
index 4d5af5c..a2dfb8d 100644 (file)
@@ -213,13 +213,26 @@ class configSequence:
                        self.markedPos += 1
                
                if key >= config.key["0"] and key <= config.key["9"]:
+                       self.blockLen = []
+                       for x in self.valueBounds:
+                               self.blockLen.append(len(str(x[1])))
+                               
+                       pos = 0
+                       blocknumber = 0
+                       self.blockLenTotal = [0,]
+                       for x in self.blockLen:
+                               pos += self.blockLen[blocknumber]
+                               self.blockLenTotal.append(pos)
+                               if (pos - 1 >= self.markedPos):
+                                       pass
+                               else:
+                                       blocknumber += 1
+                                       
                        number = 9 - config.key["9"] + key
                        # length of numberblock
-                       numberLen = len(str(self.valueBounds[0][1]))
+                       numberLen = len(str(self.valueBounds[blocknumber][1]))
                        # position in the block
-                       posinblock = self.markedPos % numberLen
-                       # blocknumber
-                       blocknumber = self.markedPos / numberLen
+                       posinblock = self.markedPos - self.blockLenTotal[blocknumber]
                        
                        oldvalue = self.parent.value[blocknumber]
                        olddec = oldvalue % 10 ** (numberLen - posinblock) - (oldvalue % 10 ** (numberLen - posinblock - 1))