diff options
author | Reinier Heeres <reinier@heeres.eu> | 2007-07-15 13:23:17 (GMT) |
---|---|---|
committer | Reinier Heeres <reinier@heeres.eu> | 2007-07-15 13:23:17 (GMT) |
commit | 2ba907e5e47d1db5cba05870fabae02daca7af6a (patch) | |
tree | ce8b6f292df9707397e46a51decd4f5f581b16a8 /calculate.py | |
parent | a54a91fe388f32b1c2f0be6bcbe56764361a9738 (diff) |
Ans gets inserted if empty input field only
Diffstat (limited to 'calculate.py')
-rw-r--r-- | calculate.py | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/calculate.py b/calculate.py index 60fbc8e..ebf3f91 100644 --- a/calculate.py +++ b/calculate.py @@ -226,14 +226,6 @@ class Calculate(activity.Activity): # User interaction functions ########################################## - def add_text(self, c): - pos = self.text_entry.get_position() - if pos == 0 and c in self.parser.get_diadic_operators(): - c = 'Ans' + c - self.text_entry.insert_text(c, pos) - self.text_entry.grab_focus() - self.text_entry.set_position(pos + len(c)) - def remove_character(self, dir): pos = self.text_entry.get_position() print 'Position: %d, dir: %d, len: %d' % (pos, dir, len(self.text_entry.get_text())) @@ -305,6 +297,16 @@ class Calculate(activity.Activity): return True + def add_text(self, c): + pos = self.text_entry.get_position() + tlen = len(self.text_entry.get_text()) + if tlen == 0 and c in self.parser.get_diadic_operators(): + c = 'Ans' + c + self.text_entry.insert_text(c, pos) + self.text_entry.grab_focus() + self.text_entry.set_position(pos + len(c)) + +# This function should be split up properly def button_pressed(self, type, str): sel = self.text_entry.get_selection_bounds() pos = self.text_entry.get_position() @@ -328,7 +330,7 @@ class Calculate(activity.Activity): if len(sel) is 2: pos = start elif pos == 0: - str = 'Ans'+str + str = 'Ans' + str self.text_entry.insert_text(str, pos) self.text_entry.set_position(pos + len(str)) |