commit-gnue
[Top][All Lists]
Advanced

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

r5852 - in trunk: gnue-common/src/logic gnue-forms/src gnue-forms/src/GF


From: jcater
Subject: r5852 - in trunk: gnue-common/src/logic gnue-forms/src gnue-forms/src/GFObjects gnue-forms/src/uidrivers/wx/widgets gnue-navigator/src
Date: Tue, 1 Jun 2004 18:17:27 -0500 (CDT)

Author: jcater
Date: 2004-06-01 18:17:26 -0500 (Tue, 01 Jun 2004)
New Revision: 5852

Modified:
   trunk/gnue-common/src/logic/NamespaceCore.py
   trunk/gnue-forms/src/GFInstance.py
   trunk/gnue-forms/src/GFObjects/GFEntry.py
   trunk/gnue-forms/src/GFObjects/GFImage.py
   trunk/gnue-forms/src/GFParser.py
   trunk/gnue-forms/src/uidrivers/wx/widgets/entry.py
   trunk/gnue-navigator/src/GNObjects.py
Log:
* Added entry.On-Next-Entry and entry.On-Previous-Entry navigational triggers
* Fixed issue with entry-level triggers bombing on form startup
* Fixed navigation issues with <image>s


Modified: trunk/gnue-common/src/logic/NamespaceCore.py
===================================================================
--- trunk/gnue-common/src/logic/NamespaceCore.py        2004-06-01 04:45:26 UTC 
(rev 5851)
+++ trunk/gnue-common/src/logic/NamespaceCore.py        2004-06-01 23:17:26 UTC 
(rev 5852)
@@ -59,7 +59,7 @@
                              }
 
     self._rname = rootName
-    
+
     if objectTree:
       self._globalNamespace[self._rname] = 
self.constructTriggerObject(objectTree)
     else:
@@ -142,7 +142,7 @@
 class NamespaceElement(GObj):
   def __init__(self, parent):
     GObj.__init__(self,parent)
-    self._parent = parent
+    self.__dict__['_parent'] = parent
     self._triggerProperties = NamespaceElementProperties()
     self._triggerSet = None
     self._triggerGet = None
@@ -151,13 +151,13 @@
   #
   #
   #
-  def __repr__(self): 
+  def __repr__(self):
     try:
       return "NamespaceElement(%s) at %s" % (self._object.__class__, id(self))
     except:
       return "NamespaceElement at %s" % (id(self))
-      
-  
+
+
   #
   # showTree
   #
@@ -254,7 +254,7 @@
   def __cmp__(self,other):
     selfvalue = "%s" % self
     othervalue = "%s" % other
-    
+
     if selfvalue == othervalue:
       return 0
     elif selfvalue < othervalue:
@@ -291,21 +291,21 @@
     string = self.__str__()
     return string[key.start:key.stop]
 
-  
+
   #
   # __iter__
   #
   # Python iterator support
   #
-  def __iter__(self): 
+  def __iter__(self):
      return iter(self._object)
-  
+
 #
 # NamespaceFunction
 #
 # Accessor class for functions that are made available in the trigger
 # namespace
-#     
+#
 class NamespaceFunction:
   def __init__(self, name, functionLink):
     self._name = name

