From: pascale.noyret Date: Wed, 16 Mar 2016 09:05:03 +0000 (+0100) Subject: import, formule, param et etc X-Git-Tag: V8_1_0~39 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=1ef6f82e922819d11fc326c6dfdd578999f7fa5d;p=tools%2Feficas.git import, formule, param et etc --- diff --git a/Ihm/I_FORM_ETAPE.py b/Ihm/I_FORM_ETAPE.py index ba3f97c8..37323c9a 100644 --- a/Ihm/I_FORM_ETAPE.py +++ b/Ihm/I_FORM_ETAPE.py @@ -19,7 +19,9 @@ # """ """ -import string,traceback +import string,traceback,re +identifier = re.compile(r"^[^\d\W]\w*\Z", re.UNICODE) + from Extensions.i18n import tr from I_MACRO_ETAPE import MACRO_ETAPE @@ -110,6 +112,8 @@ class FORM_ETAPE(MACRO_ETAPE): test = 1 arguments = arguments[1:-1] # on enlève les parenthèses ouvrante et fermante l_arguments = string.split(arguments,',') + for a in l_arguments : + if not re.match(identifier,str(a)) : return 0, str(a)+" n est pas un identifiant" return test,erreur def verif_corps(self,corps=None,arguments=None): diff --git a/InterfaceQT4/browser.py b/InterfaceQT4/browser.py index ca143810..acc78ced 100644 --- a/InterfaceQT4/browser.py +++ b/InterfaceQT4/browser.py @@ -686,6 +686,8 @@ class JDCNode(QTreeWidgetItem,GereRegles): def update_node_texte(self): """ Met a jour les noms des SD et valeurs des mots-cles """ + print "kkkkkkkkkkkk" + print self.item.GetText() value = self.item.GetText() self.setText(1, value) diff --git a/InterfaceQT4/compocomm.py b/InterfaceQT4/compocomm.py index 424baf7c..118d13c6 100644 --- a/InterfaceQT4/compocomm.py +++ b/InterfaceQT4/compocomm.py @@ -44,8 +44,8 @@ class Node(browser.JDCNode,typeNode.PopUpMenuNodePartiel): def createPopUpMenu(self): typeNode.PopUpMenuNodePartiel.createPopUpMenu(self) self.Decommente = QAction(tr("Decommenter"),self.tree) - if monEnvQT5 : self.tree.connect(self.Decommente,SIGNAL("triggered()"),self.Decommenter) - else : self.Decommente.triggered(self.Decommenter) + if monEnvQT5 : self.Decommente.triggered(self.Decommenter) + else : self.tree.connect(self.Decommente,SIGNAL("triggered()"),self.Decommenter) self.Decommente.setStatusTip(tr("Decommente la commande ")) if hasattr(self.item,'uncomment'): diff --git a/InterfaceQT4/compooper.py b/InterfaceQT4/compooper.py index 9978be11..9fd38042 100644 --- a/InterfaceQT4/compooper.py +++ b/InterfaceQT4/compooper.py @@ -40,10 +40,10 @@ class Node(browser.JDCNode, typeNode.PopUpMenuNode): def select(self): browser.JDCNode.select(self) - #self.treeParent.tree.openPersistentEditor(self,1) - #self.monWidgetNom=self.treeParent.tree.itemWidget(self,1) - #self.treeParent.tree.connect(self.monWidgetNom,SIGNAL("returnPressed()"), self.nomme) - #if self.item.GetIconName() == "ast-red-square" : self.monWidgetNom.setDisabled(True) + self.treeParent.tree.openPersistentEditor(self,1) + self.monWidgetNom=self.treeParent.tree.itemWidget(self,1) + self.monWidgetNom.returnPressed.connect(self.nomme) + if self.item.GetIconName() == "ast-red-square" : self.monWidgetNom.setDisabled(True) #else : self.monWidgetNom.setFocus() ;self.monWidgetNom.setDisabled(False) def nomme(self): @@ -58,7 +58,7 @@ class Node(browser.JDCNode, typeNode.PopUpMenuNode): self.editor.affiche_commentaire(tr("Nommage du concept effectue")) self.onValid() try : - self.editor.panel.LENomConcept.setText(nom) + self.fenetre.LENom.setText(nom) except : pass diff --git a/InterfaceQT4/editor.py b/InterfaceQT4/editor.py index 076c60a2..12b2616a 100755 --- a/InterfaceQT4/editor.py +++ b/InterfaceQT4/editor.py @@ -25,7 +25,7 @@ from determine import monEnvQT5 if monEnvQT5: from PyQt5.QtWidgets import QWidget, QMessageBox, QFileDialog, QApplication from PyQt5.QtGui import QPalette - from PyQt5.QtCore import QProcess, QFileInfo, QTimer, Qt + from PyQt5.QtCore import QProcess, QFileInfo, QTimer, Qt, QDir, QSize else : from PyQt4.QtGui import * from PyQt4.QtCore import * @@ -953,15 +953,23 @@ class JDCEditor(Ui_baseWidget,QWidget): tr("sauvegarde"), path, extensions,None, QFileDialog.DontConfirmOverwrite) - if fn.isNull(): return (0, None) if fn == None : return (0, None) if monEnvQT5 : fn=fn[0] + if fn=='': return (0, None) ext = QFileInfo(fn).suffix() - if ext.isEmpty(): fn.append(extension) + if ext == '': fn+=extension if QFileInfo(fn).exists(): - abort = QMessageBox.warning(self, + if monEnvQT5 : + msgBox = QMessageBox(self) + msgBox.setWindowTitle(tr("Sauvegarde du Fichier")) + msgBox.setText(tr("Le fichier %s existe deja.", unicode(fn))) + msgBox.addButton(tr("&Ecraser"),0) + msgBox.addButton(tr("&Abandonner"),1) + abort=msgBox.exec_() + else : + abort = QMessageBox.warning(self, tr("Sauvegarde du Fichier"), tr("Le fichier %s existe deja.",str(fn)), tr("&Ecraser"), @@ -1131,11 +1139,11 @@ class JDCEditor(Ui_baseWidget,QWidget): bOK, fn=self.determineNomFichier(path,extension) if bOK == 0 : return (0, None) if fn == None : return (0, None) - if fn.isNull(): return (0, None) + if fn== '' : return (0, None) ulfile = os.path.abspath(unicode(fn)) self.appliEficas.CONFIGURATION.savedir=os.path.split(ulfile)[0] - fn = unicode(QDir.convertSeparators(fn)) + fn = unicode(QDir.toNativeSeparators(fn)) newName = fn @@ -1212,7 +1220,7 @@ class JDCEditor(Ui_baseWidget,QWidget): self.appliEficas.CONFIGURATION.savedir) # ce retour est impose par le get_file d'I_JDC - if fn.isNull(): return None," " + if fn== '' : return None," " if not fn : return (0, " ") if monEnvQT5 : fn=fn[0] @@ -1388,9 +1396,7 @@ class JDCEditor(Ui_baseWidget,QWidget): #----------------------------- def saveSplitterSizes(self): #---------------------------- - if self.splitter != None : - self.splitterSizes = self.splitter.sizes() - + if self.splitter != None : self.splitterSizes = self.splitter.sizes() #----------------------------- def restoreSplitterSizes(self): @@ -1404,6 +1410,21 @@ class JDCEditor(Ui_baseWidget,QWidget): newSizes[len(newSizes)-1] = self.splitterSizes[len(self.splitterSizes)-1] self.splitter.setSizes(newSizes) + #----------------------------- + def restoreTailleTree(self): + #---------------------------- + if hasattr(self,'splitterSizes') and self.splitterSizes != [] : + nbFenetre=len(self.splitter.sizes()) + if nbFenetre == len(self.splitterSizes) : + self.splitter.setSizes(self.splitterSizes) + return + + if self.widgetOptionnel==None: + print "kkkkkkkkkkkkkk" + # + #PN + + #----------------------------- def getTreeIndex(self,noeud): #---------------------------- diff --git a/InterfaceQT4/gereIcones.py b/InterfaceQT4/gereIcones.py index 0d1b912a..36d63a85 100644 --- a/InterfaceQT4/gereIcones.py +++ b/InterfaceQT4/gereIcones.py @@ -24,7 +24,7 @@ from determine import monEnvQT5 if monEnvQT5 : from PyQt5.QtWidgets import QMessageBox, QFileDialog from PyQt5.QtGui import QIcon - from PyQt5.QtCore import QFileInfo, Qt + from PyQt5.QtCore import QFileInfo, Qt, QSize else: from PyQt4.QtGui import * @@ -246,8 +246,8 @@ class ContientIcones: self.appliEficas.CONFIGURATION.savedir, filters) - if not(fichier.isNull()): - if monEnvQT5 : fichier=fichier[0] + if monEnvQT5 : fichier=fichier[0] + if not(fichier): ulfile = os.path.abspath(unicode(fichier)) self.appliEficas.CONFIGURATION.savedir=os.path.split(ulfile)[0] self.lineEditVal.setText(fichier) diff --git a/InterfaceQT4/gereListe.py b/InterfaceQT4/gereListe.py index a0426de0..7f22797b 100644 --- a/InterfaceQT4/gereListe.py +++ b/InterfaceQT4/gereListe.py @@ -23,8 +23,9 @@ import traceback from determine import monEnvQT5 if monEnvQT5: - from PyQt5.QtWidgets import QLineEdit, QLabel, QIcon - from PyQt5.QtCore import QEvent + from PyQt5.QtWidgets import QLineEdit, QLabel + from PyQt5.QtCore import QEvent + from PyQt5.QtGui import QIcon else : from PyQt4.QtGui import * from PyQt4.QtCore import * diff --git a/InterfaceQT4/monChoixCode.py b/InterfaceQT4/monChoixCode.py index e362e581..34ef7c28 100644 --- a/InterfaceQT4/monChoixCode.py +++ b/InterfaceQT4/monChoixCode.py @@ -22,10 +22,11 @@ import os,sys,re from desChoixCode import Ui_ChoixCode -f monEnvQT5: +from determine import monEnvQT5 +if monEnvQT5: from PyQt5.QtWidgets import QDialog, QRadioButton from PyQt5.QtGui import QPalette - from PyQt5.QtCore import QProcess, QFileInfo, Qt + from PyQt5.QtCore import QProcess, QFileInfo, Qt, QSize else : from PyQt4.QtGui import * from PyQt4.QtCore import * diff --git a/InterfaceQT4/monChoixCommande.py b/InterfaceQT4/monChoixCommande.py index a8cc984e..5f887cce 100644 --- a/InterfaceQT4/monChoixCommande.py +++ b/InterfaceQT4/monChoixCommande.py @@ -70,6 +70,7 @@ class MonChoixCommande(Ui_ChoixCommandes,QWidget): self.RBClear.clicked.connect(self.clearFiltre) self.RBCasse.toggled.connect(self.ajouteRadioButtons) self.LEFiltre.returnPressed.connect(self.ajouteRadioButtons) + self.LEFiltre.textChanged.connect(self.ajouteRadioButtons) else : self.connect(self.RBalpha,SIGNAL("clicked()"),self.afficheAlpha) self.connect(self.RBGroupe,SIGNAL("clicked()"),self.afficheGroupe) diff --git a/InterfaceQT4/monViewTexte.py b/InterfaceQT4/monViewTexte.py index 690d8403..02af852d 100644 --- a/InterfaceQT4/monViewTexte.py +++ b/InterfaceQT4/monViewTexte.py @@ -26,6 +26,7 @@ from Extensions.i18n import tr from determine import monEnvQT5 if monEnvQT5 : from PyQt5.QtWidgets import QDialog, QMessageBox + from PyQt5.QtCore import QSize else : from PyQt4.QtGui import * from PyQt4.QtCore import * @@ -65,9 +66,9 @@ class ViewText(Ui_dView,QDialog): fn = QFileDialog.getSaveFileName(None, tr("Sauvegarder le fichier"), dir) - if fn.isNull() : return - if fn == None : return (0, None) if monEnvQT5 : fn=fn[0] + if fn == "" : return + if fn == None : return (0, None) ulfile = os.path.abspath(unicode(fn)) if self.editor != None : diff --git a/InterfaceQT4/monWidgetCommande.py b/InterfaceQT4/monWidgetCommande.py index 83b94672..4bf5aa53 100644 --- a/InterfaceQT4/monWidgetCommande.py +++ b/InterfaceQT4/monWidgetCommande.py @@ -51,7 +51,7 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): self.ensure=0 Groupe.__init__(self,node,editor,None,etape.definition,etape,1,self) - if node.item.get_fr() != "" : self.labelDoc.setText(QString(node.item.get_fr())) + if node.item.get_fr() != "" : self.labelDoc.setText(node.item.get_fr()) else : self.labelDoc.close() if (etape.get_type_produit()==None): self.LENom.close() @@ -88,7 +88,7 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): self.connect(self.bApres,SIGNAL("clicked()"), self.afficheApres) self.connect(self.LENom,SIGNAL("returnPressed()"),self.nomChange) - self.racine=self.node.tree.racine + self.racine=self.node.tree.racine if self.node.item.GetIconName() == "ast-red-square" : self.LENom.setDisabled(True) self.setAcceptDrops(True) @@ -101,6 +101,7 @@ class MonWidgetCommande(Ui_WidgetCommande,Groupe): #if hasattr(self.editor,'widgetOptionnel') : if self.editor.widgetOptionnel!= None : self.monOptionnel=self.editor.widgetOptionnel + self.editor.restoreSplitterSizes() else : self.monOptionnel=MonWidgetOptionnel(self) self.editor.widgetOptionnel=self.monOptionnel diff --git a/InterfaceQT4/monWidgetCommentaire.py b/InterfaceQT4/monWidgetCommentaire.py index 1d422a77..5b222fb2 100644 --- a/InterfaceQT4/monWidgetCommentaire.py +++ b/InterfaceQT4/monWidgetCommentaire.py @@ -21,10 +21,11 @@ from determine import monEnvQT5 if monEnvQT5: - from PyQt5.QtWidgets import QWidget + from PyQt5.QtWidgets import QWidget + from PyQt5.QtCore import Qt else : from PyQt4.QtGui import * - from PyQt4.QtCore import + from PyQt4.QtCore import * from desWidgetCommentaire import Ui_WidgetCommentaire from gereIcones import FacultatifOuOptionnel @@ -49,33 +50,58 @@ class MonWidgetCommentaire(QWidget,Ui_WidgetCommentaire,FacultatifOuOptionnel): self.repIcon=self.appliEficas.repIcon self.setIconePoubelle() self.remplitTexte() - if self.editor.code in ['MAP','CARMELCND'] : self.bCatalogue.close() - elif monEnvQT5 : self.bCatalogue.clicked.connect(self.afficheCatalogue) - else : self.connect(self.bCatalogue,SIGNAL("clicked()"), self.afficheCatalogue) - if monEnvQT5 : self.commentaireLE.returnPressed(TexteCommentaireEntre) - else : self.connect(self.commentaireLE,SIGNAL("returnPressed()"),self.TexteCommentaireEntre) + self.monOptionnel=None + + if monEnvQT5 : + self.commentaireTE.textChanged.connect(self.TexteCommentaireEntre) + if self.editor.code in ['MAP','CARMELCND'] : self.bCatalogue.close() + else : self.bCatalogue.clicked.connect(self.afficheCatalogue) + if self.editor.code in ['Adao','MAP'] : + self.bAvant.close() + self.bApres.close() + else : + self.bAvant.clicked.connect(self.afficheAvant) + self.bApres.clicked.connect(self.afficheApres) + 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) + + def afficheApres(self): + self.node.selectApres() + + def afficheAvant(self): + self.node.selectAvant() + def afficheCatalogue(self): - if self.editor.code != "CARMELCND" : self.monOptionnel.hide() self.node.tree.racine.affichePanneau() if self.node : self.node.select() else : self.node.tree.racine.select() def remplitTexte(self): texte=self.node.item.get_valeur() - self.commentaireLE.setText(texte) + self.commentaireTE.setText(texte) if self.editor.code == "CARMELCND" and texte[0:16]=="Cree - fichier :" : - self.commentaireLE.setDisabled(True) - self.commentaireLE.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") - self.commentaireLE.setToolTip(tr("Valeur non modifiable")) + self.commentaireTE.setReadOnly(True) + self.commentaireTE.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") + self.commentaireTE.setToolTip(tr("Valeur non modifiable")) + else : + self.commentaireTE.setReadOnly(False) def donnePremier(self): - self.commentaireLE.setFocus(7) + self.commentaireTE.setFocus(7) def TexteCommentaireEntre(self): - texte=str(self.commentaireLE.text()) + texte=str(self.commentaireTE.toPlainText()) + print texte self.editor.init_modif() self.node.item.set_valeur(texte) - self.node.update_node() + self.node.update_node_texte() diff --git a/InterfaceQT4/monWidgetCreeParam.py b/InterfaceQT4/monWidgetCreeParam.py index 34feff33..cbd9c6a7 100644 --- a/InterfaceQT4/monWidgetCreeParam.py +++ b/InterfaceQT4/monWidgetCreeParam.py @@ -26,6 +26,7 @@ pattern_name = re.compile(r'^[^\d\W]\w*\Z') from determine import monEnvQT5 if monEnvQT5 : from PyQt5.QtWidgets import QDialog + from PyQt5.QtCore import Qt else : from PyQt4.QtGui import * from PyQt4.QtCore import * @@ -53,8 +54,8 @@ class MonWidgetCreeParam(Ui_desWidgetCreeParam,QDialog): self.connect(self.lineEditNom,SIGNAL("returnPressed()"),self.lineEditNomReturnPressed) def connecterSignaux(self) : - self.lineEditVal.returnPressed(self.lineEditValReturnPressed) - self.lineEditNom.returnPressed(self.lineEditNomReturnPressed) + self.lineEditVal.returnPressed.connect(self.lineEditValReturnPressed) + self.lineEditNom.returnPressed.connect(self.lineEditNomReturnPressed) def CreeParametre(self): nom=str(self.lineEditNom.text()) @@ -68,10 +69,15 @@ class MonWidgetCreeParam(Ui_desWidgetCreeParam,QDialog): param=itemAvant.addParameters(True) param.item.set_nom(nom) #PN self.val permet d entrer du texte - param.item.set_valeur(val) + param.item.set_valeur(self.val) param.update_node_texte() param.update_node_valid() - self.LBParam.addItem(QString(repr(param.item))) + self.LBParam.addItem((repr(param.item))) + param.select() + self.lineEditVal.setText("") + self.lineEditNom.setText("") + self.lineEditNom.setFocus(True) + def lineEditValReturnPressed(self): @@ -124,8 +130,8 @@ class MonWidgetCreeParam(Ui_desWidgetCreeParam,QDialog): def initToutesVal(self): self.LBParam.clear() for param in self.listeTousParam : - self.LBParam.addItem(QString(repr(param))) - self.dictListe[QString(repr(param))] = param + self.LBParam.addItem((repr(param))) + self.dictListe[repr(param)] = param def valideParam(self): if self.LBParam.selectedItems()== None : return diff --git a/InterfaceQT4/monWidgetFormule.py b/InterfaceQT4/monWidgetFormule.py new file mode 100644 index 00000000..f9cac5b7 --- /dev/null +++ b/InterfaceQT4/monWidgetFormule.py @@ -0,0 +1,211 @@ +# Copyright (C) 2007-2013 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 +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# Modules Python +# Modules Eficas + +from desWidgetFormule import Ui_WidgetFormule +from gereIcones import FacultatifOuOptionnel +from determine import monEnvQT5 + +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 Extensions.i18n import tr +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.setValide() + + + if monEnvQT5 : + if self.editor.code in ['MAP','CARMELCND'] : self.bCatalogue.close() + else : self.bCatalogue.clicked.connect(self.afficheCatalogue) + if self.editor.code in ['Adao','MAP'] : + 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.restoreSplitterSizes() + #print "fin init de widget Commande" + + + def donnePremier(self): + self.listeAffichageWidget[0].setFocus(7) + + + + 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() + diff --git a/InterfaceQT4/monWidgetInactif.py b/InterfaceQT4/monWidgetInactif.py index c3929af5..6ab006ae 100644 --- a/InterfaceQT4/monWidgetInactif.py +++ b/InterfaceQT4/monWidgetInactif.py @@ -66,6 +66,8 @@ class MonWidgetInactif(QWidget,Ui_WidgetInactif): def traiteClicSurLabel(self): pass + def donnePremier(self): + pass def setValide(self): pass diff --git a/InterfaceQT4/monWidgetMatrice.py b/InterfaceQT4/monWidgetMatrice.py index 7e3cca49..9a7ba46e 100644 --- a/InterfaceQT4/monWidgetMatrice.py +++ b/InterfaceQT4/monWidgetMatrice.py @@ -28,6 +28,12 @@ from feuille import Feuille from desWidgetMatrice import Ui_desWidgetMatrice from determine import monEnvQT5 +if monEnvQT5 : + from PyQt5.QtCore import QSize +else : + from PyQt4.QtGui import * + from PyQt4.QtCore import * + class MonWidgetMatrice (Ui_desWidgetMatrice,Feuille): # c est juste la taille des differents widgets de base qui change diff --git a/InterfaceQT4/monWidgetOptionnel.py b/InterfaceQT4/monWidgetOptionnel.py index b63c469e..dd0b60e4 100644 --- a/InterfaceQT4/monWidgetOptionnel.py +++ b/InterfaceQT4/monWidgetOptionnel.py @@ -22,6 +22,7 @@ from determine import monEnvQT5 if monEnvQT5: from PyQt5.QtWidgets import QCheckBox, QWidget + from PyQt5.QtCore import Qt else : from PyQt4.QtGui import * from PyQt4.QtCore import * diff --git a/InterfaceQT4/monWidgetParam.py b/InterfaceQT4/monWidgetParam.py index b9c02483..e2b832b3 100644 --- a/InterfaceQT4/monWidgetParam.py +++ b/InterfaceQT4/monWidgetParam.py @@ -55,15 +55,15 @@ class MonWidgetParam(QWidget,Ui_WidgetParam,FacultatifOuOptionnel): self.setIconePoubelle() self.remplit() if self.editor.code in ['MAP','CARMELCND'] : self.bCatalogue.close() - elif monEnvQt5 : self.bCatalogue.clicked.connect(self.afficheCatalogue) + elif monEnvQT5 : self.bCatalogue.clicked.connect(self.afficheCatalogue) else : self.connect(self.bCatalogue,SIGNAL("clicked()"), self.afficheCatalogue) - if monEnvQt5 : - self.lineEditVal.returnPressed.connect.(self.LEValeurPressed) - self.lineEditNom.returnPressed.connect.(self.LENomPressed) - self.bAvant.clicked.connect.(self.afficheAvant) - self.bApres.clicked.connect.(self.afficheApres) - self.bVerifie.clicked.connect.(self.verifiePressed) + if monEnvQT5 : + self.lineEditVal.returnPressed.connect(self.LEValeurPressed) + self.lineEditNom.returnPressed.connect(self.LENomPressed) + self.bAvant.clicked.connect(self.afficheAvant) + self.bApres.clicked.connect(self.afficheApres) + self.bVerifie.clicked.connect(self.verifiePressed) else : self.connect(self.lineEditVal,SIGNAL("returnPressed()"),self.LEValeurPressed) self.connect(self.lineEditNom,SIGNAL("returnPressed()"),self.LENomPressed) diff --git a/InterfaceQT4/monWidgetPlusieursBase.py b/InterfaceQT4/monWidgetPlusieursBase.py index cb1b427a..1a1d53a1 100644 --- a/InterfaceQT4/monWidgetPlusieursBase.py +++ b/InterfaceQT4/monWidgetPlusieursBase.py @@ -22,8 +22,9 @@ import string,types,os,sys from determine import monEnvQT5 if monEnvQT5: - from PyQt5.QtGui import Qicon, QApplication - from PyQt5.QtCore import QTimer, QSize, QT + from PyQt5.QtGui import Qicon, + from PyQt5.QtWidgets import QApplication + from PyQt5.QtCore import QTimer, QSize, Qt else : from PyQt4.QtGui import * from PyQt4.QtCore import * diff --git a/InterfaceQT4/monWidgetPlusieursTuple.py b/InterfaceQT4/monWidgetPlusieursTuple.py index 93a20088..302f0cc2 100644 --- a/InterfaceQT4/monWidgetPlusieursTuple.py +++ b/InterfaceQT4/monWidgetPlusieursTuple.py @@ -23,10 +23,12 @@ import string,types,os,sys # Modules Eficas from determine import monEnvQT5 if monEnvQT5: - from PyQt5.QtWidgets import QIcon, QSize, QFrame,QApplication + from PyQt5.QtWidgets import QFrame,QApplication + from PyQt5.QtGui import QIcon, QFrame + from PyQt5.QtCore import QSize else : from PyQt4.QtGui import * - from PyQt4.QtCore import + from PyQt4.QtCore import * from Extensions.i18n import tr @@ -57,7 +59,7 @@ class TupleCustom : courant=getattr(self,nomLE) courant.num=index courant.dansUnTuple=True - if monEnvQt5 : courant.returnPressed.connect(self.valueChange) + if monEnvQT5 : courant.returnPressed.connect(self.valueChange) else : self.connect(courant,SIGNAL("returnPressed()"),self.valueChange) @@ -167,7 +169,7 @@ class MonWidgetPlusieursTuple(Feuille,GereListe): icon3 = QIcon(fichier3) self.BSelectFichier.setIcon(icon3) self.BSelectFichier.setIconSize(QSize(32, 32)) - if monEnvQt5 : + if monEnvQT5 : self.BSelectFichier.clicked.connect(self.selectInFile) else : self.connect(self.BSelectFichier,SIGNAL("clicked()"), self.selectInFile) diff --git a/InterfaceQT4/monWidgetSDCOInto.py b/InterfaceQT4/monWidgetSDCOInto.py index 7f376a5c..3de91710 100644 --- a/InterfaceQT4/monWidgetSDCOInto.py +++ b/InterfaceQT4/monWidgetSDCOInto.py @@ -21,8 +21,13 @@ import string,types,os # Modules Eficas -from PyQt4.QtGui import * -from PyQt4.QtCore import * +from determine import monEnvQT5 +if monEnvQT5: + from PyQt5.QtWidgets import QLineEdit + from PyQt5.QtCore import Qt +else : + from PyQt4.QtGui import * + from PyQt4.QtCore import * from Extensions.i18n import tr from feuille import Feuille @@ -42,8 +47,13 @@ class MonWidgetSDCOInto (Ui_WidgetSDCOInto,Feuille,SaisieSDCO): self.maCommande.listeAffichageWidget.append(self.LESDCO) self.AAficher=self.LESDCO self.initLBSDCO() - self.connect(self.LESDCO, SIGNAL("returnPressed()"),self.LESDCOReturnPressed) - self.connect(self.LBSDCO, SIGNAL("itemDoubleClicked(QListWidgetItem*)" ), self.LBSDCODoubleClicked ) + + if monEnvQT5 : + self.LESDCO.returnPressed.connect(self.LESDCOReturnPressed) + self.LBSDCO.itemDoubleClicked.connect(self.LBSDCODoubleClicked ) + else : + self.connect(self.LESDCO, SIGNAL("returnPressed()"),self.LESDCOReturnPressed) + self.connect(self.LBSDCO, SIGNAL("itemDoubleClicked(QListWidgetItem*)" ), self.LBSDCODoubleClicked ) def LESDCOReturnPressed(self) : self.LBSDCO.clearSelection() @@ -56,7 +66,7 @@ class MonWidgetSDCOInto (Ui_WidgetSDCOInto,Feuille,SaisieSDCO): self.LBSDCO.insertItem( 1,aSDCO) valeur = self.node.item.get_valeur() if valeur != "" and valeur != None : - self.LESDCO.setText(QString(valeur.nom)) + self.LESDCO.setText(str(valeur.nom)) def LBSDCODoubleClicked(self): @@ -82,7 +92,7 @@ class MonWidgetSDCOInto (Ui_WidgetSDCOInto,Feuille,SaisieSDCO): self.node.item.delete_valeur_co(valeur=anc_val) self.node.item.object.etape.get_type_produit(force=1) self.node.item.object.etape.parent.reset_context() - self.LESDCO.setText(QString(nomConcept)) + self.LESDCO.setText(nomConcept) else : commentaire = self.node.item.get_cr() self.reset_old_valeur(anc_val,mess=mess) diff --git a/InterfaceQT4/monWidgetSimpBase.py b/InterfaceQT4/monWidgetSimpBase.py index e2d75ae6..9022095f 100644 --- a/InterfaceQT4/monWidgetSimpBase.py +++ b/InterfaceQT4/monWidgetSimpBase.py @@ -21,8 +21,12 @@ import string,types,os # Modules Eficas -from PyQt4.QtGui import * -from PyQt4.QtCore import * +from determine import monEnvQT5 +if monEnvQT5: + from PyQt5.QtCore import Qt +else : + from PyQt4.QtGui import * + from PyQt4.QtCore import * from Extensions.i18n import tr from feuille import Feuille @@ -38,7 +42,8 @@ class MonWidgetSimpBase (Ui_WidgetSimpBase,Feuille): #print "MonWidgetSimpBase", nom self.parentQt.commandesLayout.insertWidget(-1,self,1) self.setFocusPolicy(Qt.StrongFocus) - self.connect(self.lineEditVal,SIGNAL("returnPressed()"),self.LEValeurPressed) + if monEnvQT5 : self.lineEditVal.returnPressed.connect(self.LEValeurPressed) + else : self.connect(self.lineEditVal,SIGNAL("returnPressed()"),self.LEValeurPressed) self.AAfficher=self.lineEditVal self.maCommande.listeAffichageWidget.append(self.lineEditVal) @@ -54,20 +59,20 @@ class MonWidgetSimpBase (Ui_WidgetSimpBase,Feuille): self.politique=PolitiqueUnique(self.node,self.editor) valeur=self.node.item.get_valeur() valeurTexte=self.politique.GetValeurTexte(valeur) - chaine=QString("") + chaine="" if valeurTexte != None : from decimal import Decimal if isinstance(valeurTexte,Decimal): chaine=str(valeurTexte) elif repr(valeurTexte.__class__).find("PARAMETRE") > 0: - chaine = QString(repr(valeur)) + chaine = repr(valeur) else : #PN ???? #try : # chaine=QString("").setNum(valeurTexte) #except : - chaine=QString(str(valeurTexte)) + chaine=str(valeurTexte) self.lineEditVal.setText(chaine) diff --git a/InterfaceQT4/monWidgetSimpBool.py b/InterfaceQT4/monWidgetSimpBool.py index 278b8e1a..bd174677 100644 --- a/InterfaceQT4/monWidgetSimpBool.py +++ b/InterfaceQT4/monWidgetSimpBool.py @@ -21,8 +21,12 @@ import string,types,os # Modules Eficas -from PyQt4.QtGui import * -from PyQt4.QtCore import * +from determine import monEnvQT5 +if monEnvQT5 : + from PyQt5.QtWidgets import QRadioButton +else : + from PyQt4.QtGui import * + from PyQt4.QtCore import * from Extensions.i18n import tr from feuille import Feuille @@ -36,8 +40,12 @@ class MonWidgetSimpBool (Ui_WidgetSimpBool,Feuille): def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) self.politique=PolitiqueUnique(self.node,self.editor) - self.connect(self.RBTrue,SIGNAL("clicked()"),self.boutonTrueClic) - self.connect(self.RBFalse,SIGNAL("clicked()"),self.boutonFalseClic) + if monEnvQT5 : + self.RBTrue.clicked.connect(self.boutonTrueClic) + self.RBFalse.clicked.connect(self.boutonFalseClic) + else : + self.connect(self.RBTrue,SIGNAL("clicked()"),self.boutonTrueClic) + self.connect(self.RBFalse,SIGNAL("clicked()"),self.boutonFalseClic) self.parentQt.commandesLayout.insertWidget(-1,self) self.maCommande.listeAffichageWidget.append(self.RBTrue) diff --git a/InterfaceQT4/monWidgetSimpComplexe.py b/InterfaceQT4/monWidgetSimpComplexe.py index 64ccda81..6775a18e 100644 --- a/InterfaceQT4/monWidgetSimpComplexe.py +++ b/InterfaceQT4/monWidgetSimpComplexe.py @@ -21,8 +21,14 @@ import string,types,os # Modules Eficas -from PyQt4.QtGui import * -from PyQt4.QtCore import * +if monEnvQT5: + from PyQt5.QtWidgets import QLineEdit, QRadioButton + from PyQt5.QtCore import Qt +else : + from PyQt4.QtGui import * + from PyQt4.QtCore import * + + from Extensions.i18n import tr from feuille import Feuille @@ -37,11 +43,18 @@ class MonWidgetSimpComplexe (Ui_WidgetSimpComplexe,Feuille): Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) self.parentQt.commandesLayout.insertWidget(-1,self) self.setFocusPolicy(Qt.StrongFocus) - self.connect(self.LEImag,SIGNAL("returnPressed()"),self.LEImagRPressed) - self.connect(self.LEReel,SIGNAL("returnPressed()"),self.LEReelRPressed) - self.connect(self.RBRI,SIGNAL("clicked()"), self.ValeurPressed ) - self.connect(self.RBMP,SIGNAL("clicked()"), self.ValeurPressed ) - self.connect(self.LEComp,SIGNAL("returnPressed()"),self.LECompRPressed) + if monEnvQT5 : + self.LEImag.returnPressed.connect(self.LEImagRPressed) + self.LEReel.returnPressed.connect()"),self.LEReelRPressed) + self.RBRI.clicked.connect(self.ValeurPressed ) + self.RBMP.clicked.connect(self.ValeurPressed ) + self.LEComp.returnPressed.connect(self.LECompRPressed) + else : + self.connect(self.LEImag,SIGNAL("returnPressed()"),self.LEImagRPressed) + self.connect(self.LEReel,SIGNAL("returnPressed()"),self.LEReelRPressed) + self.connect(self.RBRI,SIGNAL("clicked()"), self.ValeurPressed ) + self.connect(self.RBMP,SIGNAL("clicked()"), self.ValeurPressed ) + self.connect(self.LEComp,SIGNAL("returnPressed()"),self.LECompRPressed) self.maCommande.listeAffichageWidget.append(self.LEComp) #self.maCommande.listeAffichageWidget.append(self.RBRI) #self.maCommande.listeAffichageWidget.append(self.RBMP) diff --git a/InterfaceQT4/monWidgetSimpFichier.py b/InterfaceQT4/monWidgetSimpFichier.py index 429272c6..c116e74a 100644 --- a/InterfaceQT4/monWidgetSimpFichier.py +++ b/InterfaceQT4/monWidgetSimpFichier.py @@ -21,8 +21,13 @@ import string,types,os,sys # Modules Eficas -from PyQt4.QtGui import * -from PyQt4.QtCore import * +from determine import monEnvQT5 +if monEnvQT5 : + from PyQt5.QtGui import QIcon + from PyQt5.QtCore import QSize +else: + from PyQt4.QtGui import * + from PyQt4.QtCore import * from Extensions.i18n import tr from desWidgetSimpFichier import Ui_WidgetSimpFichier @@ -40,6 +45,4 @@ class MonWidgetSimpFichier (Ui_WidgetSimpFichier,MonWidgetSimpBase): icon = QIcon(fichier) self.BFichier.setIcon(icon) self.BFichier.setIconSize(QSize(32, 32)) - # deja fait dans MonWidgetSimpBase - #self.maCommande.listeAffichageWidget.append(self.lineEditVal) diff --git a/InterfaceQT4/monWidgetSimpSalome.py b/InterfaceQT4/monWidgetSimpSalome.py index dc2321cc..194ac111 100644 --- a/InterfaceQT4/monWidgetSimpSalome.py +++ b/InterfaceQT4/monWidgetSimpSalome.py @@ -21,8 +21,13 @@ import string,types,os # Modules Eficas -from PyQt4.QtGui import * -from PyQt4.QtCore import * +if monEnvQT5: + from PyQt5.QtWidgets import QLineEdit + from PyQt5.QtCore import Qt +else : + from PyQt4.QtGui import * + from PyQt4.QtCore import * + from Extensions.i18n import tr from feuille import Feuille @@ -38,7 +43,8 @@ class MonWidgetSimpSalome (Ui_WidgetSimpSalome,Feuille): self.parentQt.commandesLayout.insertWidget(-1,self,1) self.setFocusPolicy(Qt.StrongFocus) self.politique=PolitiqueUnique(self.node,self.editor) - self.connect(self.lineEditVal,SIGNAL("returnPressed()"),self.LEValeurPressed) + if monEnvQT5: self.lineEditVal.returnPressed.connect(self.LEValeurPressed) + else : self.connect(self.lineEditVal,SIGNAL("returnPressed()"),self.LEValeurPressed) self.AAfficher=self.lineEditVal self.maCommande.listeAffichageWidget.append(self.lineEditVal) diff --git a/InterfaceQT4/monWidgetSimpTuple.py b/InterfaceQT4/monWidgetSimpTuple.py index e77c084f..a4e42f8e 100644 --- a/InterfaceQT4/monWidgetSimpTuple.py +++ b/InterfaceQT4/monWidgetSimpTuple.py @@ -20,9 +20,13 @@ # Modules Python import string,types,os +if monEnvQT5: + from PyQt5.QtCore import Qt +else : + from PyQt4.QtGui import * + from PyQt4.QtCore import * + # Modules Eficas -from PyQt4.QtGui import * -from PyQt4.QtCore import * from Extensions.i18n import tr from feuille import Feuille diff --git a/InterfaceQT4/monWidgetSimpTuple2.py b/InterfaceQT4/monWidgetSimpTuple2.py index ec5c421d..1d45ae5c 100644 --- a/InterfaceQT4/monWidgetSimpTuple2.py +++ b/InterfaceQT4/monWidgetSimpTuple2.py @@ -21,8 +21,8 @@ import string,types,os # Modules Eficas -from PyQt4.QtGui import * -from PyQt4.QtCore import * +#from PyQt4.QtGui import * +#from PyQt4.QtCore import * from Extensions.i18n import tr from feuille import Feuille @@ -39,8 +39,8 @@ class MonWidgetSimpTuple2 (Ui_WidgetTuple2,MonWidgetSimpTuple): if self.objSimp.isImmuable() : self.lineEditVal1.setDisabled(True) self.lineEditVal2.setDisabled(True) - self.lineEditVal1.setStyleSheet(QString.fromUtf8("background:rgb(244,244,244);\n" "border:0px;\n")) - self.lineEditVal2.setStyleSheet(QString.fromUtf8("background:rgb(244,244,244);\n" "border:0px;\n")) + self.lineEditVal1.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") + self.lineEditVal2.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") self.lineEditVal1.setToolTip(tr("Valeur non modifiable")) self.lineEditVal2.setToolTip(tr("Valeur non modifiable")) else : diff --git a/InterfaceQT4/monWidgetSimpTuple3.py b/InterfaceQT4/monWidgetSimpTuple3.py index 65156411..051102ec 100644 --- a/InterfaceQT4/monWidgetSimpTuple3.py +++ b/InterfaceQT4/monWidgetSimpTuple3.py @@ -39,9 +39,9 @@ class MonWidgetSimpTuple3 (Ui_WidgetTuple3,MonWidgetSimpTuple): self.lineEditVal1.setDisabled(True) self.lineEditVal2.setDisabled(True) self.lineEditVal3.setDisabled(True) - self.lineEditVal1.setStyleSheet(QString.fromUtf8("background:rgb(244,244,244);\n" "border:0px;\n")) - self.lineEditVal2.setStyleSheet(QString.fromUtf8("background:rgb(244,244,244);\n" "border:0px;\n")) - self.lineEditVal3.setStyleSheet(QString.fromUtf8("background:rgb(244,244,244);\n" "border:0px;\n")) + self.lineEditVal1.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") + self.lineEditVal2.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") + self.lineEditVal3.setStyleSheet("background:rgb(244,244,244);\n" "border:0px;\n") self.lineEditVal1.setToolTip(tr("Valeur non modifiable")) self.lineEditVal2.setToolTip(tr("Valeur non modifiable")) self.lineEditVal3.setToolTip(tr("Valeur non modifiable")) diff --git a/InterfaceQT4/qtEficas.py b/InterfaceQT4/qtEficas.py index c5b6bc99..ff41bcff 100755 --- a/InterfaceQT4/qtEficas.py +++ b/InterfaceQT4/qtEficas.py @@ -49,7 +49,8 @@ class Appli(Ui_Eficas,QMainWindow): Ui_Eficas.__init__(self) version=getEficasVersion() - self.VERSION_EFICAS="Eficas QT4 "+version + self.VERSION_EFICAS="Eficas QT4 Salome "+version + if monEnvQT5 : self.VERSION_EFICAS="Eficas QT5 Salome " self.salome=salome self.ihm="QT" self.ssIhm=ssIhm @@ -554,8 +555,7 @@ class Appli(Ui_Eficas,QMainWindow): except : pass def addToRecentList(self, fn): - if not monEnvQT5 : addToRecentListQT4(self, fn); return - + if not monEnvQT5 : self.addToRecentListQT4(fn); return while fn in self.recent: self.recent.remove(fn) self.recent.insert(0,fn) if len(self.recent) > 9: @@ -683,7 +683,7 @@ class Appli(Ui_Eficas,QMainWindow): for rp in self.recent: id = self.recentMenu.addAction(rp) self.ficRecents[id]=rp - if monEnvQT5 : self.id.triggered.connect(self.handleOpenRecent) + if monEnvQT5 : id.triggered.connect(self.handleOpenRecent) else : self.connect(id, SIGNAL('triggered()'),self.handleOpenRecent) self.recentMenu.addSeparator() self.recentMenu.addAction(tr('&Effacer'), self.handleClearRecent) diff --git a/InterfaceQT4/readercata.py b/InterfaceQT4/readercata.py index d9440083..24782b2e 100644 --- a/InterfaceQT4/readercata.py +++ b/InterfaceQT4/readercata.py @@ -275,7 +275,7 @@ class READERCATA: widgetChoix = MonChoixCata(self.appliEficas, [cata.user_name for cata in cata_choice_list], title) ret=widgetChoix.exec_() - lab=QString(self.VERSION_EFICAS)+" " + lab=str(self.VERSION_EFICAS)+" " lab+=tr(" pour ") lab+=QString(self.code) lab+=tr(" avec le catalogue ") diff --git a/InterfaceQT4/typeNode.py b/InterfaceQT4/typeNode.py index bb2bbb7d..f19f5126 100644 --- a/InterfaceQT4/typeNode.py +++ b/InterfaceQT4/typeNode.py @@ -183,10 +183,10 @@ class PopUpMenuNodeMinimal : self.CommAvant.setStatusTip(tr("Insere un commentaire avant la commande ")) self.ParamApres = QAction(tr('apres'),self.tree) - self.ParamApres.triggered.connect(self.addParamatersApres) + self.ParamApres.triggered.connect(self.addParametersApres) self.ParamApres.setStatusTip(tr("Insere un parametre apres la commande ")) self.ParamAvant = QAction(tr('avant'),self.tree) - self.ParamAvant.triggered.connect(self.addParamatersAvant) + self.ParamAvant.triggered.connect(self.addParametersAvant) self.ParamAvant.setStatusTip(tr("Insere un parametre avant la commande ")) self.Supprime = QAction(tr('Supprimer'),self.tree) @@ -274,7 +274,7 @@ class PopUpMenuNode(PopUpMenuNodePartiel) : def createPopUpMenu(self): PopUpMenuNodePartiel.createPopUpMenu(self) self.Commente = QAction(tr('ce noeud'),self.tree) - self.tree.connect(self.Commente,SIGNAL("triggered()"),self.Commenter) + self.Commente.triggered.connect(self.Commenter) self.Commente.setStatusTip(tr("commente le noeud ")) self.commentMenu.addAction(self.Commente) self.menu.removeAction(self.Supprime) diff --git a/InterfaceQT4/viewManager.py b/InterfaceQT4/viewManager.py index 4d970ad8..547f6ef8 100644 --- a/InterfaceQT4/viewManager.py +++ b/InterfaceQT4/viewManager.py @@ -22,7 +22,7 @@ import os, string from Extensions.i18n import tr from determine import monEnvQT5 if monEnvQT5: - from PyQt5.QtWidgets import QFileDialog + from PyQt5.QtWidgets import QFileDialog, QMessageBox from PyQt5.QtCore import QFileInfo else : from PyQt4.QtGui import * @@ -77,8 +77,8 @@ class MyTabview: tr('Ouvrir Fichier'), self.appliEficas.CONFIGURATION.savedir, extensions) - if fichier.isNull(): - return result + if monEnvQT5 : fichier=fichier[0] + if not fichier: return result fichier = os.path.abspath(unicode(fichier)) ulfile = os.path.abspath(unicode(fichier)) self.appliEficas.CONFIGURATION.savedir=os.path.split(ulfile)[0] @@ -216,8 +216,7 @@ class MyTabview: QMessageBox.warning( None, tr("Fichier Duplique"), - tr("Le fichier ne sera pas sauvegarde."), - tr("&Annuler")) + tr("Le fichier ne sera pas sauvegarde."),) return ok, newName = editor.saveFile() if ok : @@ -233,8 +232,7 @@ class MyTabview: QMessageBox.warning( None, tr("Fichier Duplique"), - tr("Le fichier ne sera pas sauvegarde."), - tr("&Annuler")) + tr("Le fichier ne sera pas sauvegarde."),) return ok, newName = editor.sauveLigneFile() if ok : @@ -274,11 +272,19 @@ class MyTabview: for indexEditor in self.dict_editors.keys(): editor=self.dict_editors[indexEditor] if self.samepath(fichier, editor.getFileName()): - abort = QMessageBox.warning(self.appliEficas, - tr("Fichier"), - tr("Le fichier %s est deja ouvert.",str(fichier)), - tr("&Duplication"), - tr("&Abort")) + if monEnvQT5 : + msgBox = QMessageBox() + msgBox.setWindowTitle(tr("Fichier")) + msgBox.setText(tr("Le fichier %s est deja ouvert", str(fichier))) + msgBox.addButton(tr("&Duplication"),0) + msgBox.addButton(tr("&Abandonner"),1) + abort=msgBox.exec_() + else : + abort = QMessageBox.warning(self.appliEficas, + tr("Fichier"), + tr("Le fichier %s est deja ouvert.",str(fichier)), + tr("&Duplication"), + tr("&Abort")) if abort: break double=editor else : @@ -344,7 +350,15 @@ class MyTabview: """ res=1 if (editor.modified) and (editor in self.doubles.keys()) : - res = QMessageBox.warning( + if monEnvQT5 : + msgBox = QMessageBox(None) + msgBox.setWindowTitle(tr("Fichier Duplique")) + msgBox.setText(tr("Le fichier ne sera pas sauvegarde.")) + msgBox.addButton(texte,0) + msgBox.addButton(tr("&Annuler"),1) + res=msgBox.exec_() + else: + res = QMessageBox.warning( None, tr("Fichier Duplique"), tr("Le fichier ne sera pas sauvegarde."), @@ -354,9 +368,16 @@ class MyTabview: return 2 if editor.modified: fn = editor.getFileName() - if fn is None: - fn = self.appliEficas.trUtf8('Noname') - res = QMessageBox.warning(self.appliEficas, + if fn is None: fn = tr('Noname') + if monEnvQT5 : + msgBox = QMessageBox(None) + msgBox.setWindowTitle(tr("Fichier Duplique")) + msgBox.setText(tr("Le fichier ne sera pas sauvegarde.")) + msgBox.addButton(texte,0) + msgBox.addButton(tr("&Annuler"),1) + res=msgBox.exec_() + else : + res = QMessageBox.warning(self.appliEficas, tr("Fichier Modifie"), tr("Le fichier %s n a pas ete sauvegarde.",str(fn)), tr("&Sauvegarder"), diff --git a/UiQT5/CMakeLists.txt b/UiQT5/CMakeLists.txt index e5182e8f..916356ed 100644 --- a/UiQT5/CMakeLists.txt +++ b/UiQT5/CMakeLists.txt @@ -43,6 +43,7 @@ eficas_compile_ui ( desViewRegles.ui ) eficas_compile_ui ( desVisu.ui ) eficas_compile_ui ( desWidgetCreeParam.ui ) eficas_compile_ui ( desWidgetCommande.ui ) +eficas_compile_ui ( desWidgetFormule.ui ) eficas_compile_ui ( desWidgetOptionnel.ui ) eficas_compile_ui ( Tuple2.ui ) eficas_compile_ui ( Tuple3.ui ) diff --git a/UiQT5/desChoixCommandes.ui b/UiQT5/desChoixCommandes.ui index 47c13539..4dca9db0 100644 --- a/UiQT5/desChoixCommandes.ui +++ b/UiQT5/desChoixCommandes.ui @@ -29,10 +29,25 @@ background-color : rgb(248,247,246) + + 0 + + + 2 + + + 2 + + + 2 + + + 2 + - + 0 0 @@ -59,6 +74,15 @@ QFrame::Raised + + 0 + + + 0 + + + 0 + @@ -128,12 +152,12 @@ - 0 + 5 - + 0 0 @@ -141,13 +165,13 @@ 141 - 35 + 25 16777215 - 35 + 25 @@ -170,6 +194,22 @@ + + + + Qt::Vertical + + + QSizePolicy::Fixed + + + + 20 + 2 + + + + @@ -197,8 +237,17 @@ + + QLayout::SetMinimumSize + + + + 0 + 0 + + Sensible à la casse @@ -207,6 +256,19 @@ + + + + Qt::Horizontal + + + + 40 + 20 + + + + @@ -217,13 +279,13 @@ - 200 - 40 + 100 + 30 - 200 + 70 40 @@ -260,6 +322,9 @@ border-radius : 12px + + QLayout::SetFixedSize + @@ -346,11 +411,26 @@ border-radius : 12px 0 0 - 1226 - 498 + 1240 + 518 + + 0 + + + 0 + + + 2 + + + 0 + + + 0 + diff --git a/UiQT5/desWidgetCommande.ui b/UiQT5/desWidgetCommande.ui index a48c8947..2ec16046 100644 --- a/UiQT5/desWidgetCommande.ui +++ b/UiQT5/desWidgetCommande.ui @@ -6,8 +6,8 @@ 0 0 - 1031 - 250 + 1290 + 540 @@ -32,151 +32,207 @@ background-color : rgb(224,223,222); font : 'times' 9px - + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - 0 - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Affiche le rapport de validité de la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 21 - 31 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - - - - - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 2 - 40 - - - - + + + + 0 + 0 + + + + + 0 + 130 + + + + + 16777215 + 130 + + + + background-color:rgb(224,223,222) + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + - - - - 0 - 0 - - - - Nom de l'objet. Seuls, les objets valides peuvent être nommés - - - QLineEdit { + + + + + + 0 + 0 + + + + QFrame::Box + + + QFrame::Raised + + + + 0 + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 13 + 20 + + + + + + + + + 17 + 31 + + + + + 21 + 31 + + + + Qt::ClickFocus + + + Affiche le rapport de validité de la commande + + + border : 0px + + + ... + + + + ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png + + + + 21 + 31 + + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 13 + 20 + + + + + + + + + 0 + 0 + + + + + 150 + 31 + + + + QFrame::NoFrame + + + QFrame::Raised + + + <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> + + + + + + + Qt::Horizontal + + + QSizePolicy::Maximum + + + + 2 + 40 + + + + + + + + + 0 + 0 + + + + Nom de l'objet. Seuls, les objets valides peuvent être nommés + + + QLineEdit { border: 2px solid gray; border-radius: 10px; padding: 0 8px; @@ -189,123 +245,258 @@ QLineEdit:disabled } /*read-only { background: lightblue;*/ - - - false - - - - - - - Qt::Horizontal - - - QSizePolicy::Ignored - - - - 2 - 40 - - - - - - - - 4 - - - QLayout::SetFixedSize - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Lance un script associé à la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/roue.png../Editeur/icons/roue.png - - - - 21 - 31 - - + + + false + + + + + + + Qt::Horizontal + + + + 108 + 20 + + + + + + + + Qt::Horizontal + + + QSizePolicy::Ignored + + + + 2 + 40 + + + + + + + + 4 + + + QLayout::SetFixedSize + + + + + + 21 + 31 + + + + + 21 + 31 + + + + Qt::ClickFocus + + + Lance un script associé à la commande + + + border : 0px + + + ... + + + + ../Editeur/icons/roue.png../Editeur/icons/roue.png + + + + 21 + 31 + + + + + + + + + 21 + 31 + + + + + 21 + 31 + + + + Qt::ClickFocus + + + ouvre un navigateur sur l'aide contextuelle + + + border : 0px + + + ... + + + + ../Editeur/icons/point-interrogation30.png../Editeur/icons/point-interrogation30.png + + + + 21 + 31 + + + + + + + + + 21 + 31 + + + + + 21 + 31 + + + + Qt::ClickFocus + + + affiche les régles de validité + + + border : 0px + + + ... + + + + ../Editeur/icons/lettreRblanc30.png../Editeur/icons/lettreRblanc30.png + + + + 21 + 31 + + + + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 13 + 20 + + + + + + + + + 21 + 31 + + + + + 21 + 31 + + + + Qt::ClickFocus + + + Détruit la commande + + + border : 0px + + + ... + + + + ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png + + + + 21 + 31 + + + + + + RBValide + labelNomCommande + LENom + horizontalSpacer_3 + horizontalSpacer_4 + RBPoubelle + horizontalSpacer_5 + horizontalSpacer_7 - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - ouvre un navigateur sur l'aide contextuelle - - - border : 0px - + - ... - - - - ../Editeur/icons/point-interrogation30.png../Editeur/icons/point-interrogation30.png - - - - 21 - 31 - + TextLabel + + + + + + 8 + + + 15 + - - - - 21 - 31 - + + + + 0 + 0 + - + - 21 + 160 31 @@ -313,239 +504,129 @@ QLineEdit:disabled Qt::ClickFocus - affiche les régles de validité + Affiche les commandes possibles - border : 0px + background-color:rgb(104,110,149); +color :white; +border-radius : 12px + - ... + &Commandes - - - ../Editeur/icons/lettreRblanc30.png../Editeur/icons/lettreRblanc30.png + + Shift+A, Alt+A, Alt+A, Alt+A - - - 21 - 31 - + + true + + + true - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 21 - 31 - - - - - 21 - 31 - - - - Qt::ClickFocus - - - Détruit la commande - - - border : 0px - - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 31 - - - - - - RBValide - labelNomCommande - LENom - horizontalSpacer_3 - horizontalSpacer_4 - RBPoubelle - horizontalSpacer_5 - - - - - - - - - 0 - 0 - - - - - 160 - 31 - - - - Qt::ClickFocus - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); -color :white; -border-radius : 12px - - - - &Commandes - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande précédente - - - background-color:rgb(104,110,149); + + + + + + + 0 + 0 + + + + + 60 + 24 + + + + + 60 + 24 + + + + Qt::ClickFocus + + + Affiche le formulaire de la commande précédente + + + background-color:rgb(104,110,149); color :white; border-radius : 12px - - - << - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande suivante - - - background-color:rgb(104,110,149); + + + << + + + Shift+A, Alt+A, Alt+A, Alt+A + + + true + + + true + + + + + + + + 0 + 0 + + + + + 60 + 24 + + + + + 60 + 24 + + + + Qt::ClickFocus + + + Affiche le formulaire de la commande suivante + + + background-color:rgb(104,110,149); color :white; border-radius : 12px - - - >> - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - - - - TextLabel - + + + >> + + + Shift+A, Alt+A, Alt+A, Alt+A + + + true + + + true + + + + + + + + + + @@ -579,8 +660,8 @@ border-radius : 12px 0 0 - 1013 - 129 + 1290 + 410 @@ -591,24 +672,17 @@ border-radius : 12px - - - - Qt::Vertical - - - - 20 - 5 - - - - + scrollAreaCommandes + frameAffichage + + frame_2 + frame_2 + qPixmapFromMimeSource @@ -624,6 +698,10 @@ border-radius : 12px
monLabelClic.h
+ + scrollAreaCommandes + LENom + diff --git a/UiQT5/desWidgetCommentaire.ui b/UiQT5/desWidgetCommentaire.ui index c6946972..6a452e8b 100644 --- a/UiQT5/desWidgetCommentaire.ui +++ b/UiQT5/desWidgetCommentaire.ui @@ -6,8 +6,8 @@ 0 0 - 1031 - 177 + 847 + 453 @@ -32,319 +32,425 @@ background-color : rgb(224,223,222); font : 'times' 9px - + 0 - + + 0 + + + 0 + + + 0 + + 0 - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 21 - 31 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#0000ff;">Commentaire</span></p></body></html> - - - + + + + 0 + 0 + + + + + 0 + 130 + + + + + 16777215 + 130 + + + + background-color:rgb(224,223,222) + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + 6 + - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 78 - 40 - - - + + + + + + 0 + 0 + + + + QFrame::Box + + + QFrame::Raised + + + + 0 + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 13 + 20 + + + + + + + + + 17 + 31 + + + + + 21 + 31 + + + + Qt::ClickFocus + + + Affiche le rapport de validité de la commande + + + border : 0px + + + ... + + + + ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png + + + + 21 + 31 + + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 13 + 20 + + + + + + + + + 0 + 0 + + + + + 150 + 31 + + + + QFrame::NoFrame + + + QFrame::Raised + + + <html><head/><body><p>Commentaire</p></body></html> + + + + + + + Qt::Horizontal + + + QSizePolicy::Maximum + + + + 2 + 40 + + + + + + + + Qt::Horizontal + + + QSizePolicy::Ignored + + + + 2 + 40 + + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 13 + 20 + + + + + + + + + 21 + 31 + + + + + 21 + 31 + + + + Qt::ClickFocus + + + Détruit la commande + + + border : 0px + + + ... + + + + ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png + + + + 21 + 31 + + + + + + + + - - - - 21 - 31 - - - - - 21 - 31 - - - - Détruit le commentaire - - - border : 0px - - - ... + + + 8 - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png + + 15 - - - 21 - 31 - - - - - - RBValide - labelNomCommande - horizontalSpacer_3 - RBPoubelle - horizontalSpacer_5 - - - - - - - - - 0 - 0 - - - - - 160 - 31 - - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); + + + + + 0 + 0 + + + + + 160 + 31 + + + + Qt::ClickFocus + + + Affiche les commandes possibles + + + background-color:rgb(104,110,149); color :white; border-radius : 12px - - - &Commandes - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande précédente - - - background-color:rgb(104,110,149); + + + &Commandes + + + Shift+A, Alt+A, Alt+A, Alt+A + + + true + + + true + + + + + + + + + + 0 + 0 + + + + + 60 + 24 + + + + + 60 + 24 + + + + Qt::ClickFocus + + + Affiche le formulaire de la commande précédente + + + background-color:rgb(104,110,149); color :white; border-radius : 12px - - - << - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande suivante - - - background-color:rgb(104,110,149); + + + << + + + Shift+A, Alt+A, Alt+A, Alt+A + + + true + + + true + + + + + + + + 0 + 0 + + + + + 60 + 24 + + + + + 60 + 24 + + + + Qt::ClickFocus + + + Affiche le formulaire de la commande suivante + + + background-color:rgb(104,110,149); color :white; border-radius : 12px - - - >> - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - + + + >> + + + Shift+A, Alt+A, Alt+A, Alt+A + + + true + + + true + + + + + + + + + + + @@ -355,10 +461,7 @@ border-radius : 12px - - - - + QFrame::NoFrame @@ -374,43 +477,31 @@ border-radius : 12px 0 0 - 1031 - 110 + 847 + 323 + + 0 + + 4 + + 0 + 4 + + 0 - - - - 0 - 0 - - - - - 0 - 43 - - - - - 16777215 - 43 - - + background : rgb(247,247,247) - - false - @@ -442,9 +533,6 @@ border-radius : 12px - RBPoubelle - bCatalogue - RBValide scrollAreaCommandes diff --git a/UiQT5/desWidgetCreeParam.ui b/UiQT5/desWidgetCreeParam.ui index 787f61c9..cbcdb1c3 100644 --- a/UiQT5/desWidgetCreeParam.ui +++ b/UiQT5/desWidgetCreeParam.ui @@ -126,10 +126,13 @@ background-color: rgb(247,247,247); 30 40 531 - 70 + 76 + + 12 + @@ -231,6 +234,12 @@ border:0px; + + lineEditNom + lineEditVal + scrollArea + LBParam + diff --git a/UiQT5/desWidgetFormule.ui b/UiQT5/desWidgetFormule.ui new file mode 100644 index 00000000..7d3647be --- /dev/null +++ b/UiQT5/desWidgetFormule.ui @@ -0,0 +1,709 @@ + + + WidgetFormule + + + + 0 + 0 + 1156 + 689 + + + + + 0 + 0 + + + + + 0 + 0 + + + + DCommandeUnique + + + + + + background-color : rgb(224,223,222); +font : 'times' 9px + + + + + + + + + 0 + 0 + + + + QFrame::Box + + + QFrame::Raised + + + + 0 + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 13 + 20 + + + + + + + + + 17 + 31 + + + + + 21 + 31 + + + + Qt::ClickFocus + + + Affiche le rapport de validité de la commande + + + border : 0px + + + ... + + + + ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png + + + + 21 + 31 + + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 13 + 20 + + + + + + + + + 0 + 0 + + + + + 150 + 31 + + + + QFrame::NoFrame + + + QFrame::Raised + + + <html><head/><body><p><span style=" color:#0000ff;">Formule</span></p></body></html> + + + + + + + Qt::Horizontal + + + QSizePolicy::Maximum + + + + 2 + 40 + + + + + + + + + 0 + 0 + + + + Nom de l'objet. Seuls, les objets valides peuvent être nommés + + + QLineEdit { + border: 2px solid gray; + border-radius: 10px; + padding: 0 8px; + background: darkgray; + /* selection-background-color: darkgray;*/ + } +QLineEdit:disabled +{ + background: lightgray; +} +/*read-only { + background: lightblue;*/ + + + false + + + + + + + Qt::Horizontal + + + QSizePolicy::Ignored + + + + 2 + 40 + + + + + + + + 4 + + + QLayout::SetFixedSize + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 13 + 20 + + + + + + + + + 21 + 31 + + + + + 21 + 31 + + + + Qt::ClickFocus + + + Détruit la commande + + + border : 0px + + + ... + + + + ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png + + + + 21 + 31 + + + + + + RBValide + labelNomCommande + LENom + horizontalSpacer_3 + horizontalSpacer_4 + RBPoubelle + horizontalSpacer_5 + + + + + + + + + 0 + 0 + + + + + 160 + 31 + + + + Qt::ClickFocus + + + Affiche les commandes possibles + + + background-color:rgb(104,110,149); +color :white; +border-radius : 12px + + + + &Commandes + + + Shift+A, Alt+A, Alt+A, Alt+A + + + true + + + true + + + + + + + + + + 0 + 0 + + + + + 60 + 24 + + + + + 60 + 24 + + + + Qt::ClickFocus + + + Affiche le formulaire de la commande précédente + + + background-color:rgb(104,110,149); +color :white; +border-radius : 12px + + + + << + + + Shift+A, Alt+A, Alt+A, Alt+A + + + true + + + true + + + + + + + + 0 + 0 + + + + + 60 + 24 + + + + + 60 + 24 + + + + Qt::ClickFocus + + + Affiche le formulaire de la commande suivante + + + background-color:rgb(104,110,149); +color :white; +border-radius : 12px + + + + >> + + + Shift+A, Alt+A, Alt+A, Alt+A + + + true + + + true + + + + + + + + + + + + + + 0 + 81 + + + + background : rgb(247,247,247) + + + + + + QFrame::NoFrame + + + Qt::ScrollBarAsNeeded + + + Qt::ScrollBarAsNeeded + + + true + + + + + 0 + 0 + 1138 + 598 + + + + + + + + + + 0 + 0 + + + + <h3><p align="center"><u><b>Nom de la formule</b></u></p></h3> + + + false + + + + + + + + + <h3><p align="center"><u><b>Arguments</b></u></p></h3> + + + false + + + + + + + variables séparées par des "," + par ex. : x,y,z + + + false + + + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + <h3><p align="center"><u><b>Expression</b></u></p></h3> + + + false + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 17 + 17 + + + + + + + + + 0 + 40 + + + + + + + + + + <h1><b>(</b></h1> + + + false + + + + + + + + 230 + 40 + + + + + + + + <h1><b>)</b></h1> + + + false + + + + + + + + + + + Qt::Vertical + + + + 20 + 5 + + + + + + + + + 0 + 0 + + + + + 0 + 35 + + + + + 16777215 + 35 + + + + <font size="+4" face="Helvetica"><b>=</b></font> + + + false + + + + + + + Qt::Vertical + + + + 20 + 10 + + + + + + + + + + + 0 + 0 + + + + + 0 + 40 + + + + + + + + + + Qt::Vertical + + + + 20 + 446 + + + + + + + + + + + + qPixmapFromMimeSource + + + MonBoutonValide + QToolButton +
monBoutonValide.h
+
+ + MonLabelClic + QLabel +
monLabelClic.h
+
+
+ + scrollAreaCommandes + LENomsArgs + LECorpsFormule + LENom + LENomFormule + + + +
diff --git a/UiQT5/desWidgetParam.ui b/UiQT5/desWidgetParam.ui index 42e2fe3e..357c0097 100644 --- a/UiQT5/desWidgetParam.ui +++ b/UiQT5/desWidgetParam.ui @@ -6,8 +6,8 @@ 0 0 - 1058 - 440 + 786 + 515 @@ -32,313 +32,421 @@ background-color : rgb(224,223,222); font : 'times' 9px - + - - - - - - 0 - 0 - - - - QFrame::Box - - - QFrame::Raised - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 17 - 31 - - - - - 21 - 31 - - - - - - - border : 0px - - - ... - - - - ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png - - - - 21 - 31 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 13 - 20 - - - - - - - - - 0 - 0 - - - - - 150 - 31 - - - - QFrame::NoFrame - - - QFrame::Raised - - - <html><head/><body><p><span style=" color:#000000;">Paramètre</span></p></body></html> - - - + + + + 0 + 0 + + + + + 0 + 130 + + + + + 16777215 + 130 + + + + background-color:rgb(224,223,222) + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + - - - Qt::Horizontal - - - QSizePolicy::Maximum - - - - 78 - 40 - - - + + + + + + 0 + 0 + + + + QFrame::Box + + + QFrame::Raised + + + + 0 + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 13 + 20 + + + + + + + + + 17 + 31 + + + + + 21 + 31 + + + + Qt::ClickFocus + + + Affiche le rapport de validité de la commande + + + border : 0px + + + ... + + + + ../Editeur/icons/ast-green-ball.png../Editeur/icons/ast-green-ball.png + + + + 21 + 31 + + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 13 + 20 + + + + + + + + + 0 + 0 + + + + + 150 + 31 + + + + QFrame::NoFrame + + + QFrame::Raised + + + <html><head/><body><p><span style=" color:#000000;">Paramètre</span></p></body></html> + + + + + + + Qt::Horizontal + + + QSizePolicy::Maximum + + + + 2 + 40 + + + + + + + + Qt::Horizontal + + + QSizePolicy::Ignored + + + + 2 + 40 + + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 13 + 20 + + + + + + + + + 21 + 31 + + + + + 21 + 31 + + + + Qt::ClickFocus + + + Détruit la commande + + + border : 0px + + + ... + + + + ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png + + + + 21 + 31 + + + + + + RBValide + RBPoubelle + horizontalSpacer_4 + labelParam + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + - - - - 21 - 31 - - - - - 21 - 31 - - - - Détruit le commentaire + + + 8 - - border : 0px + + 15 - - ... - - - - ../Editeur/icons/deleteRond.png../Editeur/icons/deleteRond.png - - - - 21 - 31 - - - - - - RBValide - labelNomCommande - horizontalSpacer_3 - RBPoubelle - horizontalSpacer_5 - - - - - - - - - 0 - 0 - - - - - 160 - 31 - - - - Affiche les commandes possibles - - - background-color:rgb(104,110,149); + + + + + 0 + 0 + + + + + 160 + 31 + + + + Qt::ClickFocus + + + Affiche les commandes possibles + + + background-color:rgb(104,110,149); color :white; border-radius : 12px - - - &Commandes - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande précédente - - - background-color:rgb(104,110,149); + + + &Commandes + + + Shift+A, Alt+A, Alt+A, Alt+A + + + true + + + true + + + + + + + + + + 0 + 0 + + + + + 60 + 24 + + + + + 60 + 24 + + + + Qt::ClickFocus + + + Affiche le formulaire de la commande précédente + + + background-color:rgb(104,110,149); color :white; border-radius : 12px - - - << - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - 0 - 0 - - - - - 60 - 24 - - - - - 60 - 24 - - - - Qt::ClickFocus - - - Affiche le formulaire de la commande suivante - - - background-color:rgb(104,110,149); + + + << + + + Shift+A, Alt+A, Alt+A, Alt+A + + + true + + + true + + + + + + + + 0 + 0 + + + + + 60 + 24 + + + + + 60 + 24 + + + + Qt::ClickFocus + + + Affiche le formulaire de la commande suivante + + + background-color:rgb(104,110,149); color :white; border-radius : 12px - - - >> - - - Shift+A, Alt+A, Alt+A, Alt+A - - - true - - - true - - - - - - - - + + + >> + + + Shift+A, Alt+A, Alt+A, Alt+A + + + true + + + true + + + + + + +
+ + + + @@ -369,8 +477,8 @@ border-radius : 12px 0 0 - 1040 - 349 + 768 + 361 @@ -520,9 +628,6 @@ border-radius : 12px - RBPoubelle - bCatalogue - RBValide scrollAreaCommandes diff --git a/UiQT5/makefile b/UiQT5/makefile index c7a1146a..f0c5fbd7 100644 --- a/UiQT5/makefile +++ b/UiQT5/makefile @@ -8,8 +8,8 @@ PY_FILES = myMain.py desBaseWidget.py desChoixCata.py desChoixCode.py desChoixCo desSelectVal.py desViewTexte.py desViewRegles.py desVisu.py desWidgetCreeParam.py desWidgetCommande.py \ desWidgetOptionnel.py desWidgetOptionnelMC.py Tuple2.py Tuple3.py \ desWidgetBloc.py desWidgetCB.py desWidgetCommentaire.py desWidgetDate.py \ - desWidgetFact.py desWidgetFactPlie.py desWidgetHeure.py desWidgetInformation.py \ - desWidgetInactif.py \ + desWidgetFact.py desWidgetFactPlie.py desWidgetFormule.py desWidgetHeure.py \ + desWidgetInformation.py desWidgetInactif.py \ desWidgetMatrice.py desWidgetParam.py desWidgetPlusieursBase.py desWidgetPlusieursInto.py \ desWidgetPlusieursIntoOrdonne.py desWidgetPlusieursTuple.py desWidgetRadioButton.py \ desWidget4a6RadioButton.py desWidgetSimpBase.py desWidgetSDCOInto.py desWidgetSimpBool.py \