commit-gnue
[Top][All Lists]
Advanced

[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)
  #



reply via email to

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