commit-gnue
[Top][All Lists]
Advanced

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

gnue common/src/GObjects.py common/src/GTrigger...


From: James Thompson
Subject: gnue common/src/GObjects.py common/src/GTrigger...
Date: Thu, 31 Oct 2002 21:40:53 -0500

CVSROOT:        /cvsroot/gnue
Module name:    gnue
Changes by:     James Thompson <address@hidden> 02/10/31 21:40:53

Modified files:
        common/src     : GObjects.py GTrigger.py GTriggerCore.py 
        designer/src   : PopupMenu.py PropertyEditor.py TreeView.py 
                         TriggerEditor.py 
        designer/src/forms: Instance.py TreeView.py 
        forms/src      : GFForm.py GFParser.py 
        forms/src/GFObjects: GFBlock.py GFEntry.py GFObj.py GFPage.py 
        samples/testcases/trigger: trigger.gfd 
Removed files:
        forms/src      : GFTrigger.py 

Log message:
        Moved all trigger support into common in prep to add to support to 
reports.
        Removed global valid trigger list with a per object valid trigger 
definition

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/src/GObjects.py.diff?tr1=1.39&tr2=1.40&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/src/GTrigger.py.diff?tr1=1.23&tr2=1.24&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/src/GTriggerCore.py.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/PopupMenu.py.diff?tr1=1.14&tr2=1.15&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/PropertyEditor.py.diff?tr1=1.26&tr2=1.27&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/TreeView.py.diff?tr1=1.23&tr2=1.24&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/TriggerEditor.py.diff?tr1=1.19&tr2=1.20&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/forms/Instance.py.diff?tr1=1.13&tr2=1.14&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/forms/TreeView.py.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFForm.py.diff?tr1=1.191&tr2=1.192&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFParser.py.diff?tr1=1.73&tr2=1.74&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFObjects/GFBlock.py.diff?tr1=1.55&tr2=1.56&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFObjects/GFEntry.py.diff?tr1=1.73&tr2=1.74&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFObjects/GFObj.py.diff?tr1=1.11&tr2=1.12&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFObjects/GFPage.py.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/samples/testcases/trigger/trigger.gfd.diff?tr1=1.1&tr2=1.2&r1=text&r2=text

Patches:
Index: gnue/common/src/GObjects.py
diff -c gnue/common/src/GObjects.py:1.39 gnue/common/src/GObjects.py:1.40
*** gnue/common/src/GObjects.py:1.39    Sun Oct 27 15:59:38 2002
--- gnue/common/src/GObjects.py Thu Oct 31 21:40:53 2002
***************
*** 259,266 ****
  
      while 1:
        if parentObject == None:
!         return None
        elif parentObject._type == type:
          return parentObject
  
        parentObject = parentObject._parent
--- 259,270 ----
  
      while 1:
        if parentObject == None:
!           return None
        elif parentObject._type == type:
+         return parentObject
+ 
+       # If passed a type of NONE it finds the top object in the tree
+       if not type and not parentObject._parent:
          return parentObject
  
        parentObject = parentObject._parent
Index: gnue/common/src/GTrigger.py
diff -c gnue/common/src/GTrigger.py:1.23 gnue/common/src/GTrigger.py:1.24
*** gnue/common/src/GTrigger.py:1.23    Wed Oct 23 23:00:24 2002
--- gnue/common/src/GTrigger.py Thu Oct 31 21:40:53 2002
***************
*** 342,365 ****
  #       only here so that the new namespace code could be
  #       put to use right away
  
- #
- # A list of all valid triggers, and their "pretty" names
- #
- VALIDTRIGGERS = { 'PRE-FOCUSOUT':   'Pre-FocusOut',
-                   'POST-FOCUSOUT':  'Post-FocusOut',
-                   'PRE-FOCUSIN':    'Pre-FocusIn',
-                   'POST-FOCUSIN':   'Post-FocusIn',
-                   'POST-QUERY':     'Post-Query',
-                   'ON-SWITCH':      'On-Switch',
-                   'PRE-CHANGE':     'Pre-Change',
-                   'POST-CHANGE':    'Post-Change',
-                   'ON-NEWRECORD':   'On-NewRecord',
-                   'PRE-COMMIT':     'Pre-Commit',
-                   'PRE-INSERT':     'Pre-Insert',
-                   'PRE-UPDATE':     'Pre-Update',
-                   'PRE-DELETE':     'Pre-Delete',
-                   'PRE-MODIFY':     'Pre-Modify',
-                   'POST-COMMIT':    'Post-Commit'}
  
  #
  # GTrigger
