[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnue/forms/src GFForm.py GFInstance.py GFObject...
From: |
Jason Cater |
Subject: |
gnue/forms/src GFForm.py GFInstance.py GFObject... |
Date: |
Sat, 15 Jun 2002 17:14:54 -0400 |
CVSROOT: /home/cvs
Module name: gnue
Branch: forms-0-3-patches
Changes by: Jason Cater <address@hidden> 02/06/15 17:14:54
Modified files:
forms/src : GFForm.py GFInstance.py
forms/src/GFObjects: GFButton.py
forms/src/uidrivers/_base: UIdriver.py
forms/src/uidrivers/wx: UIdriver.py
Log message:
[ticket #80] Modified GFButton code so that GFButtons are
tab-stops/navigable [backported to 0.3.x branch]
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/forms/src/GFForm.py.diff?cvsroot=OldCVS&only_with_tag=forms-0-3-patches&tr1=1.168&tr2=1.168.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/forms/src/GFInstance.py.diff?cvsroot=OldCVS&only_with_tag=forms-0-3-patches&tr1=1.51&tr2=1.51.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/forms/src/GFObjects/GFButton.py.diff?cvsroot=OldCVS&only_with_tag=forms-0-3-patches&tr1=1.6&tr2=1.6.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/forms/src/uidrivers/_base/UIdriver.py.diff?cvsroot=OldCVS&only_with_tag=forms-0-3-patches&tr1=1.69&tr2=1.69.2.1&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/forms/src/uidrivers/wx/UIdriver.py.diff?cvsroot=OldCVS&only_with_tag=forms-0-3-patches&tr1=1.176&tr2=1.176.2.1&r1=text&r2=text
Patches:
Index: gnue/forms/src/GFForm.py
diff -c gnue/forms/src/GFForm.py:1.168 gnue/forms/src/GFForm.py:1.169
*** gnue/forms/src/GFForm.py:1.168 Wed May 15 21:14:44 2002
--- gnue/forms/src/GFForm.py Sat Jun 15 15:51:35 2002
***************
*** 45,52 ****
import GFTrigger
# Defines which objects are "Tab Stops"
! #TabStops = ('GFEntry','GFButton')
! TabStops = ('GFEntry',)
class GFForm(GFObj, GRootObj, GFEventAware):
def __init__(self, parent=None, app=None):
--- 45,52 ----
import GFTrigger
# Defines which objects are "Tab Stops"
! TabStops = ('GFEntry','GFButton')
! #TabStops = ('GFEntry',)
class GFForm(GFObj, GRootObj, GFEventAware):
def __init__(self, parent=None, app=None):
***************
*** 221,227 ****
return None
message = None
!
try:
if self._currentEntry:
event = GFEvent('endEDITMODE', None)
--- 221,227 ----
return None
message = None
!
try:
if self._currentEntry:
event = GFEvent('endEDITMODE', None)
Index: gnue/forms/src/GFInstance.py
diff -c gnue/forms/src/GFInstance.py:1.51 gnue/forms/src/GFInstance.py:1.52
*** gnue/forms/src/GFInstance.py:1.51 Thu May 30 10:33:48 2002
--- gnue/forms/src/GFInstance.py Sat Jun 15 15:51:35 2002
***************
*** 148,154 ****
#
def proxyEntryEvent(self, event):
! if self._form._currentEntry != None:
handler = self._form._currentEntry._displayHandler
--- 148,155 ----
#
def proxyEntryEvent(self, event):
! if self._form._currentEntry != None and \
! self._form._currentEntry._type != 'GFButton':
handler = self._form._currentEntry._displayHandler
Index: gnue/forms/src/GFObjects/GFButton.py
diff -c gnue/forms/src/GFObjects/GFButton.py:1.6
gnue/forms/src/GFObjects/GFButton.py:1.7
*** gnue/forms/src/GFObjects/GFButton.py:1.6 Thu May 30 10:33:48 2002
--- gnue/forms/src/GFObjects/GFButton.py Sat Jun 15 15:51:36 2002
***************
*** 36,41 ****
--- 36,46 ----
GFObj.__init__(self, parent)
self._type = "GFButton"
self.label = ""
+ self._inits = [self.initialize]
+
+ def initialize(self):
+ self._block = self.findParentOfType('GFBlock')
+
Index: gnue/forms/src/uidrivers/_base/UIdriver.py
diff -c gnue/forms/src/uidrivers/_base/UIdriver.py:1.69
gnue/forms/src/uidrivers/_base/UIdriver.py:1.70
*** gnue/forms/src/uidrivers/_base/UIdriver.py:1.69 Thu Jun 6 14:06:11 2002
--- gnue/forms/src/uidrivers/_base/UIdriver.py Sat Jun 15 15:51:36 2002
***************
*** 297,303 ****
# updateEntry
#
def updateEntry(self,event):
! if event.data.hidden:
return
entry = event.data
--- 297,303 ----
# updateEntry
#
def updateEntry(self,event):
! if event.data.hidden or event.data._type == 'GFButton':
return
entry = event.data
Index: gnue/forms/src/uidrivers/wx/UIdriver.py
diff -c gnue/forms/src/uidrivers/wx/UIdriver.py:1.175
gnue/forms/src/uidrivers/wx/UIdriver.py:1.176
*** gnue/forms/src/uidrivers/wx/UIdriver.py:1.175 Tue May 28 11:28:19 2002
--- gnue/forms/src/uidrivers/wx/UIdriver.py Thu Jun 6 14:06:11 2002
***************
*** 44,50 ****
from gnue.common import GConfig
from gnue.common import lineWrap
- _NOTEBOOK = None
_LOOPTRAP = 0
_EVENTPROCESSOR = None
_PROMPTFORRECORD = None
--- 44,49 ----
***************
*** 317,326 ****
# Only one page at a time can be visible
self.visiblePage = self._pageList[0]
! if _NOTEBOOK: # Adjust sizes
! _NOTEBOOK.SetSize(formSize)
! child = _NOTEBOOK.GetParent()
while child:
child.Fit()
child = child.GetParent()
--- 316,325 ----
# Only one page at a time can be visible
self.visiblePage = self._pageList[0]
! if self._notebook: # Adjust sizes
! self._notebook.SetSize(formSize)
! child = self._notebook.GetParent()
while child:
child.Fit()
child = child.GetParent()
***************
*** 403,409 ****
# makes the requested page visible on the screen
#
def gotoPage(self, event):
! if not _NOTEBOOK:
self.visiblePage.Show(FALSE)
self.visiblePage = self._formToUI[event.data][0]
# TODO: move the calculatoin out of here
--- 402,408 ----
# makes the requested page visible on the screen
#
def gotoPage(self, event):
! if not self._notebook:
self.visiblePage.Show(FALSE)
self.visiblePage = self._formToUI[event.data][0]
# TODO: move the calculatoin out of here
***************
*** 411,419 ****
(self._form.height+self.menu_sb_space)*self.widgetHeight))
else:
self.visiblePage = self._formToUI[event.data][0]
! for count in range(_NOTEBOOK.GetPageCount()):
! if self.visiblePage.GetId() == _NOTEBOOK.GetPage(count).GetId():
! _NOTEBOOK.SetSelection(count)
break
self.visiblePage.Show(TRUE)
--- 410,418 ----
(self._form.height+self.menu_sb_space)*self.widgetHeight))
else:
self.visiblePage = self._formToUI[event.data][0]
! for count in range(self._notebook.GetPageCount()):
! if self.visiblePage.GetId() == self._notebook.GetPage(count).GetId():
! self._notebook.SetSelection(count)
break
self.visiblePage.Show(TRUE)
***************
*** 602,614 ****
pass
! def createWidget(self, object, container, textWidth, textHeight,
! widgetWidth, widgetHeight, interface, spacer,initialize=1):
! newWidget = self._createWidget(object, container, textWidth, textHeight,
! widgetWidth, widgetHeight, interface,
spacer,initialize)
initFont(newWidget)
! self._addToCrossRef(newWidget,object,self)
return newWidget
def cleanup(self, object):
--- 601,611 ----
pass
! def createWidget(self, event, spacer):
! newWidget = self._createWidget(event, spacer)
initFont(newWidget)
! self._addToCrossRef(newWidget,event.object,self)
return newWidget
def cleanup(self, object):
***************
*** 632,643 ****
'right' : wxALIGN_RIGHT|wxST_NO_AUTORESIZE,
}
! def _createWidget(self, object, container, textWidth, textHeight,
widgetWidth,
! widgetHeight,interface,spacer,initialize=1):
style = self.alignmentStyle[object.alignment]
! newWidget = wxStaticText(container, -1, str(object.text),
! wxPoint(object.x*widgetWidth,
!
(object.y+spacer+(spacer*object._gap))*widgetHeight),
wxSize(self.itemWidth,self.itemHeight), style)
return newWidget
--- 629,640 ----
'right' : wxALIGN_RIGHT|wxST_NO_AUTORESIZE,
}
! def _createWidget(self, event, spacer):
! object = event.object
style = self.alignmentStyle[object.alignment]
! newWidget = wxStaticText(event.container, -1, str(object.text),
! wxPoint(object.x*event.widgetWidth,
!
(object.y+spacer+(spacer*object._gap))*event.widgetHeight),
wxSize(self.itemWidth,self.itemHeight), style)
return newWidget
***************
*** 647,659 ****
# Widget set specific function that creates a single instance of a border box
#
class UIBox(UIHelper, UIWidget):
! def _createWidget(self, object, container, textWidth, textHeight,
! widgetWidth, widgetHeight,interface,spacer,initialize=1):
! newWidget = wxStaticBox(container,-1,str(object.label),
! wxPoint(object.x*widgetWidth+(widgetWidth/2),
!
(object.y+spacer+(spacer*object._gap))*widgetHeight+(widgetHeight/2)),
! wxSize((object.width-1)*widgetWidth,
! (object.height-1)*widgetHeight))
return newWidget
#
--- 644,656 ----
# Widget set specific function that creates a single instance of a border box
#
class UIBox(UIHelper, UIWidget):
! def _createWidget(self, event, spacer):
! object = event.object
! newWidget = wxStaticBox(event.container,-1,str(object.label),
!
wxPoint(object.x*event.widgetWidth+(event.widgetWidth/2),
!
(object.y+spacer+(spacer*object._gap))*event.widgetHeight+(event.widgetHeight/2)),
! wxSize((object.width-1)*event.widgetWidth,
! (object.height-1)*event.widgetHeight))
return newWidget
#
***************
*** 663,673 ****
# to navigate multiple records
#
class UIScrollBar(UIHelper, UIWidget):
! def _createWidget(self, object, container, textWidth, textHeight,
! widgetWidth, widgetHeight,interface,spacer,initialize=1):
! newWidget =wxScrollBar(container,-1,
!
wxPoint(object.x*widgetWidth,(object.y+spacer)*widgetHeight),
!
wxSize(object.width*widgetWidth,object.height*widgetHeight),
wxSB_VERTICAL)
return newWidget
--- 660,670 ----
# to navigate multiple records
#
class UIScrollBar(UIHelper, UIWidget):
! def _createWidget(self, event, spacer):
! object = event.object
! newWidget =wxScrollBar(event.container,-1,
!
wxPoint(object.x*event.widgetWidth,(object.y+spacer)*event.widgetHeight),
!
wxSize(object.width*event.widgetWidth,object.height*event.widgetHeight),
wxSB_VERTICAL)
return newWidget
***************
*** 677,689 ****
# Widget set specific function that creates a single instance of a button
#
class UIButton(UIHelper, UIWidget):
! def _createWidget(self, object, container, textWidth, textHeight,
! widgetWidth, widgetHeight,interface,spacer,initialize=1):
! newWidget = wxButton(container,-1,str(object.label),
!
wxPoint(object.x*widgetWidth,(object.y+spacer)*widgetHeight),
!
wxSize(object.width*widgetWidth,object.height*widgetHeight)
)
! if initialize:
EVT_BUTTON(newWidget,newWidget.GetId(),self.buttonHandler)
#_setDefaultEventHandlers(newWidget,initialize)
--- 674,686 ----
# Widget set specific function that creates a single instance of a button
#
class UIButton(UIHelper, UIWidget):
! def _createWidget(self, event, spacer):
! object = event.object
! newWidget = wxButton(event.container,-1,str(object.label),
!
wxPoint(object.x*event.widgetWidth,(object.y+spacer)*event.widgetHeight),
!
wxSize(object.width*event.widgetWidth,object.height*event.widgetHeight)
)
! if event.initialize:
EVT_BUTTON(newWidget,newWidget.GetId(),self.buttonHandler)
#_setDefaultEventHandlers(newWidget,initialize)
***************
*** 709,727 ****
# Note: The event trap for changing notebook pages is attached to the UIForm
#
class UIPage(UIHelper, UIWidget):
! def _createWidget(self, object, container, textWidth, textHeight,
! widgetWidth, widgetHeight,interface,spacer,initialize=1):
! if _NOTEBOOK:
! newWidget = wxPanel(_NOTEBOOK, -1,wxDefaultPosition,_NOTEBOOK.GetSize())
! _NOTEBOOK.AddPage(newWidget,object.name)
! newWidget.Show(TRUE)
else:
! newWidget = wxPanel(container, -1,wxDefaultPosition,container.GetSize())
! newWidget.Show(FALSE)
! _setDefaultEventHandlers(newWidget,initialize)
! interface._pageList.append(newWidget)
return newWidget
#
--- 706,724 ----
# Note: The event trap for changing notebook pages is attached to the UIForm
#
class UIPage(UIHelper, UIWidget):
! def _createWidget(self, event, spacer):
! object = event.object
! if event.interface._notebook:
! newWidget = wxPanel(event.interface._notebook,
-1,wxDefaultPosition,event.interface._notebook.GetSize())
! event.interface._notebook.AddPage(newWidget,object.name)
! newWidget.Show(1)
else:
! newWidget = wxPanel(event.container,
-1,wxDefaultPosition,event.container.GetSize())
! newWidget.Show(0)
! _setDefaultEventHandlers(newWidget,event.initialize)
! event.interface._pageList.append(newWidget)
return newWidget
#
***************
*** 730,752 ****
# Widget set specific function that creates a single instance of a data entry
widget
#
class UIEntry(UIHelper, UIWidget):
! def _createWidget(self, object, container, textWidth, textHeight,
! widgetWidth, widgetHeight,interface,spacer,initialize=1):
style = object.style
! defaultPoint = wxPoint(object.x*widgetWidth,
!
(object.y+spacer+(object._gap*spacer))*widgetHeight)
defaultSize = wxSize(self.itemWidth,self.itemHeight+1)
if style == 'dropdown':
! if initialize:
choices = object.allowedValues().values()
else:
choices = [""]
choices.sort()
! newWidget = wxComboBox(container, -1, "",defaultPoint,
wxSize(self.itemWidth,self.itemHeight),
choices, wxCB_DROPDOWN,) # |wxWANTS_CHARS,)
newWidget.SetValue("")
--- 727,749 ----
# Widget set specific function that creates a single instance of a data entry
widget
#
class UIEntry(UIHelper, UIWidget):
! def _createWidget(self, event, spacer):
! object = event.object
style = object.style
! defaultPoint = wxPoint(object.x*event.widgetWidth,
!
(object.y+spacer+(object._gap*spacer))*event.widgetHeight)
defaultSize = wxSize(self.itemWidth,self.itemHeight+1)
if style == 'dropdown':
! if event.initialize:
choices = object.allowedValues().values()
else:
choices = [""]
choices.sort()
! newWidget = wxComboBox(event.container, -1, "",defaultPoint,
wxSize(self.itemWidth,self.itemHeight),
choices, wxCB_DROPDOWN,) # |wxWANTS_CHARS,)
newWidget.SetValue("")
***************
*** 754,773 ****
elif style == 'label':
! newWidget = wxStaticText(container, -1, "",defaultPoint,defaultSize,
wxST_NO_AUTORESIZE)
# To make the label consistent with the other entry styles...
newWidget.SetValue = newWidget.SetLabel
newWidget.GetValue = newWidget.GetLabel
elif style == 'checkbox':
! newWidget = wxCheckBox(container, -1, "",defaultPoint,
! wxSize(2*textWidth,textHeight),
wxNO_BORDER)
newWidget.SetValue(0)
else: # Normal text box
! if initialize:
styles = wxTE_PROCESS_TAB
if object.height > 1:
styles = styles|wxTE_MULTILINE
--- 751,770 ----
elif style == 'label':
! newWidget = wxStaticText(event.container, -1,
"",defaultPoint,defaultSize,
wxST_NO_AUTORESIZE)
# To make the label consistent with the other entry styles...
newWidget.SetValue = newWidget.SetLabel
newWidget.GetValue = newWidget.GetLabel
elif style == 'checkbox':
! newWidget = wxCheckBox(event.container, -1, "",defaultPoint,
! wxSize(2*event.textWidth,event.textHeight),
wxNO_BORDER)
newWidget.SetValue(0)
else: # Normal text box
! if event.initialize:
styles = wxTE_PROCESS_TAB
if object.height > 1:
styles = styles|wxTE_MULTILINE
***************
*** 776,784 ****
styles = 0
value = ""
! newWidget = wxTextCtrl(container, -1, value, defaultPoint, defaultSize,
styles)
! _setDefaultEventHandlers(newWidget,initialize)
return newWidget
def comboHandler(self, event):
--- 773,781 ----
styles = 0
value = ""
! newWidget = wxTextCtrl(event.container, -1, value, defaultPoint,
defaultSize, styles)
! _setDefaultEventHandlers(newWidget,event.initialize)
return newWidget
def comboHandler(self, event):
***************
*** 827,848 ****
'top':0,
}
! def _createWidget(self, object, container, textWidth, textHeight,
! widgetWidth, widgetHeight,interface,spacer,initialize=1):
! global _NOTEBOOK
if object.tabbed:
tabstyle =self.tabStyles[object.tabbed]
! newWidget =
wxNotebook(container,-1,wxPoint(10,10),size=container.GetSize(),style=tabstyle)
newWidget.Show(TRUE)
EVT_NOTEBOOK_PAGE_CHANGING(newWidget, newWidget.GetId(),
self.notebookTabHandler)
! _NOTEBOOK = newWidget
else:
! newWidget = wxPanel(interface.mainWindow.panel,-1, wxDefaultPosition)
! if initialize:
! EVT_CLOSE(interface.mainWindow,interface.closeTrap)
return newWidget
--- 824,845 ----
'top':0,
}
! def _createWidget(self, event, spacer):
! object = event.object
if object.tabbed:
tabstyle =self.tabStyles[object.tabbed]
! newWidget =
wxNotebook(event.container,-1,wxPoint(10,10),size=event.container.GetSize(),style=tabstyle)
newWidget.Show(TRUE)
EVT_NOTEBOOK_PAGE_CHANGING(newWidget, newWidget.GetId(),
self.notebookTabHandler)
! event.interface._notebook = newWidget
else:
! newWidget = wxPanel(event.interface.mainWindow.panel,-1,
wxDefaultPosition)
! event.interface._notebook = None
! if event.initialize:
! EVT_CLOSE(event.interface.mainWindow,event.interface.closeTrap)
return newWidget
***************
*** 879,886 ****
_(" Name : ")+"%s\n"+ \
_(" Version: ")+"%s\n"+ \
_(" Author : ")+"%s\n"+ \
! _(" Description:")+"%s\n"
! wxMessageDialog.__init__(self, interface,
text % (programVersion, formName
,formVersion,author,description),
_("About"), wxOK | wxICON_INFORMATION)
#
--- 876,883 ----
_(" Name : ")+"%s\n"+ \
_(" Version: ")+"%s\n"+ \
_(" Author : ")+"%s\n"+ \
! _(" Description:")+"%s\n"
! wxMessageDialog.__init__(self, interface,
text % (programVersion, formName
,formVersion,author,description),
_("About"), wxOK | wxICON_INFORMATION)
#
- gnue/forms/src GFForm.py GFInstance.py GFObject...,
Jason Cater <=