[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
r6080 - in trunk/gnue-forms/src/uidrivers: _base/widgets curses curses/w
From: |
reinhard |
Subject: |
r6080 - in trunk/gnue-forms/src/uidrivers: _base/widgets curses curses/widgets |
Date: |
Sun, 25 Jul 2004 15:40:02 -0500 (CDT) |
Author: reinhard
Date: 2004-07-25 15:40:01 -0500 (Sun, 25 Jul 2004)
New Revision: 6080
Modified:
trunk/gnue-forms/src/uidrivers/_base/widgets/_base.py
trunk/gnue-forms/src/uidrivers/curses/UIdriver.py
trunk/gnue-forms/src/uidrivers/curses/widgets/entry.py
Log:
Introduced new convenience functions "_keypress" and "_fkeypress" in base ui
driver.
Modified: trunk/gnue-forms/src/uidrivers/_base/widgets/_base.py
===================================================================
--- trunk/gnue-forms/src/uidrivers/_base/widgets/_base.py 2004-07-25
20:17:42 UTC (rev 6079)
+++ trunk/gnue-forms/src/uidrivers/_base/widgets/_base.py 2004-07-25
20:40:01 UTC (rev 6080)
@@ -33,8 +33,10 @@
#TODO: don't forget to cvs remove the old UIWidgets from base
import string
+from gnue.common import events
+from gnue.common.apps import GDebug
from gnue.common.definitions.GObjects import GObj
-from gnue.common.apps import GDebug
+from gnue.forms.GFKeyMapper import KeyMapper
class UIWidget(GObj):
def __init__(self, event):
@@ -107,6 +109,30 @@
#
+ # Helper functions for descendants
+ #
+ # fire a requestXXX event
+ def _request (self, name, **params):
+ params ['_object'] = self._GFobject
+ params ['_form'] = self._GFobject._form
+ self._uiDriver.dispatchEvent (events.Event ("request%s" % name, **params))
+
+ # Handle a keyboard request for a character key
+ def _keypress (self, character):
+ if character in [chr (9), chr (10)]: # tab and enter shouldn't be ctrl keys
+ self._request (KeyMapper.getEvent (ord (character), False, False, False))
+ elif character < ' ': # control key
+ self._request (KeyMapper.getEvent (ord (character) + 96,
+ False, True, False))
+ else:
+ self._request ('KEYPRESS', text = character)
+
+ # Handle a keyboard request for a function key
+ def _fkeypress (self, key, shift, ctrl, meta):
+ self._request (KeyMapper.getEvent (key, shift, ctrl, meta))
+
+
+ #
# The following functions should be overridden by the widgets
# in the ui driver.
#
Modified: trunk/gnue-forms/src/uidrivers/curses/UIdriver.py
===================================================================
--- trunk/gnue-forms/src/uidrivers/curses/UIdriver.py 2004-07-25 20:17:42 UTC
(rev 6079)
+++ trunk/gnue-forms/src/uidrivers/curses/UIdriver.py 2004-07-25 20:40:01 UTC
(rev 6080)
@@ -131,40 +131,6 @@
}
# ---------------------------------------------------------------------------
- # Generate and execute a requestXXX event for user action
- # ---------------------------------------------------------------------------
-
- def __action (self, name, **params):
-
- # This could be in the base UI driver
- params ['_form'] = self._form
- self.dispatchEvent (events.Event ("request%s" % name, **params))
-
- # ---------------------------------------------------------------------------
- # Handle a keyboard request for a character key
- # ---------------------------------------------------------------------------
-
- def __keypress (self, character):
-
- # This could be in the base UI driver
- if character in [chr (9), chr (10)]: # tab and enter shouldn't be ctrl keys
- self.__action (KeyMapper.getEvent (ord (character), False, False, False))
- elif character < ' ': # control key
- self.__action (KeyMapper.getEvent (ord (character) + 96,
- False, True, False))
- else:
- self.__action ('KEYPRESS', text = character)
-
- # ---------------------------------------------------------------------------
- # Handle a keyboard request for a function key
- # ---------------------------------------------------------------------------
-
- def __fkeypress (self, key, shift, ctrl, meta):
-
- # This could be in the base UI driver
- self.__action (KeyMapper.getEvent (key, shift, ctrl, meta))
-
- # ---------------------------------------------------------------------------
# Main loop
# ---------------------------------------------------------------------------
@@ -174,13 +140,13 @@
key = self.__currentForm.wait ()
if key >= 0 and key <= 255:
- self.__keypress (unicode (chr (key), i18n.encoding))
+ self._uiFocusWidget._keypress (unicode (chr (key), i18n.encoding))
else:
if self.__shiftkeys.has_key (key): # translate shifted f-key
(key, shift, ctrl, meta) = self.__shiftkeys [key]
else:
(shift, ctrl, meta) = (False, False, False)
- self.__fkeypress (key, shift, ctrl, meta)
+ self._uiFocusWidget._fkeypress (key, shift, ctrl, meta)
# ---------------------------------------------------------------------------
# Set title of a form
Modified: trunk/gnue-forms/src/uidrivers/curses/widgets/entry.py
===================================================================
--- trunk/gnue-forms/src/uidrivers/curses/widgets/entry.py 2004-07-25
20:17:42 UTC (rev 6079)
+++ trunk/gnue-forms/src/uidrivers/curses/widgets/entry.py 2004-07-25
20:40:01 UTC (rev 6080)
@@ -40,7 +40,7 @@
UIHelper.__init__ (self, event)
self.__style = event.object.style
- if self.__style in ['default', 'label', 'dropdown', 'listbox']:
+ if self.__style in ['default', 'password', 'label', 'dropdown', 'listbox']:
self.__length = event.object ['Char:width']
self.__value = {}
self.__selection = {}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- r6080 - in trunk/gnue-forms/src/uidrivers: _base/widgets curses curses/widgets,
reinhard <=