commit-gnue
[Top][All Lists]
Advanced

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

gnue/designer/src TemplateBase.py TemplateParse...


From: Jason Cater
Subject: gnue/designer/src TemplateBase.py TemplateParse...
Date: Mon, 28 Oct 2002 18:43:08 -0500

CVSROOT:        /cvsroot/gnue
Module name:    gnue
Changes by:     Jason Cater <address@hidden>    02/10/28 18:43:08

Modified files:
        designer/src   : TemplateBase.py TemplateParser.py 
        designer/src/forms/LayoutEditor: LayoutEditor.py 
        designer/src/forms/wizards: AddDropDown.py 
Added files:
        designer/src/forms/wizards: AddButton.py 

Log message:
        * Added tab support to wizard dialogs
        * Added "Insert Button" wizard
        * Fixed cross-cursor support when a
        object drawing is enabled
        * Fixed "Static Datasource" support in
        the Add DropDown wizard

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/TemplateBase.py.diff?tr1=1.16&tr2=1.17&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/TemplateParser.py.diff?tr1=1.21&tr2=1.22&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/forms/LayoutEditor/LayoutEditor.py.diff?tr1=1.32&tr2=1.33&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/forms/wizards/AddButton.py?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/forms/wizards/AddDropDown.py.diff?tr1=1.8&tr2=1.9&r1=text&r2=text

Patches:
Index: gnue/designer/src/TemplateBase.py
diff -c gnue/designer/src/TemplateBase.py:1.16 
gnue/designer/src/TemplateBase.py:1.17
*** gnue/designer/src/TemplateBase.py:1.16      Fri Aug 16 00:51:28 2002
--- gnue/designer/src/TemplateBase.py   Mon Oct 28 18:43:08 2002
***************
*** 46,51 ****
--- 46,52 ----
  #   been trademarked. (No, I'm not kidding :)
  
  from gnue.common import GTypecast
+ from gnue.common.GParserHelpers import GContent
  
  #
  # These Identify the types of templates. A template
***************
*** 112,123 ****
    #  The following methods are convenience
    #  methods.
  
!   def AddElement(self, tag, parent, attributes={}):
      o = self.parser.elements[tag]['BaseClass'](parent)
      o.__dict__.update(attributes)
      o._buildObject()
      self.parser.instance.onCreateObject(o, __name__)
      return o
  
    def ModifyElement(self, element, **modifications):
      element.__dict__.update(modifications)
--- 113,137 ----
    #  The following methods are convenience
    #  methods.
  
!   def AddElement(self, tag, parent, attributes={}, content=""):
      o = self.parser.elements[tag]['BaseClass'](parent)
      o.__dict__.update(attributes)
+     if content:
+       self.SetContent(o, content)
      o._buildObject()
      self.parser.instance.onCreateObject(o, __name__)
      return o
+ 
+ 
+   def SetContent(self, element, content):
+     i = 0
+     while i < len(element._children):
+       if element._children[i]._type == '_content_':
+         element._children.pop(i)
+       else:
+         i += 1
+     content = GContent(element,content)
+ 
  
    def ModifyElement(self, element, **modifications):
      element.__dict__.update(modifications)
Index: gnue/designer/src/TemplateParser.py
diff -c gnue/designer/src/TemplateParser.py:1.21 
gnue/designer/src/TemplateParser.py:1.22
*** gnue/designer/src/TemplateParser.py:1.21    Fri Oct 18 14:04:29 2002
--- gnue/designer/src/TemplateParser.py Mon Oct 28 18:43:08 2002
***************
*** 223,228 ****
--- 223,229 ----
      nextY = yMargin
  
      self.editorMappings = {}
+     self.textctrlList = []
  
      for object in self.stepInfo['content']:
  
***************
*** 264,273 ****
--- 265,290 ----
  
  
          self.editorMappings[o] = object
+         MyId = len(self.textctrlList)
+         self.textctrlList.append(o)
+ 
          nextY = nextY + ySpacing + o.GetSize().y
  
+         EVT_CHAR(o, FieldHandler(self, MyId).fieldEventTrap)
+ 
          if self.parser.template.variables.has_key(object.variable):
            o.set(self.parser.template.variables[object.variable])
+           
+     # Add our buttons to the focus list
+     if self.prevStep:
+       self.textctrlList.append(self.parser.prevButton)
+     self.textctrlList.append(self.parser.nextButton)
+     self.textctrlList.append(self.parser.cancelButton)
+ 
+     # Set focus to be the first input widget
+     self.textctrlList[0].SetFocus()
+ 
+ 
  
  
  class TextField(wxTextCtrl):
***************
*** 488,494 ****
          self.downButton.Enable(0)
        else: 
          self.downButton.Enable(1)
!     else: 
        self.delButton.Enable(0)
        self.upButton.Enable(0)
        self.downButton.Enable(0)
--- 505,511 ----
          self.downButton.Enable(0)
        else: 
          self.downButton.Enable(1)
!     else:
        self.delButton.Enable(0)
        self.upButton.Enable(0)
        self.downButton.Enable(0)
***************
*** 623,626 ****
--- 640,668 ----
        self.SetLabel(string.replace(textSoFar,' \n','\n')[:-1])
      else:
        self.SetLabel("")
+ 
+ 
+ #
+ # FieldHandler
+ #
+ # enables the user to press tab/return and have it jump to the next box
+ #
+ class FieldHandler:
+   def __init__(self, app, seq):
+     self.app = app
+     self.seq = seq
+ 
+   def fieldEventTrap(self, event):
+      keycode = event.KeyCode()
+      if keycode in (WXK_RETURN, WXK_TAB):
+        if self.seq < len(self.app.textctrlList) - 1:
+          self.app.textctrlList[self.seq+1].SetFocus()
+        else:
+          if keycode == WXK_TAB:
+            if event.ShiftDown():
+              self.app.textctrlList[self.seq-1].SetFocus()
+      elif keycode == WXK_ESCAPE:
+        self.app.OnCancel(None)
+      else:
+       event.Skip()
  
Index: gnue/designer/src/forms/LayoutEditor/LayoutEditor.py
diff -c gnue/designer/src/forms/LayoutEditor/LayoutEditor.py:1.32 
gnue/designer/src/forms/LayoutEditor/LayoutEditor.py:1.33
*** gnue/designer/src/forms/LayoutEditor/LayoutEditor.py:1.32   Thu Oct 24 
10:10:09 2002
--- gnue/designer/src/forms/LayoutEditor/LayoutEditor.py        Mon Oct 28 
18:43:08 2002
***************
*** 427,432 ****
--- 427,434 ----
  
  
      self.panel.SetCursor(wxSTANDARD_CURSOR)
+     wxSetCursor(wxSTANDARD_CURSOR)
+ 
  
      areaSelected = (x1 <> x2 or y1 <> y2)
  
***************
*** 527,533 ****
  
    def startPrePositioningTemplate(self, template):
      self.mode = 'positioning'
!     self.panel.SetCursor(wxCROSS_CURSOR)
      self.__template = template
  
  
--- 529,536 ----
  
    def startPrePositioningTemplate(self, template):
      self.mode = 'positioning'
!     ##self.panel.SetCursor(wxCROSS_CURSOR)
!     wxSetCursor(wxCROSS_CURSOR)
      self.__template = template
  
  
Index: gnue/designer/src/forms/wizards/AddDropDown.py
diff -c gnue/designer/src/forms/wizards/AddDropDown.py:1.8 
gnue/designer/src/forms/wizards/AddDropDown.py:1.9
*** gnue/designer/src/forms/wizards/AddDropDown.py:1.8  Tue Oct  8 16:39:19 2002
--- gnue/designer/src/forms/wizards/AddDropDown.py      Mon Oct 28 18:43:08 2002
***************
*** 90,100 ****
        if len (self.__datasourceMap):
            set=((0,'Create a new datasource'),
                 (1,'Use an existing datasource'),
!                ##(2,'Specify a static list of valid choices' )
                 )
        else:
            set=((0,'Create a new datasource'),
!                ##(2,'Specify a static list of valid choices' )
                 )
  
  
--- 90,100 ----
        if len (self.__datasourceMap):
            set=((0,'Create a new datasource'),
                 (1,'Use an existing datasource'),
!                (2,'Specify a static list of valid choices' )
                 )
        else:
            set=((0,'Create a new datasource'),
!                (2,'Specify a static list of valid choices' )
                 )
  
  
***************
*** 315,321 ****
          self.__datasourceMap[child.name] = child
          if not self.__firstConnection:
            self.__firstConnection = child.database
-     print self.__datasourceSet
      return self.__datasourceSet
  
  
--- 315,320 ----




reply via email to

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