X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/2b0cb23445858adf81b34500883c842ffd26f4f8..9c2be7b98291ced0479a737f9141ed6d64eaed3a:/lib/python/Components/Input.py diff --git a/lib/python/Components/Input.py b/lib/python/Components/Input.py index e6e27fab..b140ef51 100644 --- a/lib/python/Components/Input.py +++ b/lib/python/Components/Input.py @@ -19,8 +19,8 @@ class Input(VariableText, HTMLComponent, GUIComponent): self.maxSize = maxSize self.currPos = 0 self.Text = text + self.overwrite = 0 self.update() - def update(self): self.setMarkedPos(self.currPos) if self.type == self.PIN: @@ -79,14 +79,45 @@ class Input(VariableText, HTMLComponent, GUIComponent): newNumber = str(int(self.Text[self.currPos]) - 1) self.Text = self.Text[0:self.currPos] + newNumber + self.Text[self.currPos + 1:] self.update() - + + def home(self): + self.currPos = 0 + self.update() + + def end(self): + self.currPos = len(self.Text) - 1 + self.update() + + def tab(self): + if self.currPos == len(self.Text) - 1: + self.Text=self.Text+ " " + self.end() + else: + self.Text = self.Text[0:self.currPos] + " " + self.Text[self.currPos:] + self.update() + def delete(self): self.Text = self.Text[:self.currPos] + self.Text[self.currPos + 1:] self.update() + + def toggleOverwrite(self): + if self.overwrite==1: + self.overwrite=0 + else: + self.overwrite=1 + self.update() + + def deleteBackward(self): + self.Text = self.Text[:self.currPos - 1] + self.Text[self.currPos:] + self.left() + self.update() def handleAscii(self, code): newChar = chr(code) - self.Text = self.Text[0:self.currPos] + newChar + self.Text[self.currPos + 1:] + if self.overwrite==1: + self.Text = self.Text[0:self.currPos] + newChar + self.Text[self.currPos + 1:] + else: + self.Text = self.Text[0:self.currPos] + newChar + self.Text[self.currPos:] self.right() def number(self, number):