self.item.connect("valid",self.onValid,())
self.item.connect("supp" ,self.onSupp,())
self.item.connect("add" ,self.onAdd,())
+ self.state=""
def build_children(self,posInsertion=10000):
#
# #------------------------------------------------------------------
def onValid(self):
+ #print "onValid ", self, " ", self.item.nom
if self.item.nom == "VARIABLE" and self.item.isvalid():
self.item.jdc.recalcule_etat_correlation()
+ if hasattr(self.item,'forceRecalcul'):
+ self.forceRecalculChildren(self.item.forceRecalcul)
self.editor.init_modif()
self.update_node_valid()
self.update_node_label()
self.update_node_texte()
def onAdd(self,object):
- #import traceback
- #print traceback.print_stack()
self.editor.init_modif()
self.update_nodes()
def onSupp(self,object):
+ #print "onSupp"
self.editor.init_modif()
self.update_nodes()
-
def update_node_valid(self):
"""Cette methode remet a jour la validite du noeud (icone)
if self.isExpanded() :
for child in self.children:
if child.isHidden() == false : child.update_texte()
+
+
+ def forceRecalculChildren(self,niveau):
+ if self.state=='recalcule' :
+ self.state=""
+ return
+ self.state='recalcule'
+ if hasattr(self.item,'object'):
+ self.item.object.state="modified"
+ for child in self.children:
+ if niveau > 0 : child.forceRecalculChildren(niveau - 1)
+
def doPaste(self,node_selected):
self.appli.affiche_infos('Impossible de supprimer un mot-clé obligatoire ',Qt.red)
return 0
if self.object.suppentite(itemobject):
- message = "Mot-clé " + itemobject.nom + " supprimé"
+ message = "Mot-clef " + itemobject.nom + " supprime"
self.appli.affiche_infos(message)
return 1
else :
if self.listeValeursCourantes == [] :
self.editor.affiche_infos("Pas de validation d un groupe vide",Qt.red)
return
+ if hasattr(self.node.item.definition.validators,'verifie_liste'):
+ if self.node.item.definition.validators.verifie_liste(self.listeValeursCourantes) == 0 :
+ self.editor.affiche_infos("les valeurs ne sont pas correctes",Qt.red)
+ return
self.node.item.set_valeur(self.listeValeursCourantes)
self.editor.affiche_infos("Valeur Acceptée")
self.listBoxVal.clear()
if hasattr(self.node.item.definition.validators,'set_liste'):
self.node.item.definition.validators.set_liste(self.node.item)
+ if self.node.item.isvalid() == 0 : listeDejaLa=[]
lChoix=self.node.item.get_liste_possible(listeDejaLa)
for valeur in lChoix :
self.listBoxVal.addItem( str(valeur) )