From: PASCALE NOYRET Date: Wed, 27 Mar 2024 13:15:15 +0000 (+0100) Subject: pour mettre en place les ASSD . attention tous les chgts ne sont pas propages X-Git-Tag: V_demo_28_mars_2024~8 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=5a654c50a37db48448ae1fa6002caf735f8a425b;p=tools%2Feficas.git pour mettre en place les ASSD . attention tous les chgts ne sont pas propages --- diff --git a/Accas/accessor/A_MCSIMP.py b/Accas/accessor/A_MCSIMP.py index 4d1729c9..6af6cae6 100644 --- a/Accas/accessor/A_MCSIMP.py +++ b/Accas/accessor/A_MCSIMP.py @@ -71,7 +71,12 @@ class MCSIMP(A_OBJECT.OBJECT): monDico["title"] = self.nom monDico["key"] = self.idUnique if self.valeur != None: - monDico["wValue"] = str(self.valeur) + if self.waitUserAssd() or self.waitAssd() or self.waitUserAssdMultiple(): + if isinstance(self.valeur, list) or isinstance(self.valeur,tuple) : + monDico["wValue"] = [] + for v in self.valeur : monDico["wValue"].append(v.getName()) + else : monDico["wValue"] = self.valeur.getName() + else : monDico["wValue"] = str(self.valeur) else: monDico["wValue"] = "" monDico["classeAccas"] = self.nature @@ -91,7 +96,15 @@ class MCSIMP(A_OBJECT.OBJECT): if not chaineR.find('.') : chaineR = chaineR + '.' monDico["into"].append(chaineR) if not monDico["wValue"].find('.') : monDico["wValue"]+'.' - + if self.waitAssd(): + if self.waitUserAssdOrAssdMultipleEnCreation() : + monDico["into"] = None + else : + if self.waitUserAssdMultiple(): dict = self.getUserAssdPossible() + else : dict = self.etape.parent.getSdAvantDuBonType(self.etape,self.definition.type) + if self.waitUserAssd() : dict +=self.jdc.getSdCreeParObjet(self.definition.type) + monDico["into"] =[] + for r in dict : monDico["into"]. append(r.getName()) monDico["statut"] = self.definition.statut # a priori jamais vrai sauf si on a change un nom de userassd if monDico["validite"] == 0 and monDico["statut"] == "f": diff --git a/InterfaceGUI/Web/composimp.py b/InterfaceGUI/Web/composimp.py index 724fb39a..73798d91 100644 --- a/InterfaceGUI/Web/composimp.py +++ b/InterfaceGUI/Web/composimp.py @@ -31,7 +31,10 @@ from InterfaceGUI.Common.simp_treeItem_commun import SIMPTreeItemCommun class Node(browser.JDCNode,typeNode.PopUpMenuNodeMinimal): - def traiteValeurSaisie(self, valeur): + def traiteValeurSaisie(self, valeur): + if self.item.waitUserAssdOrAssdMultipleEnCreation() : + validite,commentaire=self.creeUserASSD(valeur) + return (self.item.idUnique, validite, commentaire) if self.item.get_definition().max==1 : self.politique = PolitiqueUnique (self, self.editor) else : self.politique = PolitiquePlusieurs(self, self.editor) if self.item.definition.validators != None : @@ -40,9 +43,19 @@ class Node(browser.JDCNode,typeNode.PopUpMenuNodeMinimal): return (self.item.idUnique, False ,commentaire) nouvelleValeurFormat=self.politique.getValeurTexte(valeur) validite,commentaire=self.politique.recordValeur(nouvelleValeurFormat) - if not validite : - return (self.item.idUnique, False, commentaire) - return (self.item.idUnique, True, commentaire) + return (self.item.idUnique, validite, commentaire) + + + def creeUserASSD(self, valeur): + if self.item.valeur == None : enCreation = True + else : enCreation = False + if enCreation : validite,commentaire=self.item.creeUserASSDetSetValeur(valeur) + else : validite,commentaire=self.item.renommeSdCree(valeur) + if not enCreation : self.node.updateNodeTexte() + #PNPN TODFO + #PNPNPN -- signal update sur les fils ou ? + #self.parentQt.propageChange(self.objSimp.definition.type[0],self) + return (validite, commentaire) class SIMPTreeItem(SIMPTreeItemCommun): itemNode = Node