def __actionAscii(self): if self.urlInputEnabled: self.urlInput.handleAscii(getPrevAsciiCode()) self.__onUrlInputChanged() elif self.__isInput: self.webnavigation.changed(WebNavigation.COMMAND_ASCII_INPUT, getPrevAsciiCode()) else: self.__actionNavigateNumber(chr(getPrevAsciiCode()))
def keyGotAscii(self): char = str(unichr(getPrevAsciiCode()).encode('utf-8')) st_shift = self.shiftMode if self.inShiftKeyList(char): self.shiftMode = True list = self.shiftkeys_list else: self.shiftMode = False list = self.keys_list selkey = 0 if char == " ": char = "SPACE" self.shiftMode = False list = self.keys_list for keylist in list: for key in keylist: if key == char: self.selectedKey = selkey self.okClicked() self.showActiveKey() return else: selkey += 1 self.shiftMode = st_shift self.text = self["text"].getText() self.text += char self["text"].setText(self.text)
def handleKey(self, key): if key == KEY_LEFT: self.marked_pos -= 1 self.validatePos() elif key == KEY_RIGHT: self.marked_pos += 1 self.validatePos() elif key == KEY_HOME: self.marked_pos = 0 self.validatePos() elif key == KEY_END: max_pos = 0 num = 0 for i in self._value: max_pos += len(str(self.limits[num][1])) num += 1 self.marked_pos = max_pos - 1 self.validatePos() elif key in KEY_NUMBERS or key == KEY_ASCII: if key == KEY_ASCII: code = getPrevAsciiCode() if code < 48 or code > 57: return number = code - 48 else: number = getKeyNumber(key) block_len = [len(str(x[1])) for x in self.limits] total_len = sum(block_len) pos = 0 blocknumber = 0 block_len_total = [0, ] for x in block_len: pos += block_len[blocknumber] block_len_total.append(pos) if pos - 1 >= self.marked_pos: pass else: blocknumber += 1 # length of numberblock number_len = len(str(self.limits[blocknumber][1])) # position in the block posinblock = self.marked_pos - block_len_total[blocknumber] oldvalue = self._value[blocknumber] olddec = oldvalue % 10 ** (number_len - posinblock) - (oldvalue % 10 ** (number_len - posinblock - 1)) newvalue = oldvalue - olddec + (10 ** (number_len - posinblock - 1) * number) self._value[blocknumber] = newvalue self.marked_pos += 1 self.validate() self.changed()
def keyGotAscii(self): #char = str(unichr(getPrevAsciiCode()).encode('utf-8')) from Components.config import getCharValue char = getCharValue(getPrevAsciiCode()) if len(str(char)) == 1: char = char.encode("utf-8") if self.inShiftKeyList(char): self.shiftMode = True list = self.shiftkeys_list else: self.shiftMode = False list = self.keys_list if char == " ": char = "SPACE" selkey = 0 for keylist in list: for key in keylist: if key == char: self.selectedKey = selkey self.okClicked() self.showActiveKey() return else: selkey += 1
def keyGotAscii(self): # char = str(unichr(getPrevAsciiCode()).encode('utf-8')) from Components.config import getCharValue char = getCharValue(getPrevAsciiCode()) if len(str(char)) == 1: char = char.encode("utf-8") if self.inShiftKeyList(char): self.shiftMode = True list = self.shiftkeys_list else: self.shiftMode = False list = self.keys_list if char == " ": char = "SPACE" selkey = 0 for keylist in list: for key in keylist: if key == char: self.selectedKey = selkey self.okClicked() self.showActiveKey() return else: selkey += 1
def _keyAsciiCode(self): unichar = unichr(getPrevAsciiCode()) charstr = unichar.encode("utf-8") if len(charstr): if charstr[0] == "0": self.__KeyNull(0) else: self._getFirstForChar(charstr[0].upper())
def handleKey(self, key): if key == KEY_LEFT: if self.marked_block > 0: self.marked_block -= 1 self.overwrite = True elif key == KEY_RIGHT: if self.marked_block < len(self.limits)-1: self.marked_block += 1 self.overwrite = True elif key == KEY_HOME: self.marked_block = 0 self.overwrite = True elif key == KEY_END: self.marked_block = len(self.limits)-1 self.overwrite = True elif key in KEY_NUMBERS or key == KEY_ASCII: if key == KEY_ASCII: code = getPrevAsciiCode() if code < 48 or code > 57: return number = code - 48 else: number = getKeyNumber(key) oldvalue = self._value[self.marked_block] if self.overwrite: self._value[self.marked_block] = number self.overwrite = False else: oldvalue *= 10 newvalue = oldvalue + number if self.auto_jump and newvalue > self.limits[self.marked_block][1] and self.marked_block < len(self.limits)-1: self.handleKey(KEY_RIGHT) self.handleKey(key) return else: self._value[self.marked_block] = newvalue if len(str(self._value[self.marked_block])) >= self.block_len[self.marked_block]: self.handleKey(KEY_RIGHT) self.validate() self.changed()
def handleKey(self, key): if key in KEY_NUMBERS or key == KEY_ASCII: if key == KEY_ASCII: ascii = getPrevAsciiCode() if not (48 <= ascii <= 57): return else: ascii = getKeyNumber(key) + 48 newChar = unichr(ascii) if self.allmarked: self.deleteAllChars() self.allmarked = False self.insertChar(newChar, self.marked_pos, False) self.marked_pos += 1 else: ConfigText.handleKey(self, key) self.conform()
def keyGotAscii(self): char = str(unichr(getPrevAsciiCode()).encode('utf-8')) if self.inShiftKeyList(char): self.shiftMode = True list = self.shiftkeys_list else: self.shiftMode = False list = self.keys_list if char == ' ': char = 'SPACE' selkey = 0 for keylist in list: for key in keylist: if key == char: self.selectedKey = selkey self.okClicked() self.showActiveKey() return selkey += 1
def keyGotAscii(self): char = str(unichr(getPrevAsciiCode()).encode('utf-8')) if self.inShiftKeyList(char): self.shiftMode = True list = self.shiftkeys_list else: self.shiftMode = False list = self.keys_list selkey = 0 for keylist in list: for key in keylist: if key == char: self.selectedKey = selkey self.okClicked() self.showActiveKey() return else: selkey += 1
def keyGotAscii(self): char = six.ensure_str(unichr(getPrevAsciiCode())) if self.inShiftKeyList(char): self.shiftMode = True list = self.shiftkeys_list else: self.shiftMode = False list = self.keys_list if char == " ": char = "SPACE" selkey = 0 for keylist in list: for key in keylist: if key == char: self.selectedKey = selkey self.okClicked() self.showActiveKey() return else: selkey += 1
def getCharValue(code): global vumapidx global vukeymap global rckeyboard_enable print "got ascii code : %d [%d]"%(code, vumapidx) if rckeyboard_enable: if code == 0: vumapidx = 0 return None elif code == 42: vumapidx += 1 return None elif code == 56: vumapidx += 3 return None elif code == 100: vumapidx += 2 return None try: return vukeymap[code][vumapidx] except: return None else: return unichr(getPrevAsciiCode())
def gotAsciiCode(self): self["input"].handleAscii(getPrevAsciiCode())
def handleKey(self, key): # this will no change anything on the value itself # so we can handle it here in gui element if key == KEY_DELETE: self.timeout() if self.allmarked: self.deleteAllChars() self.allmarked = False else: self.deleteChar(self.marked_pos) if self.fixed_size and self.overwrite: self.marked_pos += 1 elif key == KEY_BACKSPACE: self.timeout() if self.allmarked: self.deleteAllChars() self.allmarked = False elif self.marked_pos > 0: self.deleteChar(self.marked_pos-1) if not self.fixed_size and self.offset > 0: self.offset -= 1 self.marked_pos -= 1 elif key == KEY_LEFT: self.timeout() if self.allmarked: self.marked_pos = len(self.text) self.allmarked = False else: self.marked_pos -= 1 elif key == KEY_RIGHT: self.timeout() if self.allmarked: self.marked_pos = 0 self.allmarked = False else: self.marked_pos += 1 elif key == KEY_HOME: self.timeout() self.allmarked = False self.marked_pos = 0 elif key == KEY_END: self.timeout() self.allmarked = False self.marked_pos = len(self.text) elif key == KEY_TOGGLEOW: self.timeout() self.overwrite = not self.overwrite elif key == KEY_ASCII: self.timeout() newChar = unichr(getPrevAsciiCode()) if not self.useableChars or newChar in self.useableChars: if self.allmarked: self.deleteAllChars() self.allmarked = False self.insertChar(newChar, self.marked_pos, False) self.marked_pos += 1 elif key in KEY_NUMBERS: owr = self.lastKey == getKeyNumber(key) newChar = self.getKey(getKeyNumber(key)) if self.allmarked: self.deleteAllChars() self.allmarked = False self.insertChar(newChar, self.marked_pos, owr) elif key == KEY_TIMEOUT: self.timeout() if self.help_window: self.help_window.update(self) return if self.help_window: self.help_window.update(self) self.validateMarker() self.changed()
def __ascii(self): print "ASCII!" if self.nameFocus: self.inputName.handleAscii(getPrevAsciiCode()) else: self.inputUrl.handleAscii(getPrevAsciiCode())
def __ascii(self): if self.userFocus: self.inputUser.handleAscii(getPrevAsciiCode()) else: self.inputPassword.handleAscii(getPrevAsciiCode())
def keyGotAscii(self): self.smsChar = None if self.selectAsciiKey(str(unichr(getPrevAsciiCode()).encode('utf-8'))): self.okClicked()
def gotAsciiCode(self): self[self.activeInput].handleAscii(getPrevAsciiCode())
def _actionAscii(self): self["needle"].handleAscii(getPrevAsciiCode()) self._onSearchInputChanged()
def keyGotAscii(self): self.smsChar = None if self.selectAsciiKey(str(unichr(getPrevAsciiCode()).encode("utf-8"))): self.processSelect()
def gotAsciiCode(self): self['input'].handleAscii(getPrevAsciiCode())
def __ascii(self): print("ASCII!") if self.nameFocus: self.inputName.handleAscii(getPrevAsciiCode()) else: self.inputUrl.handleAscii(getPrevAsciiCode())
def keyAsciiCode(self): unichar = unichr(getPrevAsciiCode()) charstr = unichar.encode("utf-8") if len(charstr) == 1: self.servicelist.moveToChar(charstr[0])
def __ascii(self): if self.userFocus: self._inputFirst.handleAscii(getPrevAsciiCode()) else: self._inputSecond.handleAscii(getPrevAsciiCode())
def gotAsciiCode(self): if self.activeInput == '': return self[self.activeInput].handleAscii(getPrevAsciiCode())
def __hisKeyAscii(self): self.detailInput.handleAscii(getPrevAsciiCode()) self.__hisFilterTimer.startLongTimer(1)
def handleKey(self, key): # this will no change anything on the value itself # so we can handle it here in gui element if key == KEY_DELETE: self.timeout() if self.allmarked: self.deleteAllChars() self.allmarked = False else: self.deleteChar(self.marked_pos) if self.fixed_size and self.overwrite: self.marked_pos += 1 elif key == KEY_BACKSPACE: self.timeout() if self.allmarked: self.deleteAllChars() self.allmarked = False elif self.marked_pos > 0: self.deleteChar(self.marked_pos-1) if not self.fixed_size and self.offset > 0: self.offset -= 1 self.marked_pos -= 1 elif key == KEY_LEFT: self.timeout() if self.allmarked: self.marked_pos = len(self.text) self.allmarked = False else: self.marked_pos -= 1 elif key == KEY_RIGHT: self.timeout() if self.allmarked: self.marked_pos = 0 self.allmarked = False else: self.marked_pos += 1 elif key == KEY_HOME: self.timeout() self.allmarked = False self.marked_pos = 0 elif key == KEY_END: self.timeout() self.allmarked = False self.marked_pos = len(self.text) elif key == KEY_TOGGLEOW: self.timeout() self.overwrite = not self.overwrite elif key == KEY_ASCII: self.timeout() #### vuplus #newChar = unichr(getPrevAsciiCode()) #if not self.useableChars or newChar in self.useableChars: newChar = getCharValue(getPrevAsciiCode()) if (newChar is not None) and (not self.useableChars or newChar in self.useableChars): #### vuplus if self.allmarked: self.deleteAllChars() self.allmarked = False self.insertChar(newChar, self.marked_pos, False) self.marked_pos += 1 elif key in KEY_NUMBERS: owr = self.lastKey == getKeyNumber(key) newChar = self.getKey(getKeyNumber(key)) if self.allmarked: self.deleteAllChars() self.allmarked = False self.insertChar(newChar, self.marked_pos, owr) elif key == KEY_TIMEOUT: self.timeout() if self.help_window: self.help_window.update(self) return if self.help_window: self.help_window.update(self) self.validateMarker() self.changed()