[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnue] r10193 - in trunk/gnue-forms: . defaults src src/GFObjects src/in
From: |
reinhard |
Subject: |
[gnue] r10193 - in trunk/gnue-forms: . defaults src src/GFObjects src/input/displayHandlers |
Date: |
Tue, 6 Jul 2010 09:10:43 -0500 (CDT) |
Author: reinhard
Date: 2010-07-06 09:10:43 -0500 (Tue, 06 Jul 2010)
New Revision: 10193
Modified:
trunk/gnue-forms/
trunk/gnue-forms/defaults/default.gfd
trunk/gnue-forms/src/GFForm.py
trunk/gnue-forms/src/GFObjects/GFTabStop.py
trunk/gnue-forms/src/input/displayHandlers/Checkbox.py
trunk/gnue-forms/src/input/displayHandlers/Cursor.py
Log:
Added routines to form to simulate user keypress of character key or backspace
keys. Can be used, for example, to add a "numerical keypad" to the toolbar.
Nice for touch screen devices.
Added possibility to insert form-specific toolbar buttons just before the close
button.
Property changes on: trunk/gnue-forms
___________________________________________________________________
Name: bzr:revision-info
- timestamp: 2010-07-06 10:51:43.145999908 +0200
committer: Reinhard Müller <address@hidden>
properties:
branch-nick: forms
+ timestamp: 2010-07-06 16:08:04.433000088 +0200
committer: Reinhard Müller <address@hidden>
properties:
branch-nick: forms
Name: bzr:file-ids
- src/GFObjects/GFBlock.py
address@hidden:trunk%2Fgnue-forms:src%2FGFObjects%2FGFBlock.py
+ defaults/default.gfd
address@hidden:trunk%2Fgnue-forms:defaults%2Fdefault.gfd
src/GFForm.py address@hidden:trunk%2Fgnue-forms:src%2FGFForm.py
src/GFObjects/GFTabStop.py
address@hidden:trunk%2Fgnue-forms:src%2FGFObjects%2FGFTabStop.py
src/input/displayHandlers/Checkbox.py
address@hidden:trunk%2Fgnue-forms:src%2Finput%2FdisplayHandlers%2FCheckbox.py
src/input/displayHandlers/Cursor.py
address@hidden:trunk%2Fgnue-forms:src%2Finput%2FdisplayHandlers%2FCursor.py
Name: bzr:revision-id:v4
- 3116 address@hidden
3117 address@hidden
3118 address@hidden
3119 address@hidden
+ 3116 address@hidden
3117 address@hidden
3118 address@hidden
3119 address@hidden
3120 address@hidden
Name: bzr:text-parents
- src/GFObjects/GFBlock.py
svn-v3-single1-dHJ1bmsvZ251ZS1mb3Jtcw..:3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:10124
+ defaults/default.gfd
svn-v3-single1-dHJ1bmsvZ251ZS1mb3Jtcw..:3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:10022
src/GFForm.py
svn-v3-single1-dHJ1bmsvZ251ZS1mb3Jtcw..:3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:10130
src/GFObjects/GFTabStop.py
svn-v3-single1-dHJ1bmsvZ251ZS1mb3Jtcw..:3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:10108
src/input/displayHandlers/Checkbox.py
svn-v3-single1-dHJ1bmsvZ251ZS1mb3Jtcw..:3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:9956
src/input/displayHandlers/Cursor.py
svn-v3-single1-dHJ1bmsvZ251ZS1mb3Jtcw..:3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:9956
Modified: trunk/gnue-forms/defaults/default.gfd
===================================================================
--- trunk/gnue-forms/defaults/default.gfd 2010-07-06 08:53:14 UTC (rev
10192)
+++ trunk/gnue-forms/defaults/default.gfd 2010-07-06 14:10:43 UTC (rev
10193)
@@ -260,6 +260,8 @@
<toolbutton name="__sep5__"/>
<toolbutton name="__rollback__" action="act__rollback__"/>
<toolbutton name="__sep6__"/>
+ </toolbar>
+ <toolbar name="__close_toolbar__">
<toolbutton name="__close__" action="act__close__"/>
</toolbar>
</form>
Modified: trunk/gnue-forms/src/GFForm.py
===================================================================
--- trunk/gnue-forms/src/GFForm.py 2010-07-06 08:53:14 UTC (rev 10192)
+++ trunk/gnue-forms/src/GFForm.py 2010-07-06 14:10:43 UTC (rev 10193)
@@ -155,11 +155,13 @@
'show_about': {'function': self.show_about},
'show_dialog': {'function': self.show_dialog},
- # Clipboard and selection
+ # Clipboard, selection, and text entry
'cut': {'function': self.cut},
'copy': {'function': self.copy},
'paste': {'function': self.paste},
'select_all': {'function': self.select_all},
+ 'enter_text': {'function': self.enter_text},
+ 'backspace': {'function': self.backspace},
# Focus movement
'next_entry': {'function': self.next_entry},
@@ -324,6 +326,19 @@
help_menu.setParent(None)
self._children.remove(help_menu)
+ # Merge extra and exit buttons into the main toolbar.
+ main_toolbar = self.findChildNamed('__main_toolbar__', 'GFToolbar')
+ extra_toolbar = self.findChildNamed('__extra_toolbar__', 'GFToolbar')
+ close_toolbar = self.findChildNamed('__close_toolbar__', 'GFToolbar')
+ if extra_toolbar:
+ main_toolbar.merge(extra_toolbar)
+ extra_toolbar.setParent(None)
+ self._children.remove(extra_toolbar)
+ if close_toolbar:
+ main_toolbar.merge(close_toolbar)
+ close_toolbar.setParent(None)
+ self._children.remove(close_toolbar)
+
self.phaseInit()
for subform in self.__subforms.itervalues():
@@ -741,6 +756,28 @@
if isinstance(self._currentEntry, GFFieldBound):
self._currentEntry.select_all()
+ # -------------------------------------------------------------------------
+ # Text entry
+ # -------------------------------------------------------------------------
+
+ def enter_text(self, text):
+ """
+ Enter text into the current entry as if typed in by the user.
+ """
+
+ if isinstance(self._currentEntry, GFFieldBound):
+ self._currentEntry.enter_text(text)
+
+ # -------------------------------------------------------------------------
+
+ def backspace(self):
+ """
+ Delete the character left to the cursor in the current entry.
+ """
+
+ if isinstance(self._currentEntry, GFFieldBound):
+ self._currentEntry.backspace()
+
# =========================================================================
# Focus functions
# =========================================================================
Modified: trunk/gnue-forms/src/GFObjects/GFTabStop.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFTabStop.py 2010-07-06 08:53:14 UTC (rev
10192)
+++ trunk/gnue-forms/src/GFObjects/GFTabStop.py 2010-07-06 14:10:43 UTC (rev
10193)
@@ -624,7 +624,7 @@
# -------------------------------------------------------------------------
- # Clipboard and selection
+ # Clipboard, selection, and text entry
# -------------------------------------------------------------------------
def cut(self):
@@ -654,6 +654,28 @@
self.uiWidget._ui_select_all_(self._visibleIndex)
# -------------------------------------------------------------------------
+
+ def enter_text(self, text):
+ """
+ Add the given text to the entry as if it was typed in by the user.
+
+ This can only used for real texts, it does not process function or
+ control keys. If the entry currently has an active selection, it is
+ overwritten.
+
+ @param text: text to add to the entry.
+ @type text: unicode
+ """
+
+ self._displayHandler.enter_text(text)
+
+ # -------------------------------------------------------------------------
+
+ def backspace(self):
+
+ self._displayHandler.backspace()
+
+ # -------------------------------------------------------------------------
# Refresh the user interface with the current field data for current row
# -------------------------------------------------------------------------
Modified: trunk/gnue-forms/src/input/displayHandlers/Checkbox.py
===================================================================
--- trunk/gnue-forms/src/input/displayHandlers/Checkbox.py 2010-07-06
08:53:14 UTC (rev 10192)
+++ trunk/gnue-forms/src/input/displayHandlers/Checkbox.py 2010-07-06
14:10:43 UTC (rev 10193)
@@ -123,12 +123,12 @@
# Correctly handle requestKEYPRESS event
- def _addText(self, event):
- if event.text == ' ':
+ def enter_text(self, text):
+ if text == ' ':
self.__toggle ()
- elif event.text in ['0', '-']: # TODO: add "Y" for current language
+ elif text in ['0', '-']: # TODO: add "Y" for current language
self.__set (False)
- elif event.text in ['1', '+']: # TODO: add "N" for current language
+ elif text in ['1', '+']: # TODO: add "N" for current language
self.__set (True)
return
Modified: trunk/gnue-forms/src/input/displayHandlers/Cursor.py
===================================================================
--- trunk/gnue-forms/src/input/displayHandlers/Cursor.py 2010-07-06
08:53:14 UTC (rev 10192)
+++ trunk/gnue-forms/src/input/displayHandlers/Cursor.py 2010-07-06
14:10:43 UTC (rev 10193)
@@ -185,13 +185,21 @@
return u''
-
# -------------------------------------------------------------------------
# Text manipulation
# -------------------------------------------------------------------------
def _addText(self, event):
+ self.enter_text(event.text)
+
+ # -------------------------------------------------------------------------
+
+ def enter_text(self, text):
+ """
+ Enter a text into the entry.
+ """
+
if self._selection1 is not None:
# If text is selected, then we will replace
(start, end) = self.getSelectionArea()
@@ -199,7 +207,7 @@
# Otherwise just graft the new text in place
(start, end) = (self._cursor, self._cursor)
- self.__change_text(start, end, event.text, start + len(event.text))
+ self.__change_text(start, end, text, start + len(text))
# -------------------------------------------------------------------------
@@ -241,6 +249,12 @@
def _backspace(self, event):
+ self.backspace()
+
+ # -------------------------------------------------------------------------
+
+ def backspace(self):
+
# If there is a selection, delete the selected portion.
if self._selection1 is not None:
(start, end) = self.getSelectionArea()
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gnue] r10193 - in trunk/gnue-forms: . defaults src src/GFObjects src/input/displayHandlers,
reinhard <=