--- 342,347 ----
***************
*** 367,382 ****
  # Class used to implement triggers
  #
  class GTrigger(GObj):
!   def __init__(self, parent=None, type=None, name=None, src=None, text=None, 
language='python', validtriggers=VALIDTRIGGERS):
!     GObj.__init__(self, parent, 'GTrigger')
  
      self._text=''
      self._triggerns={}
      self._inits   = [None,self.initialize]
  
-     # Hack!
-     self.__validtriggers = validtriggers
- 
      self.language=language
      self.src = src
      self.type = type and string.upper(type) or None
--- 349,362 ----
  # Class used to implement triggers
  #
  class GTrigger(GObj):
!   def __init__(self, parent=None, type=None, name=None, src=None, text=None, 
language='python'):
! 
!     GObj.__init__(self, parent, 'GCTrigger')
  
      self._text=''
      self._triggerns={}
      self._inits   = [None,self.initialize]
  
      self.language=language
      self.src = src
      self.type = type and string.upper(type) or None
***************
*** 386,391 ****
--- 366,372 ----
      if self.type != None:
        self._buildObject()
  
+     
    #
    # Must be at least a phase 2 init
    #
***************
*** 395,400 ****
--- 376,382 ----
    # TODO: merge the local namespace of the object that
    # TODO: fired the trigger.
    def initialize(self):
+     self._root = self.findParentOfType(None)
      self._triggerns.update( self._root._triggerns )
      self._globalns = self._root._globalRuntimeNamespace
      self.__call__ = self.dummyFunction
***************
*** 503,509 ****
      if self.type == 'NAMED':
        return self.name
      else:
!       return self.__validtriggers[string.upper(self.type)]
  
    #
    # dumpXML
--- 485,491 ----
      if self.type == 'NAMED':
        return self.name
      else:
!       return string.upper(self.type)
  
    #
    # dumpXML
***************
*** 589,597 ****
  # capable of processing triggers
  #
  class GTriggerExtension:
!   def __init__(self, validTriggers):
      self._trigger = {}
!     self._validTriggers = validTriggers 
                                          
    # associateTrigger
    #
--- 571,580 ----
  # capable of processing triggers
  #
  class GTriggerExtension:
!   def __init__(self):
      self._trigger = {}
!     
!     #self._validTriggers = validTriggers 
                                          
    # associateTrigger
    #
***************
*** 619,625 ****
        else:
          GDebug.printMesg(10, "No triggers to fire")
      else:
!       print _("Invalid trigger "),key
  
  
  
--- 602,608 ----
        else:
          GDebug.printMesg(10, "No triggers to fire")
      else:
!       print self._type,": ",_("Invalid trigger "),key
  
  
  
Index: gnue/common/src/GTriggerCore.py
diff -c gnue/common/src/GTriggerCore.py:1.5 gnue/common/src/GTriggerCore.py:1.6
*** gnue/common/src/GTriggerCore.py:1.5 Wed Apr  3 01:18:05 2002
--- gnue/common/src/GTriggerCore.py     Thu Oct 31 21:40:53 2002
***************
*** 39,44 ****
--- 39,45 ----
    def __init__(self):
      self._triggerGlobal = 0
      self._triggerFunctions = {}
+ 
      self._triggerProperties = {}
  
      #
***************
*** 55,58 ****
--- 56,66 ----
      #
      self._triggerSet = None
      self._triggerGet = None
+ 
+ 
+     #
+     # Dict of triggers that are valid for this specific 
+     # object
+     #
+     self._validTriggers = {}
  
Index: gnue/designer/src/PopupMenu.py
diff -c gnue/designer/src/PopupMenu.py:1.14 gnue/designer/src/PopupMenu.py:1.15
*** gnue/designer/src/PopupMenu.py:1.14 Wed Oct 23 23:00:24 2002
--- gnue/designer/src/PopupMenu.py      Thu Oct 31 21:40:53 2002
***************
*** 151,157 ****
      for object in self._object._children[:]:
        if hasattr(object, 'hidden') and object.hidden:
          hiddenObjects.append(object)
!       elif object._type == 'GFTrigger':
          triggerObjects.append(object)
        elif object._type == 'GFBlock':
          object._popupMenu.OnReorderLayout(event)
--- 151,157 ----
      for object in self._object._children[:]:
        if hasattr(object, 'hidden') and object.hidden:
          hiddenObjects.append(object)
