#this will no change anything on the value itself
#so we can handle it here in gui element
if key == config.key["prevElement"]:
+ self.textInput.nextKey()
self.markedPos -= 1
+
if key == config.key["nextElement"]:
+ self.textInput.nextKey()
self.markedPos += 1
if (self.mode == self.extendableSize):
if (self.markedPos >= len(self.parent.value)):
self.parent.value = self.parent.value.ljust(len(self.parent.value) + 1)
-
+
+
if key >= config.key["0"] and key <= config.key["9"]:
number = 9 - config.key["9"] + key
class NumericalTextInput:
mapping = []
- mapping.append (('a', 'b', 'c', 'A', 'B', 'C')) # 0
- mapping.append (('a', 'b', 'c', 'A', 'B', 'C')) # 1
- mapping.append (('a', 'b', 'c', 'A', 'B', 'C')) # 2
- mapping.append (('a', 'b', 'c', 'A', 'B', 'C')) # 3
- mapping.append (('a', 'b', 'c', 'A', 'B', 'C')) # 4
- mapping.append (('a', 'b', 'c', 'A', 'B', 'C')) # 5
- mapping.append (('a', 'b', 'c', 'A', 'B', 'C')) # 6
- mapping.append (('a', 'b', 'c', 'A', 'B', 'C')) # 7
- mapping.append (('a', 'b', 'c', 'A', 'B', 'C')) # 8
- mapping.append (('a', 'b', 'c', 'A', 'B', 'C')) # 9
+ mapping.append ("abcABC") # 0
+ mapping.append ("abcABC") # 1
+ mapping.append ("abcABC") # 2
+ mapping.append ("defDEF") # 3
+ mapping.append ("ghiGHI") # 4
+ mapping.append ("jklJKL") # 5
+ mapping.append ("mnoMNO") # 6
+ mapping.append ("pqrsPQRS") # 7
+ mapping.append ("tuvTUV") # 8
+ mapping.append ("wxyzWXYZ") # 9
+
+
def __init__(self, nextFunction):
self.nextFunction = nextFunction
self.Timer = eTimer()
self.Timer.timeout.get().append(self.nextChar)
+ self.lastKey = -1
+ self.pos = 0
def getKey(self, num):
+ self.Timer.stop()
self.Timer.start(1000)
- return self.mapping[num][0]
+ if (self.lastKey != num):
+ self.lastKey = num
+ self.pos = 0
+ else:
+ self.pos += 1
+ if (len(self.mapping[num]) <= self.pos):
+ self.pos = 0
+ return self.mapping[num][self.pos]
+
+ def nextKey(self):
+ self.Timer.stop()
+ self.lastKey = -1
def nextChar(self):
self.Timer.stop()
print "Timer done"
+ self.nextKey()
self.nextFunction()
\ No newline at end of file