commit-gnue
[Top][All Lists]
Advanced

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

gnue/forms doc/Developers-Guide.sxw src/GFForm....


From: James Thompson
Subject: gnue/forms doc/Developers-Guide.sxw src/GFForm....
Date: Sat, 15 Mar 2003 20:53:18 -0500

CVSROOT:        /cvsroot/gnue
Module name:    gnue
Changes by:     James Thompson <address@hidden> 03/03/15 20:53:17

Modified files:
        forms/doc      : Developers-Guide.sxw 
        forms/src      : GFForm.py GFInstance.py GFParser.py 
        forms/src/GFObjects: GFField.py __init__.py 
        forms/src/uidrivers/_base: UIdriver.py 
        forms/src/uidrivers/wx/widgets: _base.py 
Added files:
        forms/src/GFObjects: GFImage.py 

Log message:
        execute query now blocked if not in query mode
        toolbar reflects valid query options
        some refresh events are commented out (cleanup)
        start of <image> suppport (not functional at this time)

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/doc/Developers-Guide.sxw.diff?tr1=1.28&tr2=1.29&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFForm.py.diff?tr1=1.235&tr2=1.236&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFInstance.py.diff?tr1=1.100&tr2=1.101&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFParser.py.diff?tr1=1.104&tr2=1.105&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFObjects/GFImage.py?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFObjects/GFField.py.diff?tr1=1.86&tr2=1.87&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFObjects/__init__.py.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/_base/UIdriver.py.diff?tr1=1.96&tr2=1.97&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/wx/widgets/_base.py.diff?tr1=1.7&tr2=1.8&r1=text&r2=text

Patches:
Index: gnue/forms/doc/Developers-Guide.sxw
Index: gnue/forms/src/GFForm.py
diff -c gnue/forms/src/GFForm.py:1.235 gnue/forms/src/GFForm.py:1.236
*** gnue/forms/src/GFForm.py:1.235      Sun Mar  9 23:13:51 2003
--- gnue/forms/src/GFForm.py    Sat Mar 15 20:53:17 2003
***************
*** 412,422 ****
      
      return message
  
-   def updateUIEntry(self,field):
-     for entry in field._entryList:
-       self.dispatchEvent('updateENTRY',entry, _form=self)
-       #self._instance.dispatchEvent('updateENTRY',entry, _form=self)
- 
      
    def cancelQuery(self):
      self.dispatchEvent('endENTERQUERY', _form=self)
--- 412,417 ----
***************
*** 441,446 ****
--- 436,444 ----
      
  
    def executeQuery(self):
+     if self._currentBlock.mode != 'query':
+       return _("Form not in query mode")
+ 
      self.dispatchEvent('endENTERQUERY', _form=self);
      self.dispatchEvent('beginWAIT',None, _form=self);
      #self._instance.dispatchEvent('endENTERQUERY', _form=self);
***************
*** 455,463 ****
        message = _("Database query error:\n%s\n%s ") % (sys.exc_info()[0], 
sys.exc_info()[1])
  
  
- 
      self.dispatchEvent('endWAIT', _form=self)
      #self._instance.dispatchEvent('endWAIT', _form=self)
      self.refreshDisplay(self._currentBlock)
  
  
--- 453,461 ----
        message = _("Database query error:\n%s\n%s ") % (sys.exc_info()[0], 
sys.exc_info()[1])
  
  
      self.dispatchEvent('endWAIT', _form=self)
      #self._instance.dispatchEvent('endWAIT', _form=self)
+     # TODO: may need to make self._currentBlock just self
      self.refreshDisplay(self._currentBlock)
  
  
***************
*** 538,553 ****
    def fireTrigger(self, triggerName):
      self._triggerDictionary[triggerName](self)
  
- #
- # Updated methods for the new gnue-forms code
- #
  
    def updateUIEntry(self,field):
      for entry in field._entryList:
!       #self._instance.dispatchEvent('updateENTRY',entry, _form=self);
!       self.dispatchEvent('updateENTRY',entry, _form=self);
!       
! 
  
    #
    # nextEntry
--- 536,549 ----
    def fireTrigger(self, triggerName):
      self._triggerDictionary[triggerName](self)
  
  
+   #
+   # 
+   #
    def updateUIEntry(self,field):
      for entry in field._entryList:
!       self._instance.dispatchEvent('updateENTRY',entry, _form=self);
!     
  
    #
    # nextEntry
***************
*** 665,670 ****
--- 661,667 ----
      if not block: return
      if block.mode == 'query': 
        dispatchEvent('canCANCELQUERY')
+       dispatchEvent('canEXECQUERY')
        dispatchEvent('cannotENTERQUERY')
        dispatchEvent('cannotPREVRECORD')
        dispatchEvent('cannotFIRSTRECORD')
***************
*** 678,683 ****
--- 675,681 ----
      else: 
        dispatchEvent('canENTERQUERY')
        dispatchEvent('cannotCANCELQUERY')
+       dispatchEvent('cannotEXECQUERY')
  ##      dispatchEvent('canNEXTRECORD')
        
        # TODO: There should probably be some tests here....
Index: gnue/forms/src/GFInstance.py
diff -c gnue/forms/src/GFInstance.py:1.100 gnue/forms/src/GFInstance.py:1.101
*** gnue/forms/src/GFInstance.py:1.100  Mon Mar 10 17:40:13 2003
--- gnue/forms/src/GFInstance.py        Sat Mar 15 20:53:17 2003
***************
*** 101,108 ****
                             'fireTRIGGER'         : self.fireTrigger,
                             'buttonActivated'     : self.fireButton,
  
!                            # Dialog Support
!                            'requestDIALOG'        : self.activateDialog,
  
                             # "Entry" events (proxied)
                             'requestKEYPRESS'     : self.proxyEntryEvent,
--- 101,108 ----
                             'fireTRIGGER'         : self.fireTrigger,
                             'buttonActivated'     : self.fireButton,
  
! ##                            # Dialog Support
! ##                            'requestDIALOG'        : self.activateDialog,
  
                             # "Entry" events (proxied)
                             'requestKEYPRESS'     : self.proxyEntryEvent,
***************
*** 294,300 ****
  
      self.dispatchEvent('gotoENTRY',object=form._currentEntry,
                         _form=form)
!     self.dispatchEvent('updateENTRY',form._currentEntry)
      
      form.refreshDisplay(form)
      self.updateStatus(form)
--- 294,300 ----
  
      self.dispatchEvent('gotoENTRY',object=form._currentEntry,
                         _form=form)
!     #self.dispatchEvent('updateENTRY',form._currentEntry)
      
      form.refreshDisplay(form)
      self.updateStatus(form)
***************
*** 350,355 ****
--- 350,361 ----
          tip = form._currentEntry.getOption('tip')
      self.updateStatusBar(tip=tip, form=form)
  
+   #
+   # updateRecordStatus
+   #
+   # Determine the status of the current record 
+   # in the current block.
+   #
    def updateRecordStatus(self, form):
      if form._currentBlock._resultSet.current.isDeleted():
        status = 'deleted'
***************
*** 361,366 ****
--- 367,378 ----
        status = 'saved'
      self.updateStatusBar(recordStatus=status, form= form)
  
+   #
+   # updateStatus
+   #
+   # Calls all the various update status bar
+   # functions to ensure everything is refreshed
+   #
    def updateStatus(self, form):
      self.updateTip(form=form)
      self.updateInsertMode(form=form)
***************
*** 368,373 ****
--- 380,391 ----
      self.updateRecordStatus(form=form)
      self.updatePageCounter(form=form)
  
+   #
+   # updateStatusBar
+   # 
+   # generates the event to the UI that
+   # tells it to update it's status bar
+   #
    def updateStatusBar(self, tip=None, recordStatus=None, insertMode=None,
                        currentRecord=None,maxRecord=None, currentPage=None,
                        maxPage=None, form=None):
***************
*** 421,427 ****
        # Refresh entry display if appropriate
        if event.refreshDisplay:
          handler.generateRefreshEvent()
!         self.updateRecordStatus(event._form)
  
        # If the entry needs an error message displayed,
        # then the proxied event should set this to the
--- 439,446 ----
        # Refresh entry display if appropriate
        if event.refreshDisplay:
          handler.generateRefreshEvent()
!         # TODO: Don't think this is needed - jst 13-mar-2003
!         #self.updateRecordStatus(event._form)
  
        # If the entry needs an error message displayed,
        # then the proxied event should set this to the
***************
*** 744,755 ****
      event._form.rollback()
      self._entryUpdated(event._form)
  
!   #
!   # activateDialog
!   #
!   def activateDialog(self,event):
!     pass
!     #self.activateForm(event.dialogName)
          
  
    #
--- 763,774 ----
      event._form.rollback()
      self._entryUpdated(event._form)
  
! ##   #
! ##   # activateDialog
! ##   #
! ##   def activateDialog(self,event):
! ##     pass
! ##     #self.activateForm(event.dialogName)
          
  
    #
***************
*** 843,848 ****
--- 862,868 ----
      if message:
        self.displayMessageBox(message)
        
+     self.dispatchEvent('gotoENTRY',object=event._form._currentEntry, 
_form=event._form)
      event._form.refreshDisplay(event._form._currentBlock)
      self._entryUpdated(event._form)
  
Index: gnue/forms/src/GFObjects/GFField.py
diff -c gnue/forms/src/GFObjects/GFField.py:1.86 
gnue/forms/src/GFObjects/GFField.py:1.87
*** gnue/forms/src/GFObjects/GFField.py:1.86    Sun Mar  9 23:13:51 2003
--- gnue/forms/src/GFObjects/GFField.py Sat Mar 15 20:53:17 2003
***************
*** 261,268 ****
  ###      if self._block._resultSet.current.isPending(): 
  ###        self.dispatchEvent('canCOMMIT')
  ###        self.dispatchEvent('canROLLBACK')
!         
!     self._block._form.updateUIEntry(self)
  
    #
    # allowedValues
--- 261,270 ----
  ###      if self._block._resultSet.current.isPending(): 
  ###        self.dispatchEvent('canCOMMIT')
  ###        self.dispatchEvent('canROLLBACK')
! 
!     #TODO: jst 13-mar-2003
!     #self._block._form.updateUIEntry(self)
!     
  
    #
    # allowedValues
Index: gnue/forms/src/GFObjects/__init__.py
diff -c gnue/forms/src/GFObjects/__init__.py:1.8 
gnue/forms/src/GFObjects/__init__.py:1.9
*** gnue/forms/src/GFObjects/__init__.py:1.8    Wed Mar  5 21:06:03 2003
--- gnue/forms/src/GFObjects/__init__.py        Sat Mar 15 20:53:17 2003
***************
*** 10,15 ****
--- 10,16 ----
          "GFButton",
          "GFEntry",
          "GFField",
+         "GFImage",
          "GFObj",
          "GFPage",
          "GFLogic",
Index: gnue/forms/src/GFParser.py
diff -c gnue/forms/src/GFParser.py:1.104 gnue/forms/src/GFParser.py:1.105
*** gnue/forms/src/GFParser.py:1.104    Mon Feb 17 02:32:53 2003
--- gnue/forms/src/GFParser.py  Sat Mar 15 20:53:17 2003
***************
*** 262,268 ****
           'Positionable': 1,
           'ParentTags': ('page',),
           'Description': 'TODO' },
- 
        'field': {
           'BaseClass': GFObjects.GFField,
           'Importable':1,
--- 262,267 ----
***************
*** 532,537 ****
--- 531,564 ----
  ##               'Required': 1,
  ##               'Typecast': GTypecast.whole,
  ##               'Description': 'The text row starting position of the 
widget. Based upon the top row of the screen being 0.' } },
+          'Positionable': 1,
+          'ParentTags': ('page',),
+          'Description': 'TODO' },
+       'image': {
+          'BaseClass': GFObjects.GFImage,
+          'Attributes': {
+             'name': {
+                'Unique': 1,
+                'Typecast': GTypecast.name,
+                'Description': 'TODO' },
+             'field': {
+                'Typecast': GTypecast.name,
+                'Required': 1,
+                'Description': 'The name of the field that this ties to.' },
+             'block': {
+                'Typecast': GTypecast.name,
+                'Required': 1,
+                'Description': 'The name of the block that this ties to.' },
+             'type':        {
+                'Typecast': GTypecast.name,
+                'ValueSet': {
+                   'URL': {},
+                   'BINARY': {} },
+                'Default': "URL",
+                'Description': 'TODO' },
+             'focusorder': {
+                'Typecast': GTypecast.whole,
+                'Description': 'TODO'  } },
           'Positionable': 1,
           'ParentTags': ('page',),
           'Description': 'TODO' },
Index: gnue/forms/src/uidrivers/_base/UIdriver.py
diff -c gnue/forms/src/uidrivers/_base/UIdriver.py:1.96 
gnue/forms/src/uidrivers/_base/UIdriver.py:1.97
*** gnue/forms/src/uidrivers/_base/UIdriver.py:1.96     Thu Mar 13 20:31:45 2003
--- gnue/forms/src/uidrivers/_base/UIdriver.py  Sat Mar 15 20:53:17 2003
***************
*** 154,160 ****
        else:
          parent = object.getParent()
  
-       print "                          creating %s with parent %s", 
(object,parent)
        # fine the ui widget that corrosponds with that parent
        uiParent = self
        if parent:
--- 154,159 ----
***************
*** 324,329 ****
--- 323,332 ----
  
    #
    # updateEntryEditor
+   #
+   # updates the displayed value and
+   # sets the cursor position for a
+   # specific GFObj
    #
    def updateEntryEditor(self, event):
      index = event.object._visibleIndex
Index: gnue/forms/src/uidrivers/wx/widgets/_base.py
diff -c gnue/forms/src/uidrivers/wx/widgets/_base.py:1.7 
gnue/forms/src/uidrivers/wx/widgets/_base.py:1.8
*** gnue/forms/src/uidrivers/wx/widgets/_base.py:1.7    Sat Mar  8 23:08:51 2003
--- gnue/forms/src/uidrivers/wx/widgets/_base.py        Sat Mar 15 20:53:17 2003
***************
*** 127,141 ****
      widget.SetValue(value)
      widget.Enable(enabled)
      widget.SetEvtHandlerEnabled(TRUE)
-     if object.height > 1:
-       print "OBJ", object.name, object.height, widget.__origBackgroundColor
      if enabled:
-       if object.height > 1:
-         print "enabled"
        widget.SetBackgroundColour(widget.__origBackgroundColor)
      else:
-       if object.height > 1:
-         print 
"disabled",self._uiDriver._disabledColour,widget.__origBackgroundColor
        widget.SetBackgroundColour(self._uiDriver._disabledColour)
      widget.Refresh()
  
--- 127,135 ----




reply via email to

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