!       elif object._type == 'GCTrigger':
          triggerObjects.append(object)
        elif object._type == 'GFBlock':
          object._popupMenu.OnReorderLayout(event)
Index: gnue/designer/src/PropertyEditor.py
diff -c gnue/designer/src/PropertyEditor.py:1.26 
gnue/designer/src/PropertyEditor.py:1.27
*** gnue/designer/src/PropertyEditor.py:1.26    Wed Jul  3 11:56:37 2002
--- gnue/designer/src/PropertyEditor.py Thu Oct 31 21:40:53 2002
***************
*** 67,74 ****
          self.attributes = {}
  
        self.elements = elements[string.lower(object._type[2:])]
! 
! 
        # Speed up the process by not refreshing the grid yet
        self.grid.BeginBatch()
  
--- 67,73 ----
          self.attributes = {}
  
        self.elements = elements[string.lower(object._type[2:])]
!  
        # Speed up the process by not refreshing the grid yet
        self.grid.BeginBatch()
  
Index: gnue/designer/src/TreeView.py
diff -c gnue/designer/src/TreeView.py:1.23 gnue/designer/src/TreeView.py:1.24
*** gnue/designer/src/TreeView.py:1.23  Fri Sep 13 08:27:54 2002
--- gnue/designer/src/TreeView.py       Thu Oct 31 21:40:53 2002
***************
*** 34,41 ****
  
  import sys, os
  from wxPython.wx import *
! from gnue.common import GDebug
! from gnue.forms import GFForm, GFObjects, GFTrigger, GFLibrary
  from PopupMenu import ObjectMenu
  from Icons import treeIconMap, treeIconList
  
--- 34,41 ----
  
  import sys, os
  from wxPython.wx import *
! from gnue.common import GDebug, GTrigger
! from gnue.forms import GFForm, GFObjects, GFLibrary
  from PopupMenu import ObjectMenu
  from Icons import treeIconMap, treeIconList
  
Index: gnue/designer/src/TriggerEditor.py
diff -c gnue/designer/src/TriggerEditor.py:1.19 
gnue/designer/src/TriggerEditor.py:1.20
*** gnue/designer/src/TriggerEditor.py:1.19     Wed Jul  3 11:38:05 2002
--- gnue/designer/src/TriggerEditor.py  Thu Oct 31 21:40:53 2002
***************
*** 28,35 ****
  
  
  from wxPython.wx import *
! from gnue.common import GDebug, GParserHelpers
! from gnue.forms import GFTrigger
  import keyword
  
  
--- 28,34 ----
  
  
  from wxPython.wx import *
! from gnue.common import GDebug, GParserHelpers, GTrigger
  import keyword
  
  
***************
*** 97,103 ****
      if object == None:
        return
  
!     if isinstance(object, GFTrigger.GFTrigger):
        self.__ignoreevent = 1
        self.__ignoreevent = 0
  
--- 96,102 ----
      if object == None:
        return
  
!     if isinstance(object, GTrigger.GTrigger):
        self.__ignoreevent = 1
        self.__ignoreevent = 0
  
***************
*** 132,138 ****
      self.namedTriggerCombo.SetSelection(i)
  
    def inventoryObject(self, object):
!     if isinstance(object, GFTrigger.GFTrigger):
        if object.type == 'NAMED':
          self.namedTriggerList.append(object)
          self.namedTriggerCombo.Append(object.name)
--- 131,137 ----
      self.namedTriggerCombo.SetSelection(i)
  
    def inventoryObject(self, object):
!     if isinstance(object, GTrigger.GTrigger):
        if object.type == 'NAMED':
          self.namedTriggerList.append(object)
          self.namedTriggerCombo.Append(object.name)
***************
*** 154,160 ****
        for modification in modifications:
          attribute, value = modification
  
!       if isinstance(object, GFTrigger.GFTrigger):
          if object.type == 'NAMED':
            self.refillNamedTriggerCombo()
  
--- 153,159 ----
        for modification in modifications:
          attribute, value = modification
  
!       if isinstance(object, GTrigger.GTrigger):
          if object.type == 'NAMED':
            self.refillNamedTriggerCombo()
  
***************
*** 163,169 ****
      if object == None:
        return
  
!     if isinstance(object, GFTrigger.GFTrigger):
        if object.type == 'NAMED':
  
          i = 0
--- 162,168 ----
      if object == None:
        return
  
!     if isinstance(object, GTrigger.GTrigger):
        if object.type == 'NAMED':
  
          i = 0
