1 # -*- coding: utf-8 -*-
3 from Editeur import Objecttreeitem
7 class Node(browser.JDCNode):
11 from monRacinePanel import MonRacinePanel
12 return MonRacinePanel(self,parent=self.editor)
14 def doPasteCommande(self,objet_a_copier):
16 Réalise la copie de l'objet passé en argument qui est nécessairement
19 child = self.append_child(objet_a_copier,pos='first',retour='oui')
23 class JDCTreeItem(Objecttreeitem.ObjectTreeItem):
26 def IsExpandable(self):
32 def GetLabelText(self):
33 # None --> fonte et couleur par défaut
34 return self.object.nom,None,None
38 Retourne l'objet pointé par self
42 def GetIconName(self):
43 if self.object.isvalid():
44 return "ast-green-square"
46 return "ast-red-square"
49 if self.object.etapes_niveaux != []:
50 return range(len(self.object.etapes_niveaux))
52 return range(len(self.object.etapes))
54 def additem(self,name,pos):
55 cmd = self._object.addentite(name,pos)
58 def suppitem(self,item) :
59 # item = item de l'ETAPE à supprimer du JDC
60 # item.getObject() = ETAPE ou COMMENTAIRE
63 itemobject=item.getObject()
64 if self.object.suppentite(itemobject):
65 if itemobject.nature == "COMMENTAIRE" :
66 message = "Commentaire supprimé"
68 message = "Commande " + itemobject.nom + " supprimée"
69 self.appli.affiche_infos(message)
72 self.appli.affiche_infos("Pb interne : impossible de supprimer cet objet")
77 Retourne la liste des items fils de l'item jdc.
78 Cette liste est conservee et mise a jour a chaque appel
80 if self.object.etapes_niveaux != []:
81 liste = self.object.etapes_niveaux
83 liste = self.object.etapes
84 sublist=[None]*len(liste)
85 # suppression des items lies aux objets disparus
86 for item in self.sublist:
87 old_obj=item.getObject()
89 pos=liste.index(old_obj)
92 pass # objets supprimes ignores
93 # ajout des items lies aux nouveaux objets
96 if sublist[pos] is None:
97 # nouvel objet : on cree un nouvel item
98 item = self.make_objecttreeitem(self.appli, obj.nom + " : ", obj)
105 def get_l_noms_etapes(self):
106 """ Retourne la liste des noms des étapes de self.object"""
107 return self.object.get_l_noms_etapes()
109 def get_liste_cmd(self):
110 listeCmd = self.object.niveau.definition.get_liste_cmd()
114 treeitem =JDCTreeItem