X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=InterfaceQT4%2FmonWidgetPlusieursBase.py;h=edd81e450b7b49d8f7020fa23d110eab0a05c7ca;hb=96176d0080e0d4efbd29d98c0df700a64a82acdc;hp=1a1d53a1102b97dd899728383ebe88b01622a517;hpb=1ef6f82e922819d11fc326c6dfdd578999f7fa5d;p=tools%2Feficas.git diff --git a/InterfaceQT4/monWidgetPlusieursBase.py b/InterfaceQT4/monWidgetPlusieursBase.py index 1a1d53a1..edd81e45 100644 --- a/InterfaceQT4/monWidgetPlusieursBase.py +++ b/InterfaceQT4/monWidgetPlusieursBase.py @@ -18,35 +18,38 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # # Modules Python -import string,types,os,sys +from __future__ import absolute_import +try : + from builtins import str + from builtins import range + from builtins import object +except : pass -from determine import monEnvQT5 -if monEnvQT5: - 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 * +import types,os,sys + +from six.moves import range +from PyQt5.QtGui import QIcon +from PyQt5.QtWidgets import QApplication, QMessageBox +from PyQt5.QtCore import QTimer, QSize, Qt # Modules Eficas from Extensions.i18n import tr -from feuille import Feuille +from .feuille import Feuille from desWidgetPlusieursBase import Ui_WidgetPlusieursBase -from politiquesValidation import PolitiquePlusieurs -from qtSaisie import SaisieValeur -from gereListe import GereListe -from gereListe import GerePlie -from gereListe import LECustom +from .politiquesValidation import PolitiquePlusieurs +from .qtSaisie import SaisieValeur +from .gereListe import GereListe +from .gereListe import GerePlie +from .gereListe import LECustom -dicoLongueur={2:95,3:125,4:154,5:183,6:210} +dicoLongueur={2:95,3:125,4:154,5:183,6:210,float('inf'):210} hauteurMax=253 class MonWidgetPlusieursBase (Ui_WidgetPlusieursBase,Feuille,GereListe,GerePlie): def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - print "MonWidgetPlusieursBase", nom + #print "MonWidgetPlusieursBase", nom self.nomLine="lineEditVal" self.inInit=True self.indexDernierLabel=0 @@ -55,7 +58,7 @@ class MonWidgetPlusieursBase (Ui_WidgetPlusieursBase,Feuille,GereListe,GerePlie) Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) GereListe.__init__(self) self.gereIconePlier() - self.connect(self.BSelectFichier,SIGNAL("clicked()"), self.selectInFile) + self.BSelectFichier.clicked.connect(self.selectInFile) if sys.platform[0:5]!="linux": repIcon=self.node.editor.appliEficas.repIcon @@ -73,13 +76,12 @@ class MonWidgetPlusieursBase (Ui_WidgetPlusieursBase,Feuille,GereListe,GerePlie) self.listeValeursCourantes=self.node.item.GetListeValeurs() if self.monSimpDef.max != "**" and self.monSimpDef.max < 7: - hauteur=dicoLongueur[self.monSimpDef.max] - self.resize(self.width(),hauteur) - self.setMinimumHeight(hauteur) - if self.monSimpDef.max == self.monSimpDef.min : self.setMaximumHeight(hauteur) + hauteurMax=dicoLongueur[self.monSimpDef.max] else : - self.resize(self.width(),hauteurMax) - self.setMinimumHeight(hauteurMax) + hauteurMax=220 + # if self.monSimpDef.max == self.monSimpDef.min : self.setMaximumHeight(hauteur) + self.resize(self.width(),hauteurMax) + self.setMinimumHeight(hauteurMax) self.finCommentaireListe() self.parentQt.commandesLayout.insertWidget(-1,self) self.maCommande.listeAffichageWidget.append(self.lineEditVal1) @@ -91,8 +93,10 @@ class MonWidgetPlusieursBase (Ui_WidgetPlusieursBase,Feuille,GereListe,GerePlie) self.vScrollBar = self.scrollArea.verticalScrollBar() self.politique=PolitiquePlusieurs(self.node,self.editor) # construction du min de valeur a entrer - if self.monSimpDef.max == "**" : aConstruire=7 - else : aConstruire=self.monSimpDef.max + if self.monSimpDef.max == "**" : aConstruire=7 + elif self.monSimpDef.max == float('inf'): aConstruire=7 + else : aConstruire=self.monSimpDef.max + for i in range(1,aConstruire): self.ajoutLineEdit() QApplication.processEvents() @@ -104,13 +108,15 @@ class MonWidgetPlusieursBase (Ui_WidgetPlusieursBase,Feuille,GereListe,GerePlie) nomLineEdit="lineEditVal"+str(index) if hasattr(self,nomLineEdit) : courant=getattr(self,nomLineEdit) - courant.setText(str(val)) + if 'R' in self.objSimp.definition.type and str(val) != repr(val) : courant.setText(repr(val)) + else : courant.setText(str(val)) else : self.ajoutLineEdit(val) index=index+1 # ajout d'une ligne vide ou affichage commentaire if self.indexDernierLabel < self.monSimpDef.max : self.ajoutLineEdit() else : self.scrollArea.setToolTip('nb max de valeurs atteint') + #self.adjustSize() #self.vScrollBar.triggerAction(QScrollBar.SliderToMinimum) @@ -126,7 +132,7 @@ class MonWidgetPlusieursBase (Ui_WidgetPlusieursBase,Feuille,GereListe,GerePlie) if self.indexDernierLabel % 2 == 1 : nouveauLE.setStyleSheet("background:rgb(210,210,210)") else : nouveauLE.setStyleSheet("background:rgb(235,235,235)") nouveauLE.setFrame(False) - self.connect(nouveauLE,SIGNAL("returnPressed()"),self.changeValeur) + nouveauLE.returnPressed.connect(self.changeValeur) setattr(self,nomLineEdit,nouveauLE) self.listeAffichageWidget.append(nouveauLE) self.etablitOrdre() @@ -203,6 +209,26 @@ class MonWidgetPlusieursBase (Ui_WidgetPlusieursBase,Feuille,GereListe,GerePlie) donneFocus=None derniereValeur=None self.listeValeursCourantes = [] + fin=self.indexDernierLabel + for i in range (1, fin): + nomLineEdit="lineEditVal"+str(i) + courant=getattr(self,nomLineEdit) + valeur=courant.text() + lval=valeur.split(',') + if len (lval) > 1 : + msgBox=QMessageBox() + msgBox.setText("separator ',' ") + msgBox.setInformativeText("Do you want to enter " + str (lval) + "?") + msgBox.setStandardButtons( QMessageBox.Ok | QMessageBox.Cancel) + msgBox.setDefaultButton(QMessageBox.Ok) + ret = msgBox.exec_() + if ret != 1024 : + courant.setText("") + return + courant.setText(lval[0]) + self.ajoutNValeur(lval[1:]) + self.listeValeursCourantes = [] + for i in range (1, self.indexDernierLabel+1): nomLineEdit="lineEditVal"+str(i) courant=getattr(self,nomLineEdit) @@ -218,6 +244,7 @@ class MonWidgetPlusieursBase (Ui_WidgetPlusieursBase,Feuille,GereListe,GerePlie) else : self.editor.affiche_infos("") elif donneFocus==None : donneFocus=courant + nomDernierLineEdit="lineEditVal"+str(self.indexDernierLabel) dernier=getattr(self,nomDernierLineEdit) derniereValeur=dernier.text()