[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnue/forms/src GFDisplayHandler.py GFForm.py GF...
From: |
James Thompson |
Subject: |
gnue/forms/src GFDisplayHandler.py GFForm.py GF... |
Date: |
Mon, 24 Mar 2003 21:05:08 -0500 |
CVSROOT: /cvsroot/gnue
Module name: gnue
Changes by: James Thompson <address@hidden> 03/03/24 21:05:08
Modified files:
forms/src : GFDisplayHandler.py GFForm.py GFInstance.py
forms/src/GFObjects: GFBlock.py GFField.py
forms/src/uidrivers/_base: UIdriver.py
Log message:
UI refresh work
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFDisplayHandler.py.diff?tr1=1.49&tr2=1.50&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFForm.py.diff?tr1=1.237&tr2=1.238&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFInstance.py.diff?tr1=1.102&tr2=1.103&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFObjects/GFBlock.py.diff?tr1=1.78&tr2=1.79&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFObjects/GFField.py.diff?tr1=1.87&tr2=1.88&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/_base/UIdriver.py.diff?tr1=1.97&tr2=1.98&r1=text&r2=text
Patches:
Index: gnue/forms/src/GFDisplayHandler.py
diff -c gnue/forms/src/GFDisplayHandler.py:1.49
gnue/forms/src/GFDisplayHandler.py:1.50
*** gnue/forms/src/GFDisplayHandler.py:1.49 Mon Mar 24 06:50:10 2003
--- gnue/forms/src/GFDisplayHandler.py Mon Mar 24 21:05:08 2003
***************
*** 32,38 ****
from gnue.common.apps import GDebug
from gnue.common import events
! import Image
try:
from mx.DateTime import DateTime
--- 32,38 ----
from gnue.common.apps import GDebug
from gnue.common import events
! #import Image
try:
from mx.DateTime import DateTime
Index: gnue/forms/src/GFForm.py
diff -c gnue/forms/src/GFForm.py:1.237 gnue/forms/src/GFForm.py:1.238
*** gnue/forms/src/GFForm.py:1.237 Sun Mar 23 22:39:18 2003
--- gnue/forms/src/GFForm.py Mon Mar 24 21:05:08 2003
***************
*** 92,98 ****
#
self._triggerns={}
self._triggerGlobal = 1 # Put this object into the global namespace by
it's name
-
self._validTriggers = { 'ON-STARTUP': 'On-Startup',
'ON-ACTIVATION': 'On-Activation',
--- 92,97 ----
***************
*** 174,180 ****
self.initTriggerSystem()
self._triggerns.update(self._triggerNamespaceTree._globalNamespace)
-
## TODO: This ain't right! Fix after 0.5.0
#self._triggerns['runForm'] = self.triggerRunForm
## TODO
--- 173,178 ----
***************
*** 217,223 ****
param = string.lower(parameter)
self._parameters[param]=value
-
#
#
# Focus functions
--- 215,220 ----
***************
*** 542,548 ****
#
def updateUIEntry(self,field):
for entry in field._entryList:
! self._instance.dispatchEvent('updateENTRY',entry, _form=self);
#
--- 539,546 ----
#
def updateUIEntry(self,field):
for entry in field._entryList:
! self.dispatchEvent('updateENTRY',entry, _form=self)
! #self._instance.dispatchEvent('updateENTRY',entry, _form=self)
#
***************
*** 652,664 ****
block.walk(self.__refreshDisplay)
self.refreshUIEvents()
!
# Signal the UI Drivers of navigation button relevance
! def refreshUIEvents(self):
!
block = self._currentBlock
- dispatchEvent = self.dispatchEvent
if not block: return
if block.mode == 'query':
dispatchEvent('canCANCELQUERY')
dispatchEvent('canEXECQUERY')
--- 650,667 ----
block.walk(self.__refreshDisplay)
self.refreshUIEvents()
! def __refreshDisplay(self, object):
! if object._type == 'GFEntry' or object._type == "GFImage":
! self.dispatchEvent('updateENTRY',object, _form=self)
!
! #
# Signal the UI Drivers of navigation button relevance
! #
! def refreshUIEvents(self):
block = self._currentBlock
if not block: return
+
+ dispatchEvent = self.dispatchEvent
if block.mode == 'query':
dispatchEvent('canCANCELQUERY')
dispatchEvent('canEXECQUERY')
***************
*** 708,720 ****
dispatchEvent('canLASTRECORD')
dispatchEvent('canNEWRECORD')
-
- def __refreshDisplay(self, object):
- if object._type == 'GFEntry' or object._type == "GFImage":
- self.dispatchEvent('updateENTRY',object, _form=self)
-
-
-
#
# nextBlock
#
--- 711,716 ----
Index: gnue/forms/src/GFInstance.py
diff -c gnue/forms/src/GFInstance.py:1.102 gnue/forms/src/GFInstance.py:1.103
*** gnue/forms/src/GFInstance.py:1.102 Sun Mar 23 22:39:18 2003
--- gnue/forms/src/GFInstance.py Mon Mar 24 21:05:08 2003
***************
*** 294,300 ****
self.dispatchEvent('gotoENTRY',object=form._currentEntry,
_form=form)
- #self.dispatchEvent('updateENTRY',form._currentEntry)
form.refreshDisplay(form)
self.updateStatus(form)
--- 294,299 ----
Index: gnue/forms/src/GFObjects/GFBlock.py
diff -c gnue/forms/src/GFObjects/GFBlock.py:1.78
gnue/forms/src/GFObjects/GFBlock.py:1.79
*** gnue/forms/src/GFObjects/GFBlock.py:1.78 Sun Mar 9 18:02:23 2003
--- gnue/forms/src/GFObjects/GFBlock.py Mon Mar 24 21:05:08 2003
***************
*** 339,353 ****
self._form.changeFocus(self)
self._form.commit()
-
def jumpRecord(self, recordNumber):
# If recordNumber is negative, move relative to last record
if recordNumber < 0:
recordNumber += self._resultSet.getRecordCount()
if recordNumber < 0:
raise "Invalid record number"
!
!
if recordNumber != self._resultSet.getRecordNumber():
# Focus out
self.processTrigger('PRE-FOCUSOUT')
--- 339,351 ----
self._form.changeFocus(self)
self._form.commit()
def jumpRecord(self, recordNumber):
# If recordNumber is negative, move relative to last record
if recordNumber < 0:
recordNumber += self._resultSet.getRecordCount()
if recordNumber < 0:
raise "Invalid record number"
!
if recordNumber != self._resultSet.getRecordNumber():
# Focus out
self.processTrigger('PRE-FOCUSOUT')
***************
*** 380,385 ****
--- 378,390 ----
self._recordCount = self._resultSet.getRecordCount()
+ # Make sure the block is aware of the current
+ # position in the records. If this is removed
+ # ui corruption can occur in zipcode.gfd if
+ # you commit while in or after a record that
+ # is to be deleted.
+ self.jumpRecord(self._precommitRecord)
+
# If all our records were deleted, create an empty record
if not self._recordCount:
self.newRecord()
***************
*** 507,513 ****
for field in block._fieldList:
field.processTrigger('POST-QUERY')
!
def _generateConditional(block):
conditionLike = {}
conditionEq = {}
--- 512,523 ----
for field in block._fieldList:
field.processTrigger('POST-QUERY')
! #
! # _generateConditional
! #
! # Creates a GCondtional tree based upon the values currently
! # stored in the form.
! #
def _generateConditional(block):
conditionLike = {}
conditionEq = {}
Index: gnue/forms/src/GFObjects/GFField.py
diff -c gnue/forms/src/GFObjects/GFField.py:1.87
gnue/forms/src/GFObjects/GFField.py:1.88
*** gnue/forms/src/GFObjects/GFField.py:1.87 Sat Mar 15 20:53:17 2003
--- gnue/forms/src/GFObjects/GFField.py Mon Mar 24 21:05:08 2003
***************
*** 262,269 ****
### self.dispatchEvent('canCOMMIT')
### self.dispatchEvent('canROLLBACK')
! #TODO: jst 13-mar-2003
! #self._block._form.updateUIEntry(self)
#
--- 262,270 ----
### self.dispatchEvent('canCOMMIT')
### self.dispatchEvent('canROLLBACK')
! # If the field value has changed do to a trigger
! # then update the UI
! self._block._form.updateUIEntry(self)
#
Index: gnue/forms/src/uidrivers/_base/UIdriver.py
diff -c gnue/forms/src/uidrivers/_base/UIdriver.py:1.97
gnue/forms/src/uidrivers/_base/UIdriver.py:1.98
*** gnue/forms/src/uidrivers/_base/UIdriver.py:1.97 Sat Mar 15 20:53:17 2003
--- gnue/forms/src/uidrivers/_base/UIdriver.py Mon Mar 24 21:05:08 2003
***************
*** 229,239 ****
self._gfObjToUIWidget[form].phaseInit()
- #for key in self._gfObjToUIWidget.keys():
- # if key._type == 'GFForm' and key == form:
- # print "UIdriver initializing" ,self._gfObjToUIWidget[key]
- # self._gfObjToUIWidget[key].phaseInit()
-
self._formNameToUIForm[formName]._gfObjToToolkitWidgets =
self._gfObjToToolkitWidgets
self._formNameToUIForm[formName]._gfObjToUIWidget = self._gfObjToUIWidget
self._formNameToUIForm[formName]._form = form
--- 229,234 ----
***************
*** 265,278 ****
def switchFocus(self, event):
object = event.object
if object: # Some pages might not have any widgets that can be active
! index = object._visibleIndex
! self._gfObjToUIWidget[object].indexedFocus(index)
self.dispatchEvent('beginEDITMODE', object, _form=object._form)
#
# updateEntry
#
def updateEntry(self,event):
if event.data.hidden or event.data._type == 'GFButton':
return
--- 260,275 ----
def switchFocus(self, event):
object = event.object
if object: # Some pages might not have any widgets that can be active
! self._gfObjToUIWidget[object].indexedFocus(object._visibleIndex)
self.dispatchEvent('beginEDITMODE', object, _form=object._form)
#
# updateEntry
#
+ # Updates all visible toolkit widgets
+ # tied to a specific GFObject
+ #
def updateEntry(self,event):
if event.data.hidden or event.data._type == 'GFButton':
return
***************
*** 290,295 ****
--- 287,293 ----
for count in range(index):
value =
handler.getDisplayFiller(block._resultSet.getRecord(currentRecord- \
(index-count)).getField(field.field))
+
self._gfObjToUIWidget[entry].setValue(value,count)
# Fill current spot
***************
*** 310,315 ****
--- 308,314 ----
rec = block._resultSet.getRecord(cr)
if rec == None:
+ # Blank the displayed widget
value = handler.getDisplayFiller(None)
# Don't ask... but it's needed
lastRow -= 1
***************
*** 324,332 ****
#
# updateEntryEditor
#
! # updates the displayed value and
! # sets the cursor position for a
! # specific GFObj
#
def updateEntryEditor(self, event):
index = event.object._visibleIndex
--- 323,330 ----
#
# updateEntryEditor
#
! # updates the displayed value and sets
! # the cursor position for a specific GFObject
#
def updateEntryEditor(self, event):
index = event.object._visibleIndex
***************
*** 392,399 ****
#
def _updateCreateEvent(self, event):
return event
-
-
#############################################################################
--- 390,395 ----