1 # -*- coding: utf-8 -*-
4 from Editeur import Objecttreeitem
8 class Node(browser.JDCNode):
12 from monRacinePanel import MonRacinePanel
13 return MonRacinePanel(self,parent=self.editor)
15 def doPasteCommande(self,objet_a_copier):
17 Réalise la copie de l'objet passé en argument qui est nécessairement
20 child = self.append_child(objet_a_copier,pos='first',retour='oui')
24 class JDCTreeItem(Objecttreeitem.ObjectTreeItem):
27 def IsExpandable(self):
33 def GetLabelText(self):
34 # None --> fonte et couleur par défaut
35 return self.object.nom,None,None
39 Retourne l'objet pointé par self
43 def GetIconName(self):
44 if self.object.isvalid():
45 return "ast-green-square"
47 return "ast-red-square"
50 if self.object.etapes_niveaux != []:
51 return range(len(self.object.etapes_niveaux))
53 return range(len(self.object.etapes))
55 def additem(self,name,pos):
56 cmd = self._object.addentite(name,pos)
59 def suppitem(self,item) :
60 # item = item de l'ETAPE à supprimer du JDC
61 # item.getObject() = ETAPE ou COMMENTAIRE
64 itemobject=item.getObject()
65 if self.object.suppentite(itemobject):
66 if itemobject.nature == "COMMENTAIRE" :
67 message = "Commentaire supprimé"
69 message = "Commande " + itemobject.nom + " supprimée"
70 self.appli.affiche_infos(message)
73 self.appli.affiche_infos("Pb interne : impossible de supprimer cet objet")
78 Retourne la liste des items fils de l'item jdc.
79 Cette liste est conservee et mise a jour a chaque appel
81 if self.object.etapes_niveaux != []:
82 liste = self.object.etapes_niveaux
84 liste = self.object.etapes
85 sublist=[None]*len(liste)
86 # suppression des items lies aux objets disparus
87 for item in self.sublist:
88 old_obj=item.getObject()
90 pos=liste.index(old_obj)
93 pass # objets supprimes ignores
94 # ajout des items lies aux nouveaux objets
97 if sublist[pos] is None:
98 # nouvel objet : on cree un nouvel item
99 item = self.make_objecttreeitem(self.appli, obj.nom + " : ", obj)
106 def get_l_noms_etapes(self):
107 """ Retourne la liste des noms des étapes de self.object"""
108 return self.object.get_l_noms_etapes()
110 def get_liste_cmd(self):
111 listeCmd = self.object.niveau.definition.get_liste_cmd()
115 treeitem =JDCTreeItem