[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnue forms/src/GFForm.py forms/src/GFInstance.p...
From: |
Jason Cater |
Subject: |
gnue forms/src/GFForm.py forms/src/GFInstance.p... |
Date: |
Mon, 07 Jan 2002 18:55:24 -0500 |
CVSROOT: /cvsroot/gnue
Module name: gnue
Changes by: Jason Cater <address@hidden> 02/01/07 18:55:24
Modified files:
forms/src : GFForm.py GFInstance.py UIbase.py
forms/src/GFObjects: GFEntry.py
common/src/FormatMasks: BaseMask.py DateMask.py
Log message:
more work on input masks
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFForm.py.diff?tr1=1.137&tr2=1.138&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFInstance.py.diff?tr1=1.24&tr2=1.25&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/UIbase.py.diff?tr1=1.48&tr2=1.49&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFObjects/GFEntry.py.diff?tr1=1.30&tr2=1.31&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/src/FormatMasks/BaseMask.py.diff?tr1=1.11&tr2=1.12&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/src/FormatMasks/DateMask.py.diff?tr1=1.17&tr2=1.18&r1=text&r2=text
Patches:
Index: gnue/common/src/FormatMasks/BaseMask.py
diff -c gnue/common/src/FormatMasks/BaseMask.py:1.11
gnue/common/src/FormatMasks/BaseMask.py:1.12
*** gnue/common/src/FormatMasks/BaseMask.py:1.11 Fri Jan 4 00:56:46 2002
--- gnue/common/src/FormatMasks/BaseMask.py Mon Jan 7 18:55:24 2002
***************
*** 141,151 ****
def isValid(self):
return 1
! def addText(self, text, pos, replaces=0):
! pass
def deleteText(self, text, pos, characters):
pass
#
--- 141,170 ----
def isValid(self):
return 1
! # Returns (value, formatted text, cursor)
! def addText(self, value, text, pos, replaces=0, padding="_"):
! shift = 0
! cursor = self.cursor
! for size in self.inputDisplayLen:
! shift -= size
!
!
! value = self.processEdit(value, text, pos, replaces)
! formatted = self.getFormattedInput(value,padding=padding)
!
! for size in self.inputDisplayLen:
! shift += size
!
! self.cursor = cursor + shift
+ return (value, formatted, self.cursor)
+
+
+
+ # Returns (value, formatted text, cursor)
def deleteText(self, text, pos, characters):
pass
+
#
Index: gnue/common/src/FormatMasks/DateMask.py
diff -c gnue/common/src/FormatMasks/DateMask.py:1.17
gnue/common/src/FormatMasks/DateMask.py:1.18
*** gnue/common/src/FormatMasks/DateMask.py:1.17 Mon Jan 7 03:22:39 2002
--- gnue/common/src/FormatMasks/DateMask.py Mon Jan 7 18:55:24 2002
***************
*** 46,54 ****
#
# Example:
#
! # m/d/y 01/01/2001
! # m/y 01/2001
! # h:i p 12:29 pm
#
#####################################################################
--- 46,54 ----
#
# Example:
#
! # m/d/y 01/23/01
! # m/Y 01/2001
! # h:i p 12:29 pm
#
#####################################################################
***************
*** 104,109 ****
--- 104,112 ----
def getFormattedOutput(self, value, secondary=0):
+ if value in (None,''):
+ return ""
+
rv = ""
val = self._buildDate(value, 1)
if secondary:
Index: gnue/forms/src/GFForm.py
diff -c gnue/forms/src/GFForm.py:1.137 gnue/forms/src/GFForm.py:1.138
*** gnue/forms/src/GFForm.py:1.137 Fri Jan 4 00:56:46 2002
--- gnue/forms/src/GFForm.py Mon Jan 7 18:55:23 2002
***************
*** 180,185 ****
--- 180,187 ----
not object.readonly and \
not object.hidden:
self._currentEntry = object
+ self._app.dispatchEvent(GFEvent('updateENTRY', self._currentEntry))
+
def initImportedObjects(self, object):
if isinstance(object, GFLibrary.GFImport):
***************
*** 417,423 ****
self._currentEntry = widget
self._currentBlock = self._currentEntry._block
! self.dispatchEvent(GFEvent('updateENTRY', oldEntry))
widget.processTrigger('Post-FocusIn')
except TriggerError, t:
--- 419,425 ----
self._currentEntry = widget
self._currentBlock = self._currentEntry._block
! self._app.dispatchEvent(GFEvent('updateENTRY', oldEntry))
widget.processTrigger('Post-FocusIn')
except TriggerError, t:
***************
*** 547,562 ****
# use mask handler's logic
! currentvalue = self._currentEntry._maskHandler.processEdit(
currentvalue,
value,
self._currentEntry._cursorPosition,
! not self._insertMode )
print "New value: %s" % currentvalue
! self._currentEntry._cursorPosition = \
! self._currentEntry._maskHandler.moveCursorRelative(1)
! # self._currentEntry._maskHandler.cursor
# Set the field's value, performing pre-/post-change triggers
--- 549,565 ----
# use mask handler's logic
! currentvalue, display, cursor = \
! self._currentEntry._maskHandler.addText(
currentvalue,
value,
self._currentEntry._cursorPosition,
! not self._insertMode,
! '_' )
!
print "New value: %s" % currentvalue
! self._currentEntry._cursorPosition = cursor
# Set the field's value, performing pre-/post-change triggers
***************
*** 640,645 ****
--- 643,649 ----
# focus change to the next data entry object
#
def nextEntry(self):
+ print "nextEntry()"
nextEntry = None
keepNext = 0
if not self._currentEntry.verifyValue():
***************
*** 666,678 ****
self._currentEntry.processTrigger('Pre-FocusOut')
nextEntry.processTrigger('Pre-FocusIn')
prevEntry = self._currentEntry
! if self._currentBlock.transparentBlock and nextEntry == firstEntry: #
Jump to the next block if block is tagged as transparent
self.nextBlock()
else:
self._currentEntry = nextEntry
prevEntry.processTrigger('Post-FocusOut')
! self.dispatchEvent(GFEvent('updateENTRY', prevEntry))
nextEntry.processTrigger('Post-FocusIn')
except TriggerError, t:
message = self.TriggerErrorFunc(t)
--- 670,684 ----
self._currentEntry.processTrigger('Pre-FocusOut')
nextEntry.processTrigger('Pre-FocusIn')
prevEntry = self._currentEntry
! if self._currentBlock.transparentBlock and nextEntry == firstEntry:
! # Jump to the next block if block is tagged as transparent
self.nextBlock()
else:
self._currentEntry = nextEntry
prevEntry.processTrigger('Post-FocusOut')
! self._app.dispatchEvent(GFEvent('updateENTRY', prevEntry))
! self._app.dispatchEvent(GFEvent('updateENTRY', self._currentEntry))
nextEntry.processTrigger('Post-FocusIn')
except TriggerError, t:
message = self.TriggerErrorFunc(t)
***************
*** 688,693 ****
--- 694,700 ----
def previousEntry(self):
# find last entry widget
nextEntry = None
+ lastEntry = self._currentEntry
if not self._currentEntry.verifyValue(): return
for object in self._currentEntry._parent._children:
if object.getObjectType() in TabStops and \
***************
*** 718,724 ****
self._currentEntry.processTrigger('Post-FocusOut')
self._currentEntry = nextEntry
! self.dispatchEvent(GFEvent('updateENTRY', prevEntry))
self._currentEntry.processTrigger('Post-FocusIn')
except TriggerError, t:
print "Got to the exception handler!"
--- 725,732 ----
self._currentEntry.processTrigger('Post-FocusOut')
self._currentEntry = nextEntry
! self._app.dispatchEvent(GFEvent('updateENTRY', lastEntry))
! self._app.dispatchEvent(GFEvent('updateENTRY', self._currentEntry))
self._currentEntry.processTrigger('Post-FocusIn')
except TriggerError, t:
print "Got to the exception handler!"
***************
*** 755,761 ****
# reset current entry
prevEntry = self._currentEntry
self._currentEntry = None
! self.dispatchEvent(GFEvent('updateENTRY', prevEntry))
self._currentBlock.walk(self.setFocus)
--- 763,769 ----
# reset current entry
prevEntry = self._currentEntry
self._currentEntry = None
! self._app.dispatchEvent(GFEvent('updateENTRY', prevEntry))
self._currentBlock.walk(self.setFocus)
***************
*** 791,797 ****
# reset current entry
prevEntry = self._currentEntry
self._currentEntry = None
! self.dispatchEvent(GFEvent('updateENTRY', prevEntry))
self._currentBlock.walk(self.setFocus)
--- 799,805 ----
# reset current entry
prevEntry = self._currentEntry
self._currentEntry = None
! self._app.dispatchEvent(GFEvent('updateENTRY', prevEntry))
self._currentBlock.walk(self.setFocus)
Index: gnue/forms/src/GFInstance.py
diff -c gnue/forms/src/GFInstance.py:1.24 gnue/forms/src/GFInstance.py:1.25
*** gnue/forms/src/GFInstance.py:1.24 Mon Nov 26 18:26:42 2001
--- gnue/forms/src/GFInstance.py Mon Jan 7 18:55:24 2002
***************
*** 345,351 ****
def updateRecordCounter(self):
self.dispatchEvent(GFEvent('uiUPDATESTATUS',[None,None,None,self._form._currentBlock._currentRecord+1,self._form._currentBlock._recordCount,None,None]))
!
def updatePageCounter(self):
maxPages = len(self._form._pageList)
for count in range(len(self._form._pageList)):
--- 345,351 ----
def updateRecordCounter(self):
self.dispatchEvent(GFEvent('uiUPDATESTATUS',[None,None,None,self._form._currentBlock._currentRecord+1,self._form._currentBlock._recordCount,None,None]))
!
def updatePageCounter(self):
maxPages = len(self._form._pageList)
for count in range(len(self._form._pageList)):
***************
*** 361,367 ****
tip = self._form._currentEntry.getOption('tip')
else:
tip = ''
!
self.dispatchEvent(GFEvent('uiUPDATESTATUS',[tip,None,None,None,None,None,None]))
def updateRecordStatus(self):
--- 361,367 ----
tip = self._form._currentEntry.getOption('tip')
else:
tip = ''
!
self.dispatchEvent(GFEvent('uiUPDATESTATUS',[tip,None,None,None,None,None,None]))
def updateRecordStatus(self):
***************
*** 370,388 ****
elif self._form._currentBlock._resultSet.current.isDeleted():
status = 'deleted'
elif self._form._currentBlock._resultSet.current.isPending():
! status = 'modified'
! else:
status = 'saved'
!
self.dispatchEvent(GFEvent('uiUPDATESTATUS',[None,status,None,None,None,None,None]))
!
def updateStatus(self):
self.updateTip()
self.updateInsertMode()
self.updateRecordCounter()
self.updateRecordStatus()
self.updatePageCounter()
!
#
# keyPress
#
--- 370,388 ----
elif self._form._currentBlock._resultSet.current.isDeleted():
status = 'deleted'
elif self._form._currentBlock._resultSet.current.isPending():
! status = 'modified'
! else:
status = 'saved'
!
self.dispatchEvent(GFEvent('uiUPDATESTATUS',[None,status,None,None,None,None,None]))
!
def updateStatus(self):
self.updateTip()
self.updateInsertMode()
self.updateRecordCounter()
self.updateRecordStatus()
self.updatePageCounter()
!
#
# keyPress
#
***************
*** 394,404 ****
if (self._form._currentEntry != None):
if not self._form._currentEntry.readonly or
self._form._currentBlock.mode=='query':
if self._form.keyPress(event.data):
!
self.dispatchEvent(GFEvent('updateENTRY',self._form._currentEntry));
self.updateRecordStatus()
else:
self.dispatchEvent(GFEvent('formALERT','Field is readonly'))
!
#
# removeCharacter
#
--- 394,404 ----
if (self._form._currentEntry != None):
if not self._form._currentEntry.readonly or
self._form._currentBlock.mode=='query':
if self._form.keyPress(event.data):
! self.dispatchEvent(GFEvent('updateENTRY',self._form._currentEntry));
self.updateRecordStatus()
else:
self.dispatchEvent(GFEvent('formALERT','Field is readonly'))
!
#
# removeCharacter
#
***************
*** 411,424 ****
action = 'backspace'
else:
action = 'delete'
!
if self._form.removeCharacter(action):
self.dispatchEvent(GFEvent('updateENTRY',self._form._currentEntry));
! self.updateRecordStatus()
self.updateRecordStatus()
else:
self.dispatchEvent(GFEvent('formALERT','Field is readonly'))
!
#
# changeFocus
#
--- 411,424 ----
action = 'backspace'
else:
action = 'delete'
!
if self._form.removeCharacter(action):
self.dispatchEvent(GFEvent('updateENTRY',self._form._currentEntry));
! self.updateRecordStatus()
self.updateRecordStatus()
else:
self.dispatchEvent(GFEvent('formALERT','Field is readonly'))
!
#
# changeFocus
#
***************
*** 506,511 ****
--- 506,512 ----
ui.activateForm(self._form)
self.dispatchEvent(GFEvent('gotoENTRY',{'object':self._form._currentEntry}))
+ self.dispatchEvent(GFEvent('updateENTRY',self._form._currentEntry))
self.updateStatus()
self._ui = ui
Index: gnue/forms/src/GFObjects/GFEntry.py
diff -c gnue/forms/src/GFObjects/GFEntry.py:1.30
gnue/forms/src/GFObjects/GFEntry.py:1.31
*** gnue/forms/src/GFObjects/GFEntry.py:1.30 Tue Jan 1 13:32:43 2002
--- gnue/forms/src/GFObjects/GFEntry.py Mon Jan 7 18:55:24 2002
***************
*** 201,207 ****
# TODO: How would format masks work w/styles other than default
! if not self._maskHandler or self.style != 'default' or v == "":
return str(v)
else:
if hasFocus:
--- 201,207 ----
# TODO: How would format masks work w/styles other than default
! if not self._maskHandler or self.style != 'default':
return str(v)
else:
if hasFocus:
Index: gnue/forms/src/UIbase.py
diff -c gnue/forms/src/UIbase.py:1.48 gnue/forms/src/UIbase.py:1.49
*** gnue/forms/src/UIbase.py:1.48 Fri Jan 4 00:56:46 2002
--- gnue/forms/src/UIbase.py Mon Jan 7 18:55:24 2002
***************
*** 31,37 ****
from GFForm import *
from GFEvent import *
! from gnue.common.GObjects import *
#
# GFUserInterfaceBase
--- 31,37 ----
from GFForm import *
from GFEvent import *
! from gnue.common.GObjects import *
#
# GFUserInterfaceBase
***************
*** 111,124 ****
self._form = form
# Create the UI from the GFForm passed in
self.buildUI()
!
#
# getLoginHandler
#
# Returns the login handler for this session
#
! def getLoginHandler(self):
return self._loginHandler
#
--- 111,124 ----
self._form = form
# Create the UI from the GFForm passed in
self.buildUI()
!
#
# getLoginHandler
#
# Returns the login handler for this session
#
! def getLoginHandler(self):
return self._loginHandler
#
***************
*** 149,158 ****
except KeyError:
pass
!
if self._currentObject[0]._children:
for child in self._currentObject[0]._children:
! if isinstance(child, GObj):
self._currentObject.insert(0,child)
self.buildUI()
self._currentObject.pop(0)
--- 149,158 ----
except KeyError:
pass
!
if self._currentObject[0]._children:
for child in self._currentObject[0]._children:
! if isinstance(child, GObj):
self._currentObject.insert(0,child)
self.buildUI()
self._currentObject.pop(0)
***************
*** 168,174 ****
# Handles incomming events and calls UI instance specific functions to
# execute the actions
#
!
#
# exitApplication
--- 168,174 ----
# Handles incomming events and calls UI instance specific functions to
# execute the actions
#
!
#
# exitApplication
***************
*** 224,230 ****
if formObject: # Some pages might not have any widgets that can be active
index = formObject._visibleIndex
self._formToUIWidget[formObject].indexedFocus(index)
!
#
# aboutBox
--- 224,230 ----
if formObject: # Some pages might not have any widgets that can be active
index = formObject._visibleIndex
self._formToUIWidget[formObject].indexedFocus(index)
!
#
# aboutBox
***************
*** 239,245 ****
author = event.data[3]
description = event.data[4]
!
#statement = "from %s import UIAbout" % self.getModule()
#exec statement
about = UI.UIAbout(self.mainWindow, programVersion, formName,
formVersion, author, description)
--- 239,245 ----
author = event.data[3]
description = event.data[4]
!
#statement = "from %s import UIAbout" % self.getModule()
#exec statement
about = UI.UIAbout(self.mainWindow, programVersion, formName,
formVersion, author, description)
***************
*** 270,275 ****
--- 270,276 ----
# updateEntry
#
def updateEntry(self,event):
+ print "updateEntry()"
if event.data.hidden:
return
***************
*** 362,377 ****
pass
! # Called whenever forms leaves a "wait" state
! def endWait (self, event):
pass
!
#############################################################################
#
# UIWidget class
#
! # A generic class that handles most the internals of widget management in
# gnue forms
#
--- 363,378 ----
pass
! # Called whenever forms leaves a "wait" state
! def endWait (self, event):
pass
!
#############################################################################
#
# UIWidget class
#
! # A generic class that handles most the internals of widget management in
# gnue forms
#
***************
*** 390,403 ****
else:
self.itemWidth = -1
self.itemHeight = -1
!
if not object.hidden:
for spacer in range(int(object._rows)):
newWidget = self.createWidget(object, container, textWidth,
textHeight, widgetWidth, widgetHeight, interface, spacer, initialize)
self.widgets.append(newWidget)
!
def createWidget(self, object, container, textWidth, textHeight,
widgetWidth, widgetHeight, interface, spacer,initialize=1):
GDebug.printMesg(1,"UI doesn't support %s" % self.__class__)
-
!
--- 391,404 ----
else:
self.itemWidth = -1
self.itemHeight = -1
!
if not object.hidden:
for spacer in range(int(object._rows)):
newWidget = self.createWidget(object, container, textWidth,
textHeight, widgetWidth, widgetHeight, interface, spacer, initialize)
self.widgets.append(newWidget)
!
def createWidget(self, object, container, textWidth, textHeight,
widgetWidth, widgetHeight, interface, spacer,initialize=1):
GDebug.printMesg(1,"UI doesn't support %s" % self.__class__)
!
!
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- gnue forms/src/GFForm.py forms/src/GFInstance.p...,
Jason Cater <=