]> SALOME platform Git repositories - tools/eficas.git/blob - InterfaceQT/componiveau.py
Salome HOME
CCAR: merge de la version 1.14 dans la branche principale
[tools/eficas.git] / InterfaceQT / componiveau.py
1 # -*- coding: utf-8 -*-
2
3 from qt import *
4 from Editeur     import Objecttreeitem
5 from Extensions  import commentaire 
6 import browser
7
8 class Node(browser.JDCNode):
9       pass
10
11 class NIVEAUTreeItem(Objecttreeitem.ObjectTreeItem):
12   itemNode=Node
13
14   def isactif(self):
15       return self.object.isactif()
16     
17   def IsExpandable(self):
18       return 1
19     
20   def GetLabelText(self):
21       """ Retourne 3 valeurs :
22         - le texte à afficher dans le noeud représentant l'item
23         - la fonte dans laquelle afficher ce texte
24         - la couleur du texte
25       """
26       if self.isactif():
27           fonte = Fonte_Niveau
28       else :
29           fonte = Fonte_Niveau_inactif
30       return self.labeltext,fonte,'#00008b'
31     
32   def GetIconName(self):
33       if self.isactif():
34           if self.object.isvalid():
35               return "ast-green-text"
36           else:
37               return "ast-red-text"
38       else:
39           return "ast-white-text"
40   
41   def keys(self):
42       if self.object.etapes_niveaux != []:
43           return range(len(self.object.etapes_niveaux))
44       else:
45           return range(len(self.object.etapes))
46
47   def GetSubList(self):
48     sublist=[]
49     for key in self.keys():
50       if self.object.etapes_niveaux != []:
51           liste = self.object.etapes_niveaux
52       else:
53           liste = self.object.etapes
54       try:
55         value = liste[key]
56       except KeyError:
57         continue
58       def setfunction(value, key=key, object=liste):
59         object[key] = value
60       item =self.make_objecttreeitem(self.appli,value.ident() + " : ", value, setfunction)
61       sublist.append(item)
62     return sublist
63
64   def additem(self,name,pos):
65       if isinstance(name,Objecttreeitem.TreeItem) :
66           cmd=self.object.addentite(name.getObject(),pos)
67       else :
68           cmd = self.object.addentite(name,pos)
69       item = self.make_objecttreeitem(self.appli,cmd.nom + " : ", cmd)
70       return item
71
72   def suppitem(self,item) :
73     # item = item de l'ETAPE à supprimer du JDC
74     # item.getObject() = ETAPE ou COMMENTAIRE
75     # self.object = JDC
76     itemobject=item.getObject()
77     if self.object.suppentite(itemobject):
78        if isinstance(item.object,commentaire.COMMENTAIRE):
79           message = "Commentaire supprimé"
80        else :
81           message = "Commande " + itemobject.nom + " supprimée"
82        self.appli.affiche_infos(message)
83        return 1
84     else:
85        self.appli.affiche_infos("Pb interne : impossible de supprimer cet objet")
86        return 0
87
88   def GetText(self):
89       return ''
90
91     
92 import Accas
93 treeitem = NIVEAUTreeItem
94 objet = Accas.ETAPE_NIVEAU