/[papo]/gnue/designer/src/forms/TreeView.py
ViewVC logotype

Diff of /gnue/designer/src/forms/TreeView.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.3 by styxman, Fri Nov 8 16:46:03 2002 UTC revision 1.3.4.1 by anthonyl, Tue Mar 4 22:11:40 2003 UTC
# Line 16  Line 16 
16  # write to the Free Software Foundation, Inc., 59 Temple Place  # write to the Free Software Foundation, Inc., 59 Temple Place
17  # - Suite 330, Boston, MA 02111-1307, USA.  # - Suite 330, Boston, MA 02111-1307, USA.
18  #  #
19  # Copyright 2001-2002 Free Software Foundation  # Copyright 2001-2003 Free Software Foundation
20  #  #
21  # FILE:  # FILE:
22  # TreeView.py  # TreeView.py
23  #  #
24  # DESCRIPTION:  # DESCRIPTION:
25    # The TreeView for forms instances
26  #  #
27  # NOTES:  # NOTES:
28  #  #
29  # TODO: all the SetItemImage lines in this file have been commented out as on win32 it was segfaulting  # TODO: all the SetItemImage lines in this file have been
30    # TODO: commented out as on win32 it was segfaulting
31    #
32    
33  import sys, os  import sys, os
34  from wxPython.wx import *  from wxPython.wx import *
35  from gnue.common import GDebug, GTrigger  from gnue.common import GDebug, GTrigger, GDataSource
36  from gnue.forms import GFForm, GFObjects, GFLibrary  from gnue.forms import GFForm, GFObjects, GFLibrary
37  from gnue.designer.PopupMenu import ObjectMenu  from gnue.designer.base.PopupMenu import ObjectMenu
38  from gnue.designer.Icons import treeIconMap, treeIconList  from gnue.designer.base.Icons import treeIconMap, treeIconList
39  from gnue.designer.TreeView import TreeView as BaseTreeView  from gnue.designer.base.tools.TreeView import TreeView as BaseTreeView
40    
41  class TreeView (BaseTreeView):  class TreeView (BaseTreeView):
   def __init__(self, instance, root, parent):  
42    
43      self.rootDescr = 'Form'    rootDescr = 'Form'
44      BaseTreeView.__init__(self, instance, root, parent)  
45      def init(self):
46    
47        BaseTreeView.init(self)
48    
49        logic = None
50        layout = None
51        for child in self.rootObject._children:
52          if child._type == 'GFLogic':
53            logic = child
54          elif child._type == 'GFLayout':
55            layout = child
56    
57      self.rootObject._treeItemFormProperties = \      self.rootObject._treeItemFormProperties = \
58          self.AppendItem(self.rootObject._treeItem, _("Properties"))          self.AppendItem(self.rootObject._treeItem, _("Properties"))
59      self.SetItemImage(self.rootObject._treeItemFormProperties, treeIconMap['properties'])      self.tree.SetItemImage(self.rootObject._treeItemFormProperties, treeIconMap['properties'])
60      self.rootObject._treeItemImportedLibraries = \      self.rootObject._treeItemImportedLibraries = \
61          self.AppendItem(self.rootObject._treeItem, _("Imported Libraries"))          self.AppendItem(self.rootObject._treeItem, _("Imported Libraries"))
62      self.SetItemImage(self.rootObject._treeItemImportedLibraries, treeIconMap['import'])      self.tree.SetItemImage(self.rootObject._treeItemImportedLibraries, treeIconMap['import'])
63      self.rootObject._treeItemDataSources = \      self.rootObject._treeItemDataSources = \
64          self.AppendItem(self.rootObject._treeItem, _("Data Sources"))          self.AppendItem(self.rootObject._treeItem, _("Data Sources"))
65      self.SetItemImage(self.rootObject._treeItemDataSources, treeIconMap['datasource'])      self.tree.SetItemImage(self.rootObject._treeItemDataSources, treeIconMap['datasource'])
66      self.rootObject._treeItemNamedTriggers = \      self.rootObject._treeItemNamedTriggers = \
67          self.AppendItem(self.rootObject._treeItem, _("Shared Triggers"))          self.AppendItem(self.rootObject._treeItem, _("Shared Triggers"))
68      self.SetItemImage(self.rootObject._treeItemNamedTriggers, treeIconMap['trigger'])      self.tree.SetItemImage(self.rootObject._treeItemNamedTriggers, treeIconMap['trigger'])
69      self.rootObject._treeItemPageLayout = \      self.rootObject._treeItemLogic = logic._treeItem = \
70            self.AppendItem(self.rootObject._treeItem, _("Field Logic"))
71        self.tree.SetItemImage(self.rootObject._treeItemLogic, treeIconMap['block'])
72        self.rootObject._treeItemPageLayout = layout._treeItem = \
73          self.AppendItem(self.rootObject._treeItem, _("Page Layout"))          self.AppendItem(self.rootObject._treeItem, _("Page Layout"))
74      self.SetItemImage(self.rootObject._treeItemPageLayout, treeIconMap['page'])      self.tree.SetItemImage(self.rootObject._treeItemPageLayout, treeIconMap['page'])
75    
76      self.SetPyData(self.rootObject._treeItem, self.rootObject)      self.tree.SetPyData(self.rootObject._treeItem, self.rootObject)
77      self.SetPyData(self.rootObject._treeItemFormProperties, ObjectMenu(self.instance,None))      self.tree.SetPyData(self.rootObject._treeItemFormProperties, ObjectMenu(self.instance,None))
78      self.SetPyData(self.rootObject._treeItemDataSources, ObjectMenu(self.instance,None))      self.tree.SetPyData(self.rootObject._treeItemDataSources, ObjectMenu(self.instance,None))
79      self.SetPyData(self.rootObject._treeItemNamedTriggers, ObjectMenu(self.instance,None))      self.tree.SetPyData(self.rootObject._treeItemNamedTriggers, ObjectMenu(self.instance,None))
80      self.SetPyData(self.rootObject._treeItemPageLayout, ObjectMenu(self.instance,None))      self.tree.SetPyData(self.rootObject._treeItemLogic, logic)
81        self.tree.SetPyData(self.rootObject._treeItemPageLayout, layout)
82    
83      self.rootObject.walk(self.inventoryObject)      self.rootObject.walk(self.inventoryObject)
84    
# Line 73  class TreeView (BaseTreeView): Line 90  class TreeView (BaseTreeView):
90           object._parent == self.rootObject:           object._parent == self.rootObject:
91          object._treeItem = self.rootObject._treeItemFormProperties          object._treeItem = self.rootObject._treeItemFormProperties
92          icon = 'properties'          icon = 'properties'
93          elif object._type in ('GFLogic','GFLayout') and \
94               object._parent == self.rootObject:
95            pass
96        else:        else:
97          parentTreeItem = object._parent._treeItem          parentTreeItem = object._parent._treeItem
98          if isinstance(object, GTrigger.GTrigger) and \          if isinstance(object, GTrigger.GTrigger) and \
# Line 84  class TreeView (BaseTreeView): Line 104  class TreeView (BaseTreeView):
104            if not hasattr(object._parent,'_treeItemTrigger'):            if not hasattr(object._parent,'_treeItemTrigger'):
105              object._parent._treeItemTrigger = \              object._parent._treeItemTrigger = \
106                self.AppendItem(object._parent._treeItem, _("Events"))                self.AppendItem(object._parent._treeItem, _("Events"))
107              #self.SetItemImage(object._parent._treeItemTrigger, treeIconMap['trigger'])              #self.tree.SetItemImage(object._parent._treeItemTrigger, treeIconMap['trigger'])
108    
109    
110            parentTreeItem = object._parent._treeItemTrigger            parentTreeItem = object._parent._treeItemTrigger
111            icon = 'trigger'            icon = 'trigger'
112          elif isinstance(object, GFObjects.GFDataSource) or \          elif isinstance(object, GFObjects.GFDataSource) or \
113             isinstance(object, GFObjects.GFDatabase):             isinstance(object, GDataSource.GConnection):
114            parentTreeItem = self.rootObject._treeItemDataSources            parentTreeItem = self.rootObject._treeItemDataSources
115            icon = 'datasource'            icon = 'datasource'
116          elif isinstance(object, GFObjects.GFPage) and \          elif isinstance(object, GFObjects.GFPage) and \
117               object._parent == self.rootObject:               object._parent == self.rootObject:
           parentTreeItem = self.rootObject._treeItemPageLayout  
118            icon = 'page'            icon = 'page'
119          elif object._type in ('GFBlock',):          elif object._type in ('GFBlock',):
120            icon = 'block'            icon = 'block'
# Line 112  class TreeView (BaseTreeView): Line 131  class TreeView (BaseTreeView):
131    
132          object._treeItem = self.AppendItem(parentTreeItem,          object._treeItem = self.AppendItem(parentTreeItem,
133              "%s" % object.getDescription())              "%s" % object.getDescription())
134          self.SetPyData(object._treeItem, object)          self.tree.SetPyData(object._treeItem, object)
135          #self.SetItemImage(object._treeItem, treeIconMap[icon])          #self.tree.SetItemImage(object._treeItem, treeIconMap[icon])
136    
137    

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.3.4.1

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26