commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnue] r7864 - in trunk/gnue-forms/src: GFObjects input/displayHandlers


From: jamest
Subject: [gnue] r7864 - in trunk/gnue-forms/src: GFObjects input/displayHandlers
Date: Sat, 13 Aug 2005 21:41:44 -0500 (CDT)

Author: jamest
Date: 2005-08-13 21:41:43 -0500 (Sat, 13 Aug 2005)
New Revision: 7864

Modified:
   trunk/gnue-forms/src/GFObjects/GFEntry.py
   trunk/gnue-forms/src/GFObjects/GFTabStop.py
   trunk/gnue-forms/src/input/displayHandlers/Checkbox.py
   trunk/gnue-forms/src/input/displayHandlers/Component.py
   trunk/gnue-forms/src/input/displayHandlers/Cursor.py
   trunk/gnue-forms/src/input/displayHandlers/DateTime.py
   trunk/gnue-forms/src/input/displayHandlers/Dropdown.py
   trunk/gnue-forms/src/input/displayHandlers/Image.py
   trunk/gnue-forms/src/input/displayHandlers/Listbox.py
   trunk/gnue-forms/src/input/displayHandlers/Numeric.py
   trunk/gnue-forms/src/input/displayHandlers/Password.py
   trunk/gnue-forms/src/input/displayHandlers/Text.py
   trunk/gnue-forms/src/input/displayHandlers/__init__.py
Log:
misc fixes and cleanup


Modified: trunk/gnue-forms/src/GFObjects/GFEntry.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFEntry.py   2005-08-14 00:51:48 UTC (rev 
7863)
+++ trunk/gnue-forms/src/GFObjects/GFEntry.py   2005-08-14 02:41:43 UTC (rev 
7864)
@@ -30,7 +30,6 @@
 
 from gnue.forms.input import displayHandlers
 from GFTabStop import GFTabStop
-import string
 
 ############################################################
 # GFEntry
@@ -123,34 +122,11 @@
     self._inputmask = hasattr(self,'inputmask') and self.inputmask or ""
     self._displaymask = hasattr(self,'displaymask') and self.displaymask or ""
 
-    # TODO: Conversion: I'm torn... does this go here or in GFField??
-    # Create an appropriate display handler
-    if self.style == 'checkbox':
-      self._displayHandler = displayHandlers.Checkbox(self,
-               self._form._instance.eventController, self.subEventHandler)
-    elif self.style == 'dropdown':
-      self._displayHandler = displayHandlers.Dropdown(self,
-               self._form._instance.eventController, self.subEventHandler)
-    elif self.style == 'listbox':
-      self._displayHandler = displayHandlers.Listbox(self,
-               self._form._instance.eventController, self.subEventHandler)
-    elif self.style == 'password':
-      self._displayHandler = displayHandlers.Password(self,
-               self._form._instance.eventController, self.subEventHandler,
-               self._displaymask, self._inputmask)
-    elif self._field.typecast == 'number':
-      self._displayHandler = displayHandlers.Numeric(self,
-               self._form._instance.eventController, self.subEventHandler,
-               self._displaymask, self._inputmask)
-    elif self._field.typecast == 'date':
-      print "It's a date then"
-      self._displayHandler = displayHandlers.DateTime(self,
-               self._form._instance.eventController, self.subEventHandler,
-               self._displaymask, self._inputmask)
-    else:
-      self._displayHandler = displayHandlers.Text(self,
-               self._form._instance.eventController, self.subEventHandler,
-               self._displaymask, self._inputmask)
+    # Associate a display handler with this instance
+    self._displayHandler = displayHandlers.factory(self,
+                             self._form._instance.eventController,
+                             self.subEventHandler,
+                             self._displaymask, self._inputmask)
 
     # Row settings
     if hasattr(self,'rows'):
@@ -185,13 +161,13 @@
     return self._field.triggerSetValue(*args, **parms)
 
   def triggerSetHidden(self, value):
-    self.hidden = not not value # Force boolean
+    self.hidden = bool(value)
 
   def triggerGetHidden(self):
     return self.hidden
 
   def triggerSetNavigable(self, value):
-    self.navigable = not not value # Force boolean
+    self.navigable = bool(value)
 
   def triggerGetNavigable(self):
     return self.navigable

Modified: trunk/gnue-forms/src/GFObjects/GFTabStop.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFTabStop.py 2005-08-14 00:51:48 UTC (rev 
7863)
+++ trunk/gnue-forms/src/GFObjects/GFTabStop.py 2005-08-14 02:41:43 UTC (rev 
7864)
@@ -23,7 +23,7 @@
 #
 # DESCRIPTION:
 """
-A base class for all GFObjects that can be containers
+A base class for all GFObjects that can receive focus on the UI
 """
 
 from gnue.common import events
@@ -31,10 +31,17 @@
 from GFObj import GFObj
 
 class GFTabStop(GFObj):
+  """
+  A base class for all GFObjects that can receive focus on the UI
+  """
+  
   _navigable = True
 
   def __init__(self, parent, type):
     GFObj.__init__(self, parent, type)