Index: gnue/designer/src/forms/Instance.py
diff -c gnue/designer/src/forms/Instance.py:1.13 
gnue/designer/src/forms/Instance.py:1.14
*** gnue/designer/src/forms/Instance.py:1.13    Mon Oct 28 19:11:49 2002
--- gnue/designer/src/forms/Instance.py Thu Oct 31 21:40:53 2002
***************
*** 45,52 ****
  from gnue.designer.PopupMenu import ObjectMenu
  
  from gnue.forms import GFInstance
! from gnue.forms import GFForm, GFParser, GFObjects, GFTrigger, GFLibrary
! 
  
  class Instance(BaseInstance, GFInstance.GFInstance):
  
--- 45,52 ----
  from gnue.designer.PopupMenu import ObjectMenu
  
  from gnue.forms import GFInstance
! from gnue.forms import GFForm, GFParser, GFObjects, GFLibrary
! from gnue.common import GTrigger
  
  class Instance(BaseInstance, GFInstance.GFInstance):
  
***************
*** 144,150 ****
          (isinstance(child, GFLibrary.GFImportItem) and
           child._type == 'GFimport-datasource'):
          datasources.append(child)
!       elif isinstance(child, GFTrigger.GFTrigger) or \
          (isinstance(child, GFLibrary.GFImportItem) and
           child._type == 'GFimport-trigger'):
          triggers.append(child)
--- 144,150 ----
          (isinstance(child, GFLibrary.GFImportItem) and
           child._type == 'GFimport-datasource'):
          datasources.append(child)
!       elif isinstance(child, GTrigger.GTrigger) or \
          (isinstance(child, GFLibrary.GFImportItem) and
           child._type == 'GFimport-trigger'):
          triggers.append(child)
Index: gnue/designer/src/forms/TreeView.py
diff -c gnue/designer/src/forms/TreeView.py:1.2 
gnue/designer/src/forms/TreeView.py:1.3
*** gnue/designer/src/forms/TreeView.py:1.2     Wed Jul  3 12:31:21 2002
--- gnue/designer/src/forms/TreeView.py Thu Oct 31 21:40:53 2002
***************
*** 29,36 ****
  
  import sys, os
  from wxPython.wx import *
! from gnue.common import GDebug
! from gnue.forms import GFForm, GFObjects, GFTrigger, GFLibrary
  from gnue.designer.PopupMenu import ObjectMenu
  from gnue.designer.Icons import treeIconMap, treeIconList
  from gnue.designer.TreeView import TreeView as BaseTreeView
--- 29,36 ----
  
  import sys, os
  from wxPython.wx import *
! from gnue.common import GDebug, GTrigger
! from gnue.forms import GFForm, GFObjects, GFLibrary
  from gnue.designer.PopupMenu import ObjectMenu
  from gnue.designer.Icons import treeIconMap, treeIconList
  from gnue.designer.TreeView import TreeView as BaseTreeView
***************
*** 75,85 ****
          icon = 'properties'
        else:
          parentTreeItem = object._parent._treeItem
!         if isinstance(object, GFTrigger.GFTrigger) and \
             object.type == 'NAMED':
            parentTreeItem = self.rootObject._treeItemNamedTriggers
            icon = 'trigger'
!         elif isinstance(object, GFTrigger.GFTrigger):
  
            if not hasattr(object._parent,'_treeItemTrigger'):
              object._parent._treeItemTrigger = \
--- 75,85 ----
          icon = 'properties'
        else:
          parentTreeItem = object._parent._treeItem
!         if isinstance(object, GTrigger.GTrigger) and \
             object.type == 'NAMED':
            parentTreeItem = self.rootObject._treeItemNamedTriggers
            icon = 'trigger'
!         elif isinstance(object, GTrigger.GTrigger):
  
            if not hasattr(object._parent,'_treeItemTrigger'):
              object._parent._treeItemTrigger = \
Index: gnue/forms/src/GFForm.py
diff -c gnue/forms/src/GFForm.py:1.191 gnue/forms/src/GFForm.py:1.192
*** gnue/forms/src/GFForm.py:1.191      Wed Oct 30 00:14:09 2002
--- gnue/forms/src/GFForm.py    Thu Oct 31 21:40:53 2002
***************
*** 32,38 ****
  import string
  import traceback
  
! from gnue.common import GDebug, GConnections
  from gnue.common import events
  from gnue.common.FileUtils import openResource
  from GFObjects import *
--- 32,38 ----
  import string
  import traceback
  
