X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=InterfaceQT4%2FmonWidgetFormule.py;h=cff3948854dff826ff93d5697fcb1fe83a49f197;hb=8b202e4a0e933f400731a984944bf84aa9a06f48;hp=e225b478fa54771c9567c81571d50eaac3d2695d;hpb=ab74045f5eb6d427c36b190477f223dac234b54f;p=tools%2Feficas.git diff --git a/InterfaceQT4/monWidgetFormule.py b/InterfaceQT4/monWidgetFormule.py index e225b478..cff39488 100644 --- a/InterfaceQT4/monWidgetFormule.py +++ b/InterfaceQT4/monWidgetFormule.py @@ -1,4 +1,4 @@ -# Copyright (C) 2007-2013 EDF R&D +# Copyright (C) 2007-2021 EDF R&D # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -19,206 +19,185 @@ # Modules Python # Modules Eficas +from __future__ import absolute_import +try : + from builtins import str +except : pass + from desWidgetFormule import Ui_WidgetFormule -from gereIcones import FacultatifOuOptionnel -from determine import monEnvQT5 +from .gereIcones import FacultatifOuOptionnel -if monEnvQT5: - from PyQt5.QtWidgets import QWidget - from PyQt5.QtGui import QIcon - from PyQt5.QtCore import Qt -else : - from PyQt4.QtGui import * - from PyQt4.QtCore import * +from PyQt5.QtWidgets import QWidget +from PyQt5.QtGui import QIcon +from PyQt5.QtCore import Qt from Extensions.i18n import tr -import Accas +import Accas import os -import string - + # Import des panels class MonWidgetFormule(QWidget,Ui_WidgetFormule,FacultatifOuOptionnel): - """ - """ - def __init__(self,node,editor,etape): - #print "MonWidgetFormule ", self - QWidget.__init__(self,None) - self.node=node - self.node.fenetre=self - self.editor=editor - self.appliEficas=self.editor.appliEficas - self.repIcon=self.appliEficas.repIcon - self.setupUi(self) - - - self.setIconePoubelle() - self.setIconesGenerales() - self.setValeurs() - self.setValide() - - - if monEnvQT5 : - #if self.editor.code in ['MAP','CARMELCND','CF'] : self.bCatalogue.close() - if self.editor.code in ['MAP','CARMELCND'] : self.bCatalogue.close() - else : self.bCatalogue.clicked.connect(self.afficheCatalogue) - #if self.editor.code in ['Adao','MAP','CF'] : - if self.editor.code in ['Adao','MAP','ADAO'] : - self.bAvant.close() - self.bApres.close() - else : - self.bAvant.clicked.connect(self.afficheAvant) - self.bApres.clicked.connect(self.afficheApres) - self.LENom.returnPressed.connect(self.nomChange) - self.LENomFormule.returnPressed.connect(self.NomFormuleSaisi) - self.LENomsArgs.returnPressed.connect(self.argsSaisis) - self.LECorpsFormule.returnPressed.connect(self.FormuleSaisie) - else : - if self.editor.code in ['MAP','CARMELCND'] : self.bCatalogue.close() - else : self.connect(self.bCatalogue,SIGNAL("clicked()"), self.afficheCatalogue) - if self.editor.code in ['Adao','MAP'] : - self.bAvant.close() - self.bApres.close() - else : - self.connect(self.bAvant,SIGNAL("clicked()"), self.afficheAvant) - self.connect(self.bApres,SIGNAL("clicked()"), self.afficheApres) - self.connect(self.LENom,SIGNAL("returnPressed()"),self.nomChange) - self.connect(self.LENomFormule,SIGNAL("returnPressed()"),self.NomFormuleSaisi) - self.connect(self.LENomsArgs,SIGNAL("returnPressed()"),self.argsSaisis) - self.connect(self.LECorpsFormule,SIGNAL("returnPressed()"),self.FormuleSaisie) - - - - self.racine=self.node.tree.racine - self.monOptionnel=None - self.editor.fermeOptionnel() - #print "fin init de widget Commande" - - - def donnePremier(self): - self.listeAffichageWidget[0].setFocus(7) - - - def setValeurs(self): - self.LENomFormule.setText(self.node.item.get_nom()) - self.LECorpsFormule.setText(self.node.item.get_corps()) + """ + """ + def __init__(self,node,editor,etape): + #print "MonWidgetFormule ", self + QWidget.__init__(self,None) + self.node=node + self.node.fenetre=self + self.editor=editor + self.appliEficas=self.editor.appliEficas + self.repIcon=self.appliEficas.repIcon + self.setupUi(self) + + + self.setIconePoubelle() + self.setIconesGenerales() + self.setValeurs() + self.setValide() + + + if self.editor.code in ['MAP','CARMELCND'] : self.bCatalogue.close() + else : self.bCatalogue.clicked.connect(self.afficheCatalogue) + if self.editor.code in ['Adao','MAP','ADAO'] : + self.bAvant.close() + self.bApres.close() + else : + self.bAvant.clicked.connect(self.afficheAvant) + self.bApres.clicked.connect(self.afficheApres) + self.LENom.returnPressed.connect(self.nomChange) + self.LENomFormule.returnPressed.connect(self.nomFormuleSaisi) + self.LENomsArgs.returnPressed.connect(self.argsSaisis) + self.LECorpsFormule.returnPressed.connect(self.FormuleSaisie) + + + + self.racine=self.node.tree.racine + self.monOptionnel=None + self.editor.fermeOptionnel() + #print "fin init de widget Commande" + + + def donnePremier(self): + self.listeAffichageWidget[0].setFocus(7) + + + def setValeurs(self): + self.LENomFormule.setText(self.node.item.getNom()) + self.LECorpsFormule.setText(self.node.item.getCorps()) texte_args="" - if self.node.item.get_args() != None : - for i in self.node.item.get_args() : + if self.node.item.getArgs() != None : + for i in self.node.item.getArgs() : if texte_args != "" : texte_args = texte_args +"," texte_args=texte_args + i self.LENomsArgs.setText(texte_args) - def nomChange(self): - nom = str(self.LENom.text()) - self.LENomFormule.setText(nom) - self.NomFormuleSaisi() - - - def afficheCatalogue(self): - if self.editor.widgetOptionnel != None : self.monOptionnel.hide() - self.racine.affichePanneau() - if self.node : self.node.select() - else : self.racine.select() - - def afficheApres(self): - self.node.selectApres() - - def afficheAvant(self): - self.node.selectAvant() - - def setValide(self): - if not(hasattr (self,'RBValide')) : return - icon = QIcon() - if self.node.item.object.isvalid() : - icon=QIcon(self.repIcon+"/ast-green-ball.png") - else : - icon=QIcon(self.repIcon+"/ast-red-ball.png") - if self.node.item.GetIconName() == "ast-yellow-square" : - icon=QIcon(self.repIcon+"/ast-yel-ball.png") - self.RBValide.setIcon(icon) - - - def NomFormuleSaisi(self): - nomFormule = str(self.LENomFormule.text()) - if nomFormule == '' : return - self.LENom.setText(nomFormule) - test,erreur = self.node.item.verif_nom(nomFormule) - if test : - commentaire=nomFormule+tr(" est un nom valide pour une FORMULE") - self.editor.affiche_infos(commentaire) - else : - commentaire=nomFormule+tr(" n'est pas un nom valide pour une FORMULE") - self.editor.affiche_infos(commentaire,Qt.red) - return - if str(self.LENomsArgs.text()) != "" and str(self.LECorpsFormule.text())!= "" : self.BOkPressedFormule() - self.LENomsArgs.setFocus(7) - - def argsSaisis(self): - arguments = str(self.LENomsArgs.text()) - if arguments == '' : return - test,erreur = self.node.item.verif_arguments(arguments) - if test: - commentaire=tr("Argument(s) valide(s) pour une FORMULE") - self.editor.affiche_infos(commentaire) - else: - commentaire=tr("Argument(s) invalide(s) pour une FORMULE") - self.editor.affiche_infos(commentaire,Qt.red) - if str(self.LECorpsFormule.text()) != "" and str(self.LENomFormule.text())!= "" : self.BOkPressedFormule() - self.LECorpsFormule.setFocus(7) - - def FormuleSaisie(self): - nomFormule = str(self.LENomFormule.text()) - arguments = str(self.LENomsArgs.text()) - expression = str(self.LECorpsFormule.text()) - if expression == '' : return - test,erreur = self.node.item.verif_formule_python((nomFormule,"REEL",arguments,expression)) - - if test: - commentaire=tr("Corps de FORMULE valide") - self.editor.affiche_infos(commentaire) - else: - commentaire=tr("Corps de FORMULE invalide") - self.editor.affiche_infos(commentaire,Qt.red) - if str(self.LENomsArgs.text()) != "" and str(self.LENomFormule.text())!= "" : self.BOkPressedFormule() - - def BOkPressedFormule(self): - #print dir(self) - #if self.parent.modified == 'n' : self.parent.init_modif() - - nomFormule = str(self.LENomFormule.text()) - test,erreur = self.node.item.verif_nom(nomFormule) - if not test : - self.editor.affiche_infos(erreur,Qt.red) - return - - arguments = str(self.LENomsArgs.text()) - test,erreur = self.node.item.verif_arguments(arguments) - if not test : - self.editor.affiche_infos(erreur,Qt.red) - return - - expression = str(self.LECorpsFormule.text()) - test,erreur = self.node.item.verif_formule_python((nomFormule,"REEL",arguments,expression)) - if not test : - self.editor.affiche_infos(erreur,Qt.red) - return - - test=self.node.item.object.update_formule_python(formule=(nomFormule,"REEL",arguments,expression)) - test,erreur = self.node.item.save_formule(nomFormule,"REEL",arguments,expression) - if test : - #self.node.update_texte() - #self.node.update_label() - #self.node.update_node() - self.node.onValid() - self.node.update_valid() - commentaire = "Formule saisie" - self.editor.affiche_infos(commentaire) - else: - commentaire ="Formule incorrecte : " + erreur - self.editor.affiche_infos(commentaire,Qt.red) - self.editor.init_modif() - + def nomChange(self): + nom = str(self.LENom.text()) + self.LENomFormule.setText(nom) + self.nomFormuleSaisi() + + + def afficheCatalogue(self): + if self.editor.widgetOptionnel != None : self.monOptionnel.hide() + self.racine.affichePanneau() + if self.node : self.node.select() + else : self.racine.select() + + def afficheApres(self): + self.node.selectApres() + + def afficheAvant(self): + self.node.selectAvant() + + def setValide(self): + if not(hasattr (self,'RBValide')) : return + icon = QIcon() + if self.node.item.object.isValid() : + icon=QIcon(self.repIcon+"/ast-green-ball.png") + else : + icon=QIcon(self.repIcon+"/ast-red-ball.png") + if self.node.item.getIconName() == "ast-yellow-square" : + icon=QIcon(self.repIcon+"/ast-yel-ball.png") + self.RBValide.setIcon(icon) + + + def nomFormuleSaisi(self): + nomFormule = str(self.LENomFormule.text()) + if nomFormule == '' : return + self.LENom.setText(nomFormule) + test,erreur = self.node.item.verifNom(nomFormule) + if test : + commentaire=nomFormule+tr(" est un nom valide pour une FORMULE") + self.editor.afficheInfos(commentaire) + else : + commentaire=nomFormule+tr(" n'est pas un nom valide pour une FORMULE") + self.editor.afficheInfos(commentaire,Qt.red) + return + if str(self.LENomsArgs.text()) != "" and str(self.LECorpsFormule.text())!= "" : self.BOkPressedFormule() + self.LENomsArgs.setFocus(7) + + def argsSaisis(self): + arguments = str(self.LENomsArgs.text()) + if arguments == '' : return + test,erreur = self.node.item.verifArguments(arguments) + if test: + commentaire=tr("Argument(s) valide(s) pour une FORMULE") + self.editor.afficheInfos(commentaire) + else: + commentaire=tr("Argument(s) invalide(s) pour une FORMULE") + self.editor.afficheInfos(commentaire,Qt.red) + if str(self.LECorpsFormule.text()) != "" and str(self.LENomFormule.text())!= "" : self.BOkPressedFormule() + self.LECorpsFormule.setFocus(7) + + def FormuleSaisie(self): + nomFormule = str(self.LENomFormule.text()) + arguments = str(self.LENomsArgs.text()) + expression = str(self.LECorpsFormule.text()) + if expression == '' : return + test,erreur = self.node.item.verifFormule_python((nomFormule,"REEL",arguments,expression)) + + if test: + commentaire=tr("Corps de FORMULE valide") + self.editor.afficheInfos(commentaire) + else: + commentaire=tr("Corps de FORMULE invalide") + self.editor.afficheInfos(commentaire,Qt.red) + if str(self.LENomsArgs.text()) != "" and str(self.LENomFormule.text())!= "" : self.BOkPressedFormule() + + def BOkPressedFormule(self): + #print dir(self) + #if self.parent.modified == 'n' : self.parent.initModif() + + nomFormule = str(self.LENomFormule.text()) + test,erreur = self.node.item.verifNom(nomFormule) + if not test : + self.editor.afficheInfos(erreur,Qt.red) + return + + arguments = str(self.LENomsArgs.text()) + test,erreur = self.node.item.verifArguments(arguments) + if not test : + self.editor.afficheInfos(erreur,Qt.red) + return + + expression = str(self.LECorpsFormule.text()) + test,erreur = self.node.item.verifFormule_python((nomFormule,"REEL",arguments,expression)) + if not test : + self.editor.afficheInfos(erreur,Qt.red) + return + + test=self.node.item.object.updateFormulePython(formule=(nomFormule,"REEL",arguments,expression)) + test,erreur = self.node.item.saveFormule(nomFormule,"REEL",arguments,expression) + if test : + self.node.onValid() + self.node.update_valid() + commentaire = "Formule saisie" + self.editor.afficheInfos(commentaire) + else: + commentaire ="Formule incorrecte : " + erreur + self.editor.afficheInfos(commentaire,Qt.red) + self.editor.initModif()