commit-gnue
[Top][All Lists]
Advanced

[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 = {}





reply via email to

[Prev in Thread] Current Thread [Next in Thread]