Modified: trunk/gnue-forms/src/GFInstance.py
===================================================================
--- trunk/gnue-forms/src/GFInstance.py  2004-06-01 04:45:26 UTC (rev 5851)
+++ trunk/gnue-forms/src/GFInstance.py  2004-06-01 23:17:26 UTC (rev 5852)
@@ -488,11 +488,15 @@
     """
     if not event._form.endEditing():
       return
-    message = event._form.nextEntry()
-    if message:
-      self.displayMessageBox( message)
-      return
-    self.dispatchEvent('gotoENTRY',object=event._form._currentEntry, 
_form=event._form)
+    origEntry = event._form._currentEntry
+    event._form._currentEntry.processTrigger('ON-NEXT-ENTRY', 
ignoreAbort=False)
+    # If the trigger changed focus, no need in us doing it too...
+    if origEntry == event._form._currentEntry:
+      message = event._form.nextEntry()
+      if message:
+        self.displayMessageBox( message)
+        return
+      self.dispatchEvent('gotoENTRY',object=event._form._currentEntry, 
_form=event._form)
     self.updateRecordStatus(event._form)
     self.updateTip(event._form)
 
@@ -507,9 +511,13 @@
     if not event._form.endEditing():
       return
 
-    event._form.previousEntry()
+    origEntry = event._form._currentEntry
+    event._form._currentEntry.processTrigger('ON-PREVIOUS-ENTRY', 
ignoreAbort=False)
+    # If the trigger changed focus, no need in us doing it too...
+    if origEntry == event._form._currentEntry:
+      event._form.previousEntry()
+      self.dispatchEvent('gotoENTRY',object=event._form._currentEntry, 
_form=event._form)
 
-    self.dispatchEvent('gotoENTRY',object=event._form._currentEntry, 
_form=event._form)
     self.updateRecordStatus(event._form)
     self.updateTip(event._form)
 

Modified: trunk/gnue-forms/src/GFObjects/GFEntry.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFEntry.py   2004-06-01 04:45:26 UTC (rev 
5851)
+++ trunk/gnue-forms/src/GFObjects/GFEntry.py   2004-06-01 23:17:26 UTC (rev 
5852)
@@ -56,7 +56,6 @@
     self._rows = 1
     self._gap = 0
 
-    # TODO: Conversion: Dunno about any of these triggers
     #
     # Trigger exposure
     #
@@ -64,11 +63,12 @@
                            'POST-FOCUSOUT':  'Post-FocusOut',
                            'PRE-FOCUSIN':    'Pre-FocusIn',
                            'POST-FOCUSIN':   'Post-FocusIn',
+                           'ON-NEXT-ENTRY':  'On-Next-Entry',
+                           'ON-PREVIOUS-ENTRY':  'On-Previous-Entry',
                          }
     self._triggerFunctions={'set':{'function':self.triggerSetValue},
                             'get':{'function':self.getValue}
-
-                            }
+                             }
     self._triggerSet = self.triggerSetValue
     self._triggerGet = self.getValue
 

Modified: trunk/gnue-forms/src/GFObjects/GFImage.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFImage.py   2004-06-01 04:45:26 UTC (rev 
5851)
+++ trunk/gnue-forms/src/GFObjects/GFImage.py   2004-06-01 23:17:26 UTC (rev 
5852)
@@ -32,15 +32,15 @@
 # Copyright (c) 2000 Free Software Foundation
 #
 
-from GFValue import GFValue
 from GFTabStop import GFTabStop
+from GFTabStop import GFTabStop
 from gnue.forms import GFDisplayHandler
 #
 #GFLabel
 #
-class GFImage(GFValue, GFTabStop):
+class GFImage(GFTabStop):
   def __init__(self, parent=None, value=None):
-    GFValue.__init__(self, parent, value, 'GFImage')
+    GFTabStop.__init__(self, parent, 'GFImage')
 
     # Default attributes (these may be replaced by parser)
     self.type = "URL"
@@ -49,17 +49,17 @@
     # Runtime Variables
     self._inits = [self.initialize]
 
-    self.isNavigable = GFTabStop.isNavigable
+#    self.isNavigable = GFTabStop.isNavigable
 
   def _buildObject(self):
     if not hasattr(self, 'rows') and hasattr(self,'visibleCount'):
       self.rows = self.visibleCount
       del self.visibleCount
-    return GFValue._buildObject(self)
+    return GFTabStop._buildObject(self)
 
   def setValue(self, value):
     if not self._value:
-      GFValue.setValue(self,value)
+      GFTabStop.setValue(self,value)
 
   #
   # Routines called during a phaseInit
@@ -74,14 +74,14 @@
       self._block = block = 
self.findParentOfType('GFForm')._logic._blockMap[self.block]
       block._entryList.append(self)
     except KeyError:
-      raise "Entry references non-existent block '%s'" % self.block
+      raise "Image references non-existent block '%s'" % self.block
 
     # ...Field
     try:
       self._field = field = block._fieldMap[self.field]
       field._entryList.append(self)
     except KeyError:
-      raise "Entry references non-existent field '%s'" % self.field
+      raise "Image references non-existent field '%s'" % self.field
 
     # ...Page
     self._page = self.findParentOfType('GFPage')
@@ -100,3 +100,7 @@
 
 
 
+  def isNavigable(self, mode):
+    # TODO: Check for read-only, etc
+    return GFTabStop.isNavigable(self, mode)
+

Modified: trunk/gnue-forms/src/GFParser.py
===================================================================
--- trunk/gnue-forms/src/GFParser.py    2004-06-01 04:45:26 UTC (rev 5851)
+++ trunk/gnue-forms/src/GFParser.py    2004-06-01 23:17:26 UTC (rev 5852)
@@ -529,13 +529,6 @@
                'Required': True,
                'References': 'block.name',
                'Description': 'The name of the block that this ties to.' },
-##            'height': {
-##               'Typecast': GTypecast.whole,
-# ##               'Default': 1,
-##               'Description': 'The height of the entry in text rows. ' },
-##            'width': {
-##               'Typecast': GTypecast.whole,
-##               'Description': 'The width of the entry in text columns.' },
             'focusorder': {
                'Typecast': GTypecast.whole,
                'Label': _('Focus Order'),

Modified: trunk/gnue-forms/src/uidrivers/wx/widgets/entry.py
===================================================================
--- trunk/gnue-forms/src/uidrivers/wx/widgets/entry.py  2004-06-01 04:45:26 UTC 
(rev 5851)
+++ trunk/gnue-forms/src/uidrivers/wx/widgets/entry.py  2004-06-01 23:17:26 UTC 
(rev 5852)
@@ -44,7 +44,7 @@
   """
   A wxPython-based UI driver for GNUe Forms
   """
-  
+
   def _createWidget(self, event, spacer):
     """
     Creates a single instance of a data entry widget
@@ -70,11 +70,11 @@
       elif gConfigForms('dropdownMode') == 'gtk1':
         self.dropdownMode = 'gtk1'
         self.comboHandler = self._gtk1ComboHandler
-          
+
       if event.initialize:
         choices = []
         for val in object._field.allowedValues()[1]:
-          choices.append(wxEncode(val))          
+          choices.append(wxEncode(val))
       else:
         choices = [""]
 
@@ -98,7 +98,7 @@
       if event.initialize:
         choices = []
         for val in object._field.allowedValues()[1]:
-          choices.append(wxEncode(val))          
+          choices.append(wxEncode(val))
       else:
         choices = [""]
 
@@ -155,10 +155,10 @@
     When a value is selected from the list, we call replaceText, via event 
requestREPLACEVALUE
     """
     action = None
-    eventType = event.GetEventType()    
+    eventType = event.GetEventType()
     if self.comboDropped == True:
-      if eventType in [wxEVT_COMMAND_COMBOBOX_SELECTED, 
-                       wxEVT_COMMAND_TEXT_UPDATED, 
+      if eventType in [wxEVT_COMMAND_COMBOBOX_SELECTED,
+                       wxEVT_COMMAND_TEXT_UPDATED,
                        wxEVT_COMMAND_TEXT_ENTER]:
         self.comboDropped = False
 
@@ -183,7 +183,7 @@
     self._eventHandler(action)
     #event.Skip()   #Is it needed here?
 
-    
+
   def _gtk1ComboHandler(self, event):
     """
     Handles combobox for gtk1 style wx.  Unlike the windows handler opening a 
combobox
@@ -193,8 +193,8 @@
     eventType = event.GetEventType()
     #print "Mode: ", self.dropdownMode
     #print "Selected: %s\nUpdated: %s\nTextEnter: %s\nEventType %s   -   
DropDown Open? %s " % (wxEVT_COMMAND_COMBOBOX_SELECTED, 
wxEVT_COMMAND_TEXT_UPDATED,                        
wxEVT_COMMAND_TEXT_ENTER,eventType,self.comboDropped)
-    
-    if eventType in [wxEVT_COMMAND_COMBOBOX_SELECTED, 
+
+    if eventType in [wxEVT_COMMAND_COMBOBOX_SELECTED,
                      wxEVT_COMMAND_TEXT_ENTER]:
       object = _eventObjTowxWindow(event)
       gfObject = self._uiDriver._IdToGFObj[object.GetId()]
@@ -213,8 +213,8 @@
     Handles listbox events
     """
     action = None
-    eventType = event.GetEventType()    
-    if eventType in [wxEVT_COMMAND_LISTBOX_SELECTED, 
+    eventType = event.GetEventType()
+    if eventType in [wxEVT_COMMAND_LISTBOX_SELECTED,
                      wxEVT_COMMAND_LISTBOX_DOUBLECLICKED]:
 
       object = _eventObjTowxWindow(event)
@@ -226,8 +226,8 @@
                           _form=gfObject._form)
 
     self._eventHandler(action)
-    
 
+
   def checkboxHandler(self,event):
     """
     Handles checkbox toggling if checkbox is clicked.

Modified: trunk/gnue-navigator/src/GNObjects.py
===================================================================
--- trunk/gnue-navigator/src/GNObjects.py       2004-06-01 04:45:26 UTC (rev 
5851)
+++ trunk/gnue-navigator/src/GNObjects.py       2004-06-01 23:17:26 UTC (rev 
5852)
@@ -32,7 +32,7 @@
 from gnue.common.apps import GDebug, GConfig
 from gnue import paths
 import GNParser
-try: 
+try:
   from gnue.reports.base import GREngine,GRExceptions
   REPORTS_SUPPORT=1
 except ImportError:
@@ -93,10 +93,10 @@
 
   def _runReport(self, step):
     global REPORTS_SUPPORT
-    if not REPORTS_SUPPORT: 
+    if not REPORTS_SUPPORT:
       print "WARNING: Reports support not installed!"
-      return 
-      
+      return
+
     reportCommand = gConfigNav('RunReportCommand')
 
     # get the name of the report
@@ -108,7 +108,7 @@
       reportfile = os.path.join (paths.data, reportdir, step.location)
     else:
       reportfile = step.location
-      
+
     # default parameter should be loaded from GREngine itself
     params ={
       'destination_type':'file',
@@ -120,7 +120,7 @@
       'sortoption':'',
       'comment':None,
       'exclude_xml':None }
-    
+
     # get parameters
     # moved to GNStep - jst 
     #for child in step._children:





reply via email to

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