! from gnue.common import GDebug, GConnections, GTrigger
  from gnue.common import events
  from gnue.common.FileUtils import openResource
  from GFObjects import *
***************
*** 43,49 ****
  from GFLibrary import *
  import GFLibrary
  import GFParser
! import GFTrigger
  
  # Defines which objects are "Tab Stops"
  TabStops = ('GFEntry','GFButton')
--- 43,49 ----
  from GFLibrary import *
  import GFLibrary
  import GFParser
! #import GFTrigger
  
  # Defines which objects are "Tab Stops"
  TabStops = ('GFEntry','GFButton')
***************
*** 85,90 ****
--- 85,93 ----
      #
      # New trigger support
      #
+     self._validTriggers = { 'ON-STARTUP':     'On-Startup',
+                             'ON-EXIT':        'On-Exit' }
+ 
      self._triggerGlobal = 1
      self._triggerFunctions = {'setFocus':{'function':self.triggerSetFocus,
                                            'global': 1,
***************
*** 353,359 ****
  
        if importAllTriggers or len(importTriggers):
          for child in form._children:
!           if isinstance(child, GFTrigger.GFTrigger) and \
               (importAllTriggers or child.name in importTriggers):
              child._parent = object
              child._IMPORTED = 1
--- 356,362 ----
  
        if importAllTriggers or len(importTriggers):
          for child in form._children:
!           if isinstance(child, GTrigger.GTrigger) and \
               (importAllTriggers or child.name in importTriggers):
              child._parent = object
              child._IMPORTED = 1
Index: gnue/forms/src/GFObjects/GFBlock.py
diff -c gnue/forms/src/GFObjects/GFBlock.py:1.55 
gnue/forms/src/GFObjects/GFBlock.py:1.56
*** gnue/forms/src/GFObjects/GFBlock.py:1.55    Sun Oct 27 15:59:39 2002
--- gnue/forms/src/GFObjects/GFBlock.py Thu Oct 31 21:40:53 2002
***************
*** 71,76 ****
--- 71,85 ----
      #
      # Trigger exposure
      #
+     self._validTriggers = {
+                   'ON-SWITCH':      'On-Switch',
+                   'ON-NEWRECORD':   'On-NewRecord', 
+                   'PRE-FOCUSOUT':   'Pre-FocusOut',
+                   'POST-FOCUSOUT':  'Post-FocusOut',
+                   'PRE-FOCUSIN':    'Pre-FocusIn',
+                   'POST-FOCUSIN':   'Post-FocusIn',}
+ 
+ 
      self._triggerGlobal = 1
      self._triggerFunctions={'clear':{'function':self.processClear},
                              'gotoRecord':{'function':self.jumpRecord},
Index: gnue/forms/src/GFObjects/GFEntry.py
diff -c gnue/forms/src/GFObjects/GFEntry.py:1.73 
gnue/forms/src/GFObjects/GFEntry.py:1.74
*** gnue/forms/src/GFObjects/GFEntry.py:1.73    Sun Oct 27 15:59:39 2002
--- gnue/forms/src/GFObjects/GFEntry.py Thu Oct 31 21:40:53 2002
***************
*** 67,72 ****
--- 67,81 ----
      #
      # Trigger exposure
      #
+     self._validTriggers ={ 'PRE-FOCUSOUT':   'Pre-FocusOut',
+                            'POST-FOCUSOUT':  'Post-FocusOut',
+                            'PRE-FOCUSIN':    'Pre-FocusIn',
+                            'POST-FOCUSIN':   'Post-FocusIn',
+                            'ON-SWITCH':      'On-Switch',
+                            'PRE-CHANGE':     'Pre-Change',
+                            'POST-CHANGE':    'Post-Change',
+                          }
+ 
      self._triggerFunctions={'allowedValues':{'function':self.allowedValues,},
                              
'autofillBySequence':{'function':self.triggerAutofillBySequence},
                              'isEmpty':{'function':self.isEmpty},
Index: gnue/forms/src/GFObjects/GFObj.py
diff -c gnue/forms/src/GFObjects/GFObj.py:1.11 
gnue/forms/src/GFObjects/GFObj.py:1.12
*** gnue/forms/src/GFObjects/GFObj.py:1.11      Wed Oct 23 23:00:25 2002
--- gnue/forms/src/GFObjects/GFObj.py   Thu Oct 31 21:40:53 2002
***************
*** 32,38 ****
  
  from gnue.common.GObjects import GObj
  from gnue.common.GTrigger import GTriggerExtension
- from gnue.forms.GFTrigger import VALIDTRIGGERS
  
  #
  # Class GFObj
--- 32,37 ----
***************
*** 41,47 ****
  #
  class GFObj(GObj, GTriggerExtension):
    def __init__(self, parent=None, type='GFObj'):
!     GTriggerExtension.__init__(self,VALIDTRIGGERS)
      GObj.__init__(self, parent, type)
      self.hidden = 0
      self.readonly = 0
--- 40,46 ----
  #
  class GFObj(GObj, GTriggerExtension):
    def __init__(self, parent=None, type='GFObj'):
!     GTriggerExtension.__init__(self)
      GObj.__init__(self, parent, type)
      self.hidden = 0
      self.readonly = 0
Index: gnue/forms/src/GFObjects/GFPage.py
diff -c gnue/forms/src/GFObjects/GFPage.py:1.4 
gnue/forms/src/GFObjects/GFPage.py:1.5
*** gnue/forms/src/GFObjects/GFPage.py:1.4      Tue Sep 17 20:27:50 2002
--- gnue/forms/src/GFObjects/GFPage.py  Thu Oct 31 21:40:53 2002
***************
*** 38,43 ****
--- 38,50 ----
      GFObj.__init__(self, parent,"GFPage")
      self._inits = [self.initialize]
  
+     self._validTriggers = { 'PRE-FOCUSOUT':   'Pre-FocusOut',
+                   'POST-FOCUSOUT':  'Post-FocusOut',
+                   'PRE-FOCUSIN':    'Pre-FocusIn',
+                   'POST-FOCUSIN':   'Post-FocusIn',
+                   }
+ 
+ 
    def initialize(self):
      form = self.findParentOfType('GFForm')
      form._pageList.append(self)
Index: gnue/forms/src/GFParser.py
diff -c gnue/forms/src/GFParser.py:1.73 gnue/forms/src/GFParser.py:1.74
*** gnue/forms/src/GFParser.py:1.73     Sun Oct 27 21:10:26 2002
--- gnue/forms/src/GFParser.py  Thu Oct 31 21:40:53 2002
***************
*** 30,36 ****
  from gnue.common import GDataSource, GParser, GMenu
  
  import copy, types
! from gnue.common import GTypecast
  
  
  
--- 30,36 ----
  from gnue.common import GDataSource, GParser, GMenu
  
  import copy, types
! from gnue.common import GTypecast, GTrigger
  
  
  
***************
*** 70,76 ****
    global xmlElements
  
    if xmlElements == None:
!     from gnue.forms import GFObjects, GFLibrary, GFTrigger, GFForm
  
      xmlElements = {
        'form': {
--- 70,76 ----
    global xmlElements
  
    if xmlElements == None:
!     from gnue.forms import GFObjects, GFLibrary, GFForm
  
      xmlElements = {
        'form': {
***************
*** 399,405 ****
           'ParentTags': ('page','block','box') },
  
        'trigger': {
!          'BaseClass': GFTrigger.GFTrigger,
           'Attributes': {
              'name': {
                 'Unique': 1,
--- 399,405 ----
           'ParentTags': ('page','block','box') },
  
        'trigger': {
!          'BaseClass': GTrigger.GTrigger,
           'Attributes': {
              'name': {
                 'Unique': 1,
Index: gnue/samples/testcases/trigger/trigger.gfd
diff -c gnue/samples/testcases/trigger/trigger.gfd:1.1 
gnue/samples/testcases/trigger/trigger.gfd:1.2
*** gnue/samples/testcases/trigger/trigger.gfd:1.1      Wed Sep 18 10:58:16 2002
--- gnue/samples/testcases/trigger/trigger.gfd  Thu Oct 31 21:40:53 2002
***************
*** 22,28 ****
        <label x="1" y="3" name="Label_2" text="Field Two"/>
        <entry x="1" y="4" name="two" width="48">
          <trigger name="Trigger_A" type="PRE-FOCUSOUT">
!            setFocus(block2.alter)
          </trigger>
        </entry>
        <label x="1" y="5" name="Label_1a" text="Field Three"/>
--- 22,28 ----
        <label x="1" y="3" name="Label_2" text="Field Two"/>
        <entry x="1" y="4" name="two" width="48">
          <trigger name="Trigger_A" type="PRE-FOCUSOUT">
!            #setFocus(block2.alter)
          </trigger>
        </entry>
        <label x="1" y="5" name="Label_1a" text="Field Three"/>




reply via email to

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