+    
+    # The sub-event handler handles the events that are passed from
+    # the GFInstance.  This is the event handler that display handlers 
     self.subEventHandler = events.EventController()
 
   def isNavigable(self, mode="edit"):

Modified: trunk/gnue-forms/src/input/displayHandlers/Checkbox.py
===================================================================
--- trunk/gnue-forms/src/input/displayHandlers/Checkbox.py      2005-08-14 
00:51:48 UTC (rev 7863)
+++ trunk/gnue-forms/src/input/displayHandlers/Checkbox.py      2005-08-14 
02:41:43 UTC (rev 7864)
@@ -35,7 +35,8 @@
 #
 class Checkbox(BaseCursor):
 
-  def __init__(self, *args, **params):
+  def __init__(self, entry, eventHandler, subEventHandler, displayMask,
+               inputMask):
 
     self.trueValue = gConfigForms("checkboxTrue")
     self.falseValue = gConfigForms("checkboxFalse")
@@ -43,7 +44,7 @@
     self.trueValues =  ('Y', 'y', 'T', 't', '1', 'x', 'X', self.trueValue)
     self.falseValues = ('N', 'n', 'F', 'f', '0', '', ' ', self.falseValue)
 
-    BaseCursor.__init__(self, *args, **params)
+    BaseCursor.__init__(self, entry, eventHandler, subEventHandler)
 
     # My events...
     self.subEventHandler.registerEventListeners( {

Modified: trunk/gnue-forms/src/input/displayHandlers/Component.py
===================================================================
--- trunk/gnue-forms/src/input/displayHandlers/Component.py     2005-08-14 
00:51:48 UTC (rev 7863)
+++ trunk/gnue-forms/src/input/displayHandlers/Component.py     2005-08-14 
02:41:43 UTC (rev 7864)
@@ -31,8 +31,7 @@
 
 class Component(BaseCursor):
   def __init__(self, entry, eventHandler, subEventHandler):
-    BaseCursor.__init__(self, entry, eventHandler, subEventHandler,
-                                 None)
+    BaseCursor.__init__(self, entry, eventHandler, subEventHandler)
 
   def _buildDisplayHelper(self, value, editing):
     if self.entry.type.lower() == 'url':

Modified: trunk/gnue-forms/src/input/displayHandlers/Cursor.py
===================================================================
--- trunk/gnue-forms/src/input/displayHandlers/Cursor.py        2005-08-14 
00:51:48 UTC (rev 7863)
+++ trunk/gnue-forms/src/input/displayHandlers/Cursor.py        2005-08-14 
02:41:43 UTC (rev 7864)
@@ -49,14 +49,14 @@
   inherit from this one.
   """
 
-  def __init__(self, entry, eventHandler, subEventHandler, formatter=None):
+  def __init__(self, entry, eventHandler, subEventHandler):
     """
     Constructor
 
     @param entry: The GFEntry instance associated with this handler
     @param eventHandler: The 
-    @param subEventHandler:
-    @param formatter:
+    @param subEventHandler: The event handler this display helper will 
+                            user to register it's listeners.
     """
     events.EventAware.__init__(self, eventHandler)
     
@@ -79,9 +79,6 @@
     # TODO: UIdriver if this should happen!
     self.handleCR = sys.platform == "win32"
 
-    # Needs to be set by the child classes
-    self.formatter = formatter
-
     self.subEventHandler.registerEventListeners( {
     
                  # "Entry" events

Modified: trunk/gnue-forms/src/input/displayHandlers/DateTime.py
===================================================================
--- trunk/gnue-forms/src/input/displayHandlers/DateTime.py      2005-08-14 
00:51:48 UTC (rev 7863)
+++ trunk/gnue-forms/src/input/displayHandlers/DateTime.py      2005-08-14 
02:41:43 UTC (rev 7864)
@@ -48,8 +48,7 @@
   """
   def __init__(self, entry, eventHandler, subEventHandler, displayMask,
                inputMask):
-    BaseCursor.__init__(self, entry, eventHandler, subEventHandler,
-                                 None)
+    BaseCursor.__init__(self, entry, eventHandler, subEventHandler)
     self.__displayMask = displayMask
     self.__inputMask = inputMask
 

Modified: trunk/gnue-forms/src/input/displayHandlers/Dropdown.py
===================================================================
--- trunk/gnue-forms/src/input/displayHandlers/Dropdown.py      2005-08-14 
00:51:48 UTC (rev 7863)
+++ trunk/gnue-forms/src/input/displayHandlers/Dropdown.py      2005-08-14 
02:41:43 UTC (rev 7864)
@@ -35,9 +35,10 @@
   of dropdown.
   """
 
-  def __init__(self, *args, **params):
+  def __init__(self, entry, eventHandler, subEventHandler, displayMask,
+               inputMask):
 
-    BaseCursor.__init__(self, *args, **params)
+    BaseCursor.__init__(self, entry, eventHandler, subEventHandler)
 
     # My events...
     self.subEventHandler.registerEventListeners( {

Modified: trunk/gnue-forms/src/input/displayHandlers/Image.py
===================================================================
--- trunk/gnue-forms/src/input/displayHandlers/Image.py 2005-08-14 00:51:48 UTC 
(rev 7863)
+++ trunk/gnue-forms/src/input/displayHandlers/Image.py 2005-08-14 02:41:43 UTC 
(rev 7864)
@@ -41,8 +41,7 @@
   def __init__(self, entry, eventHandler, subEventHandler):
     if not Image:
       raise "Form contains a <image> and image support not loaded"
-    BaseCursor.__init__(self, entry, eventHandler, subEventHandler,
-                                 None)
+    BaseCursor.__init__(self, entry, eventHandler, subEventHandler)
 
   def _buildDisplayHelper(self, value, editing):
     if self.entry.type.lower() == 'url':

Modified: trunk/gnue-forms/src/input/displayHandlers/Listbox.py
===================================================================
--- trunk/gnue-forms/src/input/displayHandlers/Listbox.py       2005-08-14 
00:51:48 UTC (rev 7863)
+++ trunk/gnue-forms/src/input/displayHandlers/Listbox.py       2005-08-14 
02:41:43 UTC (rev 7864)
@@ -34,9 +34,10 @@
 #
 class Listbox(BaseCursor):
 
-  def __init__(self, *args, **params):
+  def __init__(self, entry, eventHandler, subEventHandler, displayMask,
+               inputMask):
 
-    BaseCursor.__init__(self, *args, **params)
+    BaseCursor.__init__(self, entry, eventHandler, subEventHandler)
 
     # My events...
     self.subEventHandler.registerEventListeners( {

Modified: trunk/gnue-forms/src/input/displayHandlers/Numeric.py
===================================================================
--- trunk/gnue-forms/src/input/displayHandlers/Numeric.py       2005-08-14 
00:51:48 UTC (rev 7863)
+++ trunk/gnue-forms/src/input/displayHandlers/Numeric.py       2005-08-14 
02:41:43 UTC (rev 7864)
@@ -37,10 +37,8 @@
   """
   def __init__(self, entry, eventHandler, subEventHandler, displayMask,
                inputMask):
-    BaseCursor.__init__(self, entry, eventHandler, subEventHandler,
-                                 None)
+    BaseCursor.__init__(self, entry, eventHandler, subEventHandler)
 
-
   def setValue(self, value):
     if value in (None, ""):
       value = None

Modified: trunk/gnue-forms/src/input/displayHandlers/Password.py
===================================================================
--- trunk/gnue-forms/src/input/displayHandlers/Password.py      2005-08-14 
00:51:48 UTC (rev 7863)
+++ trunk/gnue-forms/src/input/displayHandlers/Password.py      2005-08-14 
02:41:43 UTC (rev 7864)
@@ -42,8 +42,7 @@
     """
     Class initializer.
     """
-    BaseCursor.__init__(self, entry, eventHandler, subEventHandler,
-                                 None)
+    BaseCursor.__init__(self, entry, eventHandler, subEventHandler)
 
   def _beginEdit(self, event):
     """

Modified: trunk/gnue-forms/src/input/displayHandlers/Text.py
===================================================================
--- trunk/gnue-forms/src/input/displayHandlers/Text.py  2005-08-14 00:51:48 UTC 
(rev 7863)
+++ trunk/gnue-forms/src/input/displayHandlers/Text.py  2005-08-14 02:41:43 UTC 
(rev 7864)
@@ -37,5 +37,4 @@
   """
   def __init__(self, entry, eventHandler, subEventHandler, displayMask,
                inputMask):
-    BaseCursor.__init__(self, entry, eventHandler, subEventHandler,
-                                 None)
+    BaseCursor.__init__(self, entry, eventHandler, subEventHandler)
\ No newline at end of file

Modified: trunk/gnue-forms/src/input/displayHandlers/__init__.py
===================================================================
--- trunk/gnue-forms/src/input/displayHandlers/__init__.py      2005-08-14 
00:51:48 UTC (rev 7863)
+++ trunk/gnue-forms/src/input/displayHandlers/__init__.py      2005-08-14 
02:41:43 UTC (rev 7864)
@@ -37,4 +37,29 @@
        ]
 
 for module in __all__:
-  exec "from gnue.forms.input.displayHandlers.%s import %s" % (module,module)
+  exec "from gnue.forms.input.displayHandlers.%s import %s" % (module, module)
+
+def factory(entry, eventHandler, subEventHandler, displayMask, inputMask):
+  """
+  Function to act as a display handler factory.
+  
+  @return An instance of a display handler that is appropriate for the
+          entry type passed in.
+  """
+  classConstructors = {'checkbox':Checkbox,
+                       'date':    DateTime,
+                       'dropbox': Dropdown,
+                       'listbox': Listbox,
+                       'password':Password,
+                       'number':  Numeric,
+                      }
+
+  gDebug(6, "Creating display handler for %s style entry" % entry.style)
+  
+  try:
+    constructor = classConstructors[entry.style]
+  except KeyError:
+    constructor = Text
+  
+  
+  return constructor(entry, eventHandler, subEventHandler,displayMask, 
inputMask )





reply via email to

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