8 def __init__(self,root=None):
9 Item.Item.__init__(self)
18 CONNECTOR.Emit(self.root,"selected",self)
21 def panel(self,parent):
22 """Retourne un tab widget pour browser/editer la proc"""
23 tabWidget = QTabWidget( parent )
24 for name,method in self.panels:
25 tabWidget.addTab( method(self,tabWidget), name )
30 def panel1(self,parent):
32 self.text=QTextEdit(qvbox,"log")
33 self.text.setFrameShape(QTextEdit.NoFrame)
34 self.text.setTextFormat(QTextEdit.PlainText)
35 self.text.setWordWrap(QTextEdit.FixedColumnWidth)
36 #self.text.setWrapColumnOrWidth(120)
37 self.text.setReadOnly(1)
40 panels=[("Panel1",panel1)]
42 class ItemService(Item.Item):
43 def __init__(self,service,root):
44 Item.Item.__init__(self)
47 self.label=service.getName()
49 def isExpandable(self):
52 def addNode(self,appli):
53 appli.addNode(self.service)
55 def getChildren(self):
57 for port in self.service.getSetOfInputPort():
58 sublist.append(Items.ItemInPort(port,self.root))
59 for port in self.service.getSetOfOutputPort():
60 sublist.append(Items.ItemOutPort(port,self.root))
61 for port in self.service.getSetOfInputDataStreamPort():
62 sublist.append(Items.ItemInStream(port,self.root))
63 for port in self.service.getSetOfOutputDataStreamPort():
64 sublist.append(Items.ItemOutStream(port,self.root))
70 CONNECTOR.Emit(self.root,"selected",self)
73 class ItemType(Item.Item):
74 def __init__(self,typ,root,name=""):
75 Item.Item.__init__(self)
83 def isExpandable(self):
86 def getChildren(self):
93 CONNECTOR.Emit(self.root,"selected",self)
96 class ItemCompo(Item.Item):
97 def __init__(self,compo,root):
98 Item.Item.__init__(self)
101 self.label=compo.getName()
103 def isExpandable(self):
106 def getChildren(self):
108 for service in self.compo._serviceMap.values():
109 itemservice=ItemService(service,self.root)
110 sublist.append(itemservice)
114 if not self.emitting:
116 CONNECTOR.Emit(self.root,"selected",self)
119 class ItemNode(Item.Item):
120 def __init__(self,node,root):
121 Item.Item.__init__(self)
124 self.label=node.getName()
126 def isExpandable(self):
129 def addNode(self,appli):
130 appli.addNode(self.node)
132 def getChildren(self):
137 if not self.emitting:
139 CONNECTOR.Emit(self.root,"selected",self)
142 class ItemComposedNode(Item.Item):
143 def __init__(self,node,root):
144 Item.Item.__init__(self)
147 self.label=node.getName()
149 def addNode(self,appli):
150 appli.addNode(self.node)
152 def isExpandable(self):
155 def getChildren(self):
160 if not self.emitting:
162 CONNECTOR.Emit(self.root,"selected",self)
165 class TypesItem(Item.Item):
166 """Item for types folder"""
167 def __init__(self,typeMap,root):
168 Item.Item.__init__(self)
173 def getIconName(self):
176 def isExpandable(self):
179 def getChildren(self):
181 for name,typ in self.typeMap.items():
182 itemtype=ItemType(typ,self.root,name)
183 sublist.append(itemtype)
186 class ComponentsItem(Item.Item):
187 """Item for components folder"""
188 def __init__(self,compoMap,root):
189 Item.Item.__init__(self)
190 self.compoMap=compoMap
191 self.label="Components"
194 def getIconName(self):
197 def isExpandable(self):
200 def getChildren(self):
202 for compo in self.compoMap.values():
203 itemcompo=ItemCompo(compo,self.root)
204 sublist.append(itemcompo)
207 class NodesItem(Item.Item):
208 """Item for nodes folder"""
209 def __init__(self,nodesMap,root):
210 Item.Item.__init__(self)
211 self.nodesMap=nodesMap
215 def getIconName(self):
218 def isExpandable(self):
221 def getChildren(self):
223 for node in self.nodesMap.values():
224 itemnode=ItemNode(node,self.root)
225 sublist.append(itemnode)
228 class ComposedNodesItem(Item.Item):
229 """Item for composed nodes folder"""
230 def __init__(self,composedMap,root):
231 Item.Item.__init__(self)
232 self.composedMap=composedMap
233 self.label="ComposedNodes"
236 def getIconName(self):
239 def isExpandable(self):
242 def getChildren(self):
244 for node in self.composedMap.values():
245 itemnode=ItemComposedNode(node,self.root)
246 sublist.append(itemnode)
250 def __init__(self,cata):
253 self.label=cata.getName()
255 def isExpandable(self):
258 def getChildren(self):
260 sublist.append(TypesItem(self.cata._typeMap,self))
261 sublist.append(NodesItem(self.cata._nodeMap,self))
262 sublist.append(ComposedNodesItem(self.cata._composednodeMap,self))
263 sublist.append(ComponentsItem(self.cata._componentMap,self))
266 def dblselected(self):
267 if not self.emitting:
269 CONNECTOR.Emit(self,"dblselected",self)