X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=InterfaceQT4%2FmonWidgetPlusieursTuple.py;h=9899faab121f014969de0dbbb1fdd6ef1f4d3cca;hb=108e744248ce24d85a96ab83969cd337acf78408;hp=b2536bb470152d94ed50178e6878b5ff4cfe11b5;hpb=e57a61fe25c3abf804095d8027afe0dc788877a0;p=tools%2Feficas.git diff --git a/InterfaceQT4/monWidgetPlusieursTuple.py b/InterfaceQT4/monWidgetPlusieursTuple.py index b2536bb4..9899faab 100644 --- a/InterfaceQT4/monWidgetPlusieursTuple.py +++ b/InterfaceQT4/monWidgetPlusieursTuple.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# 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 @@ -18,137 +18,244 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # # Modules Python -import string,types,os,sys - -# Modules Eficas -from determine import monEnvQT5 -if monEnvQT5: - from PyQt5.QtWidgets import QFrame,QApplication, QFrame, QWidget - from PyQt5.QtGui import QIcon - from PyQt5.QtCore import QSize, Qt -else : - from PyQt4.QtGui import * - from PyQt4.QtCore import * +from __future__ import absolute_import +try : + from builtins import str + from builtins import range + from builtins import object +except : pass + +import types,os,sys + +from six.moves import range +from PyQt5.QtWidgets import QFrame,QApplication, QFrame, QWidget +from PyQt5.QtGui import QIcon +from PyQt5.QtCore import QSize, Qt, QTimer from Extensions.i18n import tr -from feuille import Feuille -from politiquesValidation import PolitiquePlusieurs -from qtSaisie import SaisieValeur -from gereListe import GereListe -from gereListe import LECustom -from Tuple2 import Ui_Tuple2 -from Tuple3 import Ui_Tuple3 - - -class TupleCustom : - def __init__(self,tailleTuple,parent,parentQt,index): - QWidget.__init__(self,parent) - self.setupUi(self) - self.tailleTuple=tailleTuple - self.parent=parent - self.parentQt=parentQt - self.valeur=None - self.index=index - - - for i in range(self.tailleTuple): - nomLE="lineEditVal_"+str(i+1) - courant=getattr(self,nomLE) - courant.num=index - courant.dansUnTuple=True - if monEnvQT5 : courant.returnPressed.connect(self.valueChange) - else : self.connect(courant,SIGNAL("returnPressed()"),self.valueChange) - - - def valueChange(self): - listeVal=[] - - for i in range(self.tailleTuple): - nomLE="lineEditVal_"+str(i+1) - courant=getattr(self,nomLE) - val=str(courant.text()) - if str(val)=="" or val==None : - courant.setFocus() - return - try : - valeur=eval(val,{}) - except : - try : - d=self.parentQt.objSimp.jdc.get_contexte_avant(self.parentQt.objSimp. etape) - valeur=eval(val,d) - except : - valeur=val - listeVal.append(valeur) - self.valeur=listeVal - self.parentQt.changeValeur() - - - def setValeur(self,value): - listeVal=[] - valeurNulle=True - for i in range(self.tailleTuple): - nomLE="lineEditVal_"+str(i+1) - courant=getattr(self,nomLE) - try : - if str(value[i]) != "" : valeurNulle=False - except : - pass - - try : - courant.setText(str(value[i])) - except : - courant.setText("") - val=str(courant.text()) - try : - valeur=eval(val,{}) - except : - try : - d=self.parentQt.objSimp.jdc.get_contexte_avant(self.parentQt.objSimp. etape) - valeur=eval(val,d) - except : - valeur=val - listeVal.append(valeur) - if valeurNulle == True : self.valeur=None - else : self.valeur=listeVal - - def getValeur(self): - return self.valeur - - def text(self): - return self.valeur - - def setText(self,value): - self.setValeur(value) - - def clean(self): - self.valeur=None - for i in range(self.tailleTuple): - nomLE="lineEditVal_"+str(i+1) - courant=getattr(self,nomLE) - courant.setText("") - - def finCommentaire(self): +from InterfaceQT4.feuille import Feuille +from InterfaceQT4.politiquesValidation import PolitiquePlusieurs +from InterfaceQT4.qtSaisie import SaisieValeur +from InterfaceQT4.gereListe import GereListe +from InterfaceQT4.gereListe import LECustom +from Tuple2 import Ui_Tuple2 +from Tuple3 import Ui_Tuple3 +from Tuple4 import Ui_Tuple4 +from Tuple5 import Ui_Tuple5 +from Tuple6 import Ui_Tuple6 +from Tuple7 import Ui_Tuple7 +from Tuple8 import Ui_Tuple8 +from Tuple9 import Ui_Tuple9 +from Tuple10 import Ui_Tuple10 + + +#-------------------------- +class TupleCustom(object) : +#-------------------------- + + def __init__(self,tailleTuple,parent,parentQt,index): + #------------------------------------------------- + QWidget.__init__(self,parent) + self.setupUi(self) + self.tailleTuple=tailleTuple + self.parent=parent + self.parentQt=parentQt + self.valeur=[] + self.index=index + self.inFocusOutEvent=False + + + for i in range(self.tailleTuple): + nomLE="lineEditVal"+str(i+1) + courant=getattr(self,nomLE) + courant.num=index + courant.dansUnTuple=True + courant.returnPressed.connect(self.valueChange) + courant.numDsLaListe = i+1 + courant.tupleCustomParent=self + courant.parentTuple = self + + + def valueChange(self): + #---------------------- + + listeVal=[] + for i in range(self.tailleTuple): + nomLE="lineEditVal"+str(i+1) + courant=getattr(self,nomLE) + val=str(courant.text()) + + if str(val)=="" or val==None : + if not self.inFocusOutEvent : courant.setFocus() + return + + try : + valeur=eval(val,{}) + except : + try : + d=self.parentQt.objSimp.jdc.getContexteAvant(self.parentQt.objSimp. etape) + valeur=eval(val,d) + except : + valeur=val + listeVal.append(valeur) + self.valeur=listeVal + self.parentQt.changeValeur() + + + def setValeur(self,value): + #---------------------- + + listeVal=[] + valeurNulle=True + for i in range(self.tailleTuple): + nomLE="lineEditVal"+str(i+1) + courant=getattr(self,nomLE) + try : + if str(value[i]) != "" : valeurNulle=False + except : + pass + + try : + courant.setText(str(value[i])) + except : + courant.setText("") + val=str(courant.text()) + try : + valeur=eval(val,{}) + except : + try : + d=self.parentQt.objSimp.jdc.getContexteAvant(self.parentQt.objSimp. etape) + valeur=eval(val,d) + except : + valeur=val + listeVal.append(valeur) + if valeurNulle == True : self.valeur=None + else : self.valeur=listeVal + + def getValeurbad(self): + #---------------------- + self.valeur=[] + vide=True + print (self.tailleTuple) + for i in range(self.tailleTuple): + nomLE="lineEditVal"+str(i+1) + courant=getattr(self,nomLE) + self.valeur.append(courant.valeur) + if courant.valeur!= None : vide = False + if vide : self.valeur=[] + return self.valeur + + def getValeur(self): + #---------------------- + return self.valeur + + + def text(self): + #-------------- + return self.valeur + + def setText(self,value): + #----------------------- + self.setValeur(value) + + def clean(self): + #------------------- + self.valeur=None + for i in range(self.tailleTuple): + nomLE="lineEditVal"+str(i+1) + courant=getattr(self,nomLE) + courant.setText("") + + def finCommentaire(self): + #------------------- return self.finCommentaireListe() +#------------------------------------------------- class TupleCustom2(QWidget,Ui_Tuple2,TupleCustom): - def __init__(self,tailleTuple,parent,parentQt,index): - TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) - -class TupleCustom3(QWidget,Ui_Tuple3,TupleCustom): - def __init__(self,tailleTuple,parent,parentQt,index): - TupleCustom. __init__(self,tailleTuple,parent,parentQt,index) - -# ---------------------------- # +#------------------------------------------------- + def __init__(self,tailleTuple,parent,parentQt,index): + #------------------- + TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) + if self.parentQt.editor.maConfiguration.closeParenthese : + self.label_5.close() + self.label_7.close() +#------------------------------------------------- +class TupleCustom3(QWidget,Ui_Tuple3,TupleCustom): +#------------------------------------------------- + def __init__(self,tailleTuple,parent,parentQt,index): + #------------------- + TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) + +#------------------------------------------------- +class TupleCustom4(QWidget,Ui_Tuple4,TupleCustom): +#------------------------------------------------- + def __init__(self,tailleTuple,parent,parentQt,index): + #------------------- + TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) + +#------------------------------------------------- +class TupleCustom5(QWidget,Ui_Tuple5,TupleCustom): +#------------------------------------------------- + def __init__(self,tailleTuple,parent,parentQt,index): + #------------------- + TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) + +#------------------------------------------------- +class TupleCustom6(QWidget,Ui_Tuple6,TupleCustom): +#------------------------------------------------- + def __init__(self,tailleTuple,parent,parentQt,index): + #------------------- + TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) + +#------------------------------------------------- +class TupleCustom7(QWidget,Ui_Tuple7,TupleCustom): +#------------------------------------------------- + def __init__(self,tailleTuple,parent,parentQt,index): + #------------------- + TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) + +#------------------------------------------------- +class TupleCustom8(QWidget,Ui_Tuple8,TupleCustom): +#------------------------------------------------- + def __init__(self,tailleTuple,parent,parentQt,index): + #------------------- + TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) + +#------------------------------------------------- +class TupleCustom9(QWidget,Ui_Tuple9,TupleCustom): +#------------------------------------------------- + def __init__(self,tailleTuple,parent,parentQt,index): + #------------------- + TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) + +#------------------------------------------------- +class TupleCustom10(QWidget,Ui_Tuple10,TupleCustom): +#------------------------------------------------- + def __init__(self,tailleTuple,parent,parentQt,index): + #------------------- + TupleCustom.__init__(self,tailleTuple,parent,parentQt,index) + if self.parentQt.editor.maConfiguration.closeParenthese : + self.label_5.close() + self.label_7.close() + + + + + +# -------------------------------------------- # class MonWidgetPlusieursTuple(Feuille,GereListe): +# -------------------------------------------- # + + def __init__(self, node, monSimpDef, nom, objSimp, parentQt, commande): + #----------------------------------------------------- - def __init__(self,node,monSimpDef,nom,objSimp,parentQt,commande): - print "MonWidgetPlusieursTuple" self.indexDernierLabel=0 + self.numLineEditEnCours=0 self.nomLine="TupleVal" self.listeAffichageWidget=[] Feuille.__init__(self,node,monSimpDef,nom,objSimp,parentQt,commande) @@ -156,201 +263,283 @@ class MonWidgetPlusieursTuple(Feuille,GereListe): self.finCommentaireListe() self.politique=PolitiquePlusieurs(self.node,self.editor) self.parentQt.commandesLayout.insertWidget(-1,self) - if sys.platform[0:5]!="linux": - repIcon=self.node.editor.appliEficas.repIcon - fichier=os.path.join(repIcon, 'arrow_up.png') - icon = QIcon(fichier) - self.RBHaut.setIcon(icon) - self.RBHaut.setIconSize(QSize(32, 32)) - fichier2=os.path.join(repIcon, 'arrow_down.png') - icon2 = QIcon(fichier2) - self.RBBas.setIcon(icon2) - fichier3=os.path.join(repIcon, 'file-explorer.png') - icon3 = QIcon(fichier3) - self.BSelectFichier.setIcon(icon3) - self.BSelectFichier.setIconSize(QSize(32, 32)) - if monEnvQT5 : - self.BSelectFichier.clicked.connect(self.selectInFile) + + #if sys.platform[0:5]!="linux": + if 1 : + #Pour MT + repIcon=self.node.editor.appliEficas.repIcon + fichier=os.path.join(repIcon, 'arrow_up.png') + icon = QIcon(fichier) + self.RBHaut.setIcon(icon) + self.RBHaut.setIconSize(QSize(32, 32)) + fichier2=os.path.join(repIcon, 'arrow_down.png') + icon2 = QIcon(fichier2) + self.RBBas.setIcon(icon2) + fichier3=os.path.join(repIcon, 'file-explorer.png') + icon3 = QIcon(fichier3) + self.BSelectFichier.setIcon(icon3) + self.BSelectFichier.setIconSize(QSize(32, 32)) + self.BSelectFichier.clicked.connect(self.selectInFile) + + + + + def ajoutLineEdit(self,valeur=None,inInit=False): + #------------------------------------------------ + self.indexDernierLabel=self.indexDernierLabel+1 + nomLineEdit=self.nomLine+str(self.indexDernierLabel) + if hasattr(self,nomLineEdit) : + self.indexDernierLabel=self.indexDernierLabel-1 + return + + nomCustomTuple='TupleCustom'+str(self.nbValeurs) + laClasseDuTuple=globals()[nomCustomTuple] + nouveauLE=laClasseDuTuple(self.nbValeurs,self.scrollArea,self,self.indexDernierLabel) + + #if self.nbValeurs == 2 : nouveauLE = TupleCustom2(self.nbValeurs,self.scrollArea,self,self.indexDernierLabel) + #else : nouveauLE = TupleCustom3(self.nbValeurs,self.scrollArea,self,self.indexDernierLabel) + + self.verticalLayoutLE.insertWidget(self.indexDernierLabel-1,nouveauLE) + setattr(self,nomLineEdit,nouveauLE) + if valeur != None : nouveauLE.setValeur(valeur) + + for i in range(self.nbValeurs) : + num=i+1 + nomLineEdit='lineEditVal'+str(num) + lineEditVal=getattr(nouveauLE,nomLineEdit) + self.listeAffichageWidget.append(lineEditVal) + #self.listeAffichageWidget.append(nouveauLE.lineEditVal1) + #self.listeAffichageWidget.append(nouveauLE.lineEditVal2) + #if self.nbValeurs == 3 : self.listeAffichageWidget.append(nouveauLE.lineEditVal3) + + self.etablitOrdre() + + # deux lignes pour que le ensureVisible fonctionne + self.estVisible=nouveauLE.lineEditVal1 + if inInit==False :QTimer.singleShot(1, self.rendVisibleLigne) + + def etablitOrdre(self): + # --------------------- + i=0 + while(i +1 < len(self.listeAffichageWidget)): + self.listeAffichageWidget[i].setFocusPolicy(Qt.StrongFocus) + self.setTabOrder(self.listeAffichageWidget[i],self.listeAffichageWidget[i+1]) + i=i+1 + + + def setValeurs(self): + # --------------------- + if self.editor.code == 'PSEN' : self.RBListePush() + valeurs=self.node.item.getValeur() + min,max=self.node.item.getMinMax() + if max == "**" or max > 8 : aCreer= 8 + else : aCreer=max + + if valeurs == () or valeurs == None : + for i in range(aCreer): self.ajoutLineEdit(inInit=True) + return + + for v in valeurs: + self.ajoutLineEdit(v,inInit=True) + + for i in range(len(valeurs),aCreer) : self.ajoutLineEdit(inInit=True) + + def rendVisibleLigne(self): + # ------------------------- + QApplication.processEvents() + self.estVisible.setFocus(True) + self.scrollArea.ensureWidgetVisible(self.estVisible,0,0) + + + def changeValeur(self,changeDePlace=False,oblige=True): + # ----------------------------------------------------- + #Pour compatibilite signature + #print ('dschangeValeur', self.indexDernierLabel) + + aLeFocus=self.focusWidget() + listeComplete=[] + libre=False + #print (self.indexDernierLabel) + for i in range(self.indexDernierLabel) : + nom=self.nomLine+str(i+1) + courant=getattr(self,nom) + valeurTuple=courant.valeur + if valeurTuple == None or valeurTuple== "" or valeurTuple==[]: + libre=True + continue + validite,comm,comm2,listeRetour= self.politique.ajoutTuple(valeurTuple,listeComplete) + if not validite: + if comm2 != '' : comm += " " + comm2 + self.editor.afficheInfos(comm+" "+str(self.objSimp.definition.validators.typeDesTuples),Qt.red) + return + listeComplete.append(tuple(courant.valeur)) + #print ('listeComplete', listeComplete) + if listeComplete == [] : listeComplete=None + self.node.item.setValeur(listeComplete) + + if changeDePlace : return + min,max=self.node.item.getMinMax() + if self.indexDernierLabel == max : self.editor.afficheInfos(tr('Nb maximum de valeurs atteint')) + if self.indexDernierLabel < max and libre==False : + self.ajoutLineEdit() + self.listeAffichageWidget[-2].setFocus(True) else : - self.connect(self.BSelectFichier,SIGNAL("clicked()"), self.selectInFile) - - - - - def ajoutLineEdit(self,valeur=None,inInit=False): - self.indexDernierLabel=self.indexDernierLabel+1 - nomLineEdit=self.nomLine+str(self.indexDernierLabel) - if hasattr(self,nomLineEdit) : - self.indexDernierLabel=self.indexDernierLabel-1 - return - - if self.nbValeurs == 2 : nouveauLE = TupleCustom2(self.nbValeurs,self.scrollArea,self,self.indexDernierLabel) - else : nouveauLE = TupleCustom3(self.nbValeurs,self.scrollArea,self,self.indexDernierLabel) - - self.verticalLayoutLE.insertWidget(self.indexDernierLabel-1,nouveauLE) - setattr(self,nomLineEdit,nouveauLE) - if valeur != None : nouveauLE.setValeur(valeur) - - self.listeAffichageWidget.append(nouveauLE.lineEditVal_1) - self.listeAffichageWidget.append(nouveauLE.lineEditVal_2) - if self.nbValeurs == 3 : self.listeAffichageWidget.append(nouveauLE.lineEditVal_3) - self.etablitOrdre() - - # deux lignes pour que le ensureVisible fonctionne - self.estVisible=nouveauLE.lineEditVal_1 - if inInit==False :QTimer.singleShot(1, self.rendVisibleLigne) - - def etablitOrdre(self): - i=0 - while(i +1 < len(self.listeAffichageWidget)): - self.listeAffichageWidget[i].setFocusPolicy(Qt.StrongFocus) - self.setTabOrder(self.listeAffichageWidget[i],self.listeAffichageWidget[i+1]) - i=i+1 - - - def setValeurs(self): - self.RBListePush() - valeurs=self.node.item.get_valeur() - min,max=self.node.item.GetMinMax() - if max == "**" or max > 5 : aCreer=5 - else : aCreer=max - - if valeurs == () or valeurs == None : - for i in range(aCreer): self.ajoutLineEdit(inInit=True) - return - - for v in valeurs: - self.ajoutLineEdit(v,inInit=True) - - for i in range(len(valeurs),aCreer) : self.ajoutLineEdit(inInit=True) - - def rendVisibleLigne(self): - QApplication.processEvents() - self.estVisible.setFocus(True) - self.scrollArea.ensureWidgetVisible(self.estVisible,0,0) - - - def changeValeur(self,changeDePlace=False,oblige=True): - #Pour compatibilite signature - aLeFocus=self.focusWidget() - listeComplete=[] - - libre=False - for i in range(self.indexDernierLabel) : - nom=self.nomLine+str(i+1) - courant=getattr(self,nom) - valeurTuple=courant.valeur - if valeurTuple == None or valeurTuple== "": - libre=True - continue - validite,comm,comm2,listeRetour= self.politique.AjoutTuple(valeurTuple,listeComplete) - if not validite: - if comm2 != '' : comm += " " + comm2 - self.editor.affiche_infos(comm+" "+str(self.objSimp.definition.validators.typeDesTuples),Qt.red) - return - listeComplete.append(tuple(courant.valeur)) - if listeComplete == [] : listeComplete=None - self.node.item.set_valeur(listeComplete) - - if changeDePlace : return - min,max=self.node.item.GetMinMax() - if self.indexDernierLabel == max : self.editor.affiche_infos(tr('Nb maximum de valeurs atteint')) - if self.indexDernierLabel < max and libre==False : - self.ajoutLineEdit() - self.listeAffichageWidget[-2].setFocus(True) - else : - try : - QApplication.processEvents() - w=self.listeAffichageWidget[self.listeAffichageWidget.index(aLeFocus)+1] - w.setFocus(True) - self.scrollArea.ensureWidgetVisible(w,0,0) - except : - pass - - def ajoutNValeur(self,liste): + try : + QApplication.processEvents() + w=self.listeAffichageWidget[self.listeAffichageWidget.index(aLeFocus)+1] + w.setFocus(True) + self.scrollArea.ensureWidgetVisible(w,0,0) + except : + pass + + def echange(self,num1,num2): + # on donne le focus au a celui ou on a bouge + # par convention le 2 + nomLineEdit=self.nomLine+str(num1) + courant=getattr(self,nomLineEdit) + valeurAGarder=courant.getValeur() + nomLineEdit2=self.nomLine+str(num2) + courant2=getattr(self,nomLineEdit2) + courant.setText(courant2.text()) + courant2.setText(valeurAGarder) + self.changeValeur(changeDePlace=True) + self.numLineEditEnCours=num2 + self.lineEditEnCours=courant2 + courant2.lineEditVal1.setFocus(True) + + def ajoutNValeur(self,liste): + #---------------------------- + # attention quand on charge par un fichier, on ne peut pas se contenter d ajouter N fois 1 valeur + # car alors le temps de verification devient prohibitif reconstructu=ion et verification a + # chaque valeur. d ou l ajout de ajoutNTuple a politique plusieurs + if len(liste)%self.nbValeurs != 0 : - texte="Nombre incorrect de valeurs" - self.editor.affiche_infos(tr(texte),Qt.red) + texte="Nombre incorrect de valeurs" + self.editor.afficheInfos(tr(texte),Qt.red) + return + i=0 - min,max=self.node.item.GetMinMax() - if self.objSimp.valeur == None : l = len(liste) and self.objSimp.valeur - else : l = len(liste)+len(self.objSimp.valeur) - if l > max : - texte=tr("Nombre maximum de valeurs ")+str(max)+tr(" atteint") - self.editor.affiche_infos(texte,Qt.red) - return + longueur=len(liste)//self.nbValeurs + increment=self.nbValeurs + listeFormatee=[liste[k*increment:(k+1)*increment] for k in range(longueur)] + listeFormatee=tuple(listeFormatee) + + min,max=self.node.item.getMinMax() + if self.objSimp.valeur == None : listeComplete=listeFormatee + else : listeComplete =self.objSimp.valeur + listeFormatee + + if len(listeComplete) > max : + texte=tr("Nombre maximum de valeurs ")+str(max)+tr(" atteint") + self.editor.afficheInfos(texte,Qt.red) + return + + validite,comm,comm2,listeRetour= self.politique.ajoutNTuple(listeComplete) + if not validite : + self.editor.afficheInfos(comm+comm2,Qt.red) + return + + # on calcule le dernier lineedit rempli avant de changer la valeur + if self.objSimp.valeur != None : indexDernierRempli=len(self.objSimp.valeur) + else : indexDernierRempli=0 + + self.politique.recordValeur(listeComplete) + while ( i < len(liste) ) : - if self.objSimp.valeur != None : indexDernierRempli=len(self.objSimp.valeur) - else : indexDernierRempli=0 try : - t=tuple(liste[i:i+self.nbValeurs]) - i=i+self.nbValeurs + t=tuple(liste[i:i+self.nbValeurs]) except: - t=tuple(liste[i:len(liste)]) + t=tuple(liste[i:len(liste)]) + i=i+self.nbValeurs if indexDernierRempli < self.indexDernierLabel: - nomLineEdit=self.nomLine+str(indexDernierRempli+1) - LEARemplir=getattr(self,nomLineEdit) - LEARemplir.lineEditVal_1.setText(str(t[0])) - LEARemplir.lineEditVal_2.setText(str(t[1])) - if self.nbValeurs== 3 : LEARemplir.lineEditVal_3.setText(str(t[2])) - LEARemplir.valueChange() - else : - self.ajoutLineEdit(t,False) - nomLineEdit=self.nomLine+str(self.indexDernierLabel) - LEARemplir=getattr(self,nomLineEdit) - LEARemplir.valueChange() - - def RBListePush(self): - # PN a rendre generique avec un truc tel prerempli - if self.objSimp.valeur != None and self.objSimp.valeur != [] : return - if not hasattr(self.editor.readercata.cata[0],'sd_ligne') : self.editor.readercata.cata[0].sd_ligne=None - if not hasattr(self.editor.readercata.cata[0],'sd_generateur') : self.editor.readercata.cata[0].sd_generateur=None - if not hasattr(self.editor.readercata.cata[0],'sd_transfo') : self.editor.readercata.cata[0].sdtransfo=None - if not hasattr(self.editor.readercata.cata[0],'sd_charge') : self.editor.readercata.cata[0].sd_charge=None - if not hasattr(self.editor.readercata.cata[0],'sd_moteur') : self.editor.readercata.cata[0].sd_moteur=None - if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata[0].sd_ligne : - val=[] - for k in self.objSimp.jdc.LineDico.keys() : - try : - valeur=self.objSimp.jdc.get_concept(k) - val.append((valeur,0)) - except : - pass - self.node.item.set_valeur(val) - if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata[0].sd_generateur : - val=[] - for k in self.objSimp.jdc.MachineDico.keys() : - try : - valeur=self.objSimp.jdc.get_concept(k) - val.append((valeur,0)) - except : - pass - self.node.item.set_valeur(val) - if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata[0].sd_transfo : - val=[] - for k in self.objSimp.jdc.TransfoDico.keys() : - try : - valeur=self.objSimp.jdc.get_concept(k) - val.append((valeur,0)) - except : - pass - self.node.item.set_valeur(val) - if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata[0].sd_charge : - val=[] - for k in self.objSimp.jdc.LoadDico.keys() : - try : - valeur=self.objSimp.jdc.get_concept(k) - val.append((valeur,0)) - except : - pass - self.node.item.set_valeur(val) - if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata[0].sd_moteur : - val=[] - for k in self.objSimp.jdc.MotorDico.keys() : - try : - valeur=self.objSimp.jdc.get_concept(k) - val.append((valeur,0)) - except : - pass - self.node.item.set_valeur(val) + nomLEARemplir=self.nomLine+str(indexDernierRempli+1) + LEARemplir=getattr(self,nomLEARemplir) + for n in range(self.nbValeurs) : + nomLineEdit='lineEditVal'+str(n+1) + lineEditVal=getattr(LEARemplir,nomLineEdit) + lineEditVal.setText(str(t[n])) + else : + # ne pas appeler ajoutLineEdit(t,False ) pb de boucle pb du a etablitOrdre et a listeWidgetAffichage qui bouge + self.indexDernierLabel=self.indexDernierLabel+1 + nomLineEdit=self.nomLine+str(self.indexDernierLabel) + + nomCustomTuple='TupleCustom'+str(self.nbValeurs) + laClasseDuTuple=globals()[nomCustomTuple] + nouveauLE=laClasseDuTuple(self.nbValeurs,self.scrollArea,self,self.indexDernierLabel) + + self.verticalLayoutLE.insertWidget(self.indexDernierLabel-1,nouveauLE) + setattr(self,nomLineEdit,nouveauLE) + nouveauLE.setValeur(t) + + for n in range(self.nbValeurs) : + nomLineEdit='lineEditVal'+str(n+1) + lineEditVal=getattr(nouveauLE,nomLineEdit) + self.listeAffichageWidget.append(lineEditVal) + indexDernierRempli = indexDernierRempli+1 + + self.etablitOrdre() + + + + def RBListePush(self): + #---------------------- + # PN a rendre generique avec un truc tel prerempli + # pour l instant specifique PSEN + + if self.editor.code == 'VP' : return + if self.objSimp.valeur != None and self.objSimp.valeur != [] : return + if not hasattr(self.editor.readercata.cata,'sd_ligne') : self.editor.readercata.cata.sd_ligne=None + if not hasattr(self.editor.readercata.cata,'sd_generateur') : self.editor.readercata.cata.sd_generateur=None + if not hasattr(self.editor.readercata.cata,'sd_transfo') : self.editor.readercata.cata.sd_transfo=None + if not hasattr(self.editor.readercata.cata,'sd_charge') : self.editor.readercata.cata.sd_charge=None + if not hasattr(self.editor.readercata.cata,'sd_moteur') : self.editor.readercata.cata.sd_moteur=None + if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata.sd_ligne : + val=[] + if hasattr(self.objSimp.jdc,'LineDico'): + for k in self.objSimp.jdc.LineDico : + try : + valeur=self.objSimp.jdc.getConcept(k) + val.append((valeur,0)) + except : + pass + self.node.item.setValeur(val) + if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata.sd_generateur : + val=[] + if hasattr(self.objSimp.jdc,'MachineDico'): + for k in self.objSimp.jdc.MachineDico : + try : + valeur=self.objSimp.jdc.getConcept(k) + val.append((valeur,0)) + except : + pass + self.node.item.setValeur(val) + if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata.sd_transfo : + val=[] + if hasattr(self.objSimp.jdc,'TransfoDico'): + for k in self.objSimp.jdc.TransfoDico : + try : + valeur=self.objSimp.jdc.getConcept(k) + val.append((valeur,0)) + except : + pass + self.node.item.setValeur(val) + if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata.sd_charge : + val=[] + if hasattr(self.objSimp.jdc,'LoadDico'): + for k in self.objSimp.jdc.LoadDico : + try : + valeur=self.objSimp.jdc.getConcept(k) + val.append((valeur,0)) + except : + pass + self.node.item.setValeur(val) + if self.objSimp.definition.validators.typeDesTuples[0]==self.editor.readercata.cata.sd_moteur : + val=[] + if hasattr(self.objSimp.jdc,'MotorDico'): + for k in self.objSimp.jdc.MotorDico : + try : + valeur=self.objSimp.jdc.getConcept(k) + val.append((valeur,0)) + except : + pass + self.node.item.setValeur(val)