if self.code in ['Adao','ADAO','MAP'] : self.afficheApresInsert=True
if self.code in ['TELEMAC',] : self.enteteQTree='premier'
else : self.enteteQTree='complet'
- if self.code in ['Adao','ADAO','TELEMAC'] : self.affichePlie=True
+ if self.code in ['Adao','ADAO','TELEMAC','VP'] : self.affichePlie=True
else : self.affichePlie=False
self.Commandes_Ordre_Catalogue =self.readercata.Commandes_Ordre_Catalogue
# si possible on renomme l objet comme le noeud couper
if (self.QWParent.edit == "couper"):
- #print ('je pass la')
if noeudACopier.treeParent.editor != noeudOuColler.treeParent.editor:
QMessageBox.critical( self, tr("Deplacement refuse"),tr('Deplacement refuse entre 2 fichiers. Seule la copie est autorisee '))
nodeOuAjouter=self.node_selected[0]
if nodeOuAjouter != self.tree.racine :
while nodeOuAjouter.treeParent != self.tree.racine:
- #print (nodeOuAjouter)
nodeOuAjouter=nodeOuAjouter.treeParent
- #print (nodeOuAjouter.parent == self.tree.racine)
nouveau=nodeOuAjouter.appendBrother(nomEtape)
try :
self.node_selected[0].setSelected(False)
# dans le JDC
self.jdc.suppEntite(etape)
- #-------------------------------------#
- def deleteMC(self,etape,MCFils,listeAvant=()):
- #-------------------------------------#
- # dans le JDC
- ouChercher=etape
- for mot in listeAvant :
- ouChercher=ouChercher.getChild(mot,restreint="oui")
- monMC=ouChercher.getChild(MCFils,restreint="oui")
- if monMC != None : ouChercher.suppEntite(monMC)
- ouChercher.state='changed'
- ouChercher.isValid()
-
- #-------------------------------------#
- def ajoutMC(self,etape,MCFils,valeurs,listeAvant=()):
- #-------------------------------------#
- # dans le JDC
- ouChercher=etape
- for mot in listeAvant :
- ouChercher=ouChercher.getChild(mot,restreint="oui")
- monMC=etape.getChild(ouChercher,restreint="oui")
- if monMC== None : monMC= ouChercher.addEntite(MCFils)
- monMC.valeur=valeurs
- monMC.val=valeurs
- monMC.state='changed'
- monMC.isValid()
-
- #----------------------------------------------#
- def ajoutMCFact(self,etape,MCFils,listeAvant=()):
- #----------------------------------------------#
- # dans le JDC
- #print ('ajoutMCFact')
- ouChercher=etape
- #print (ouChercher)
- for mot in listeAvant :
- ouChercher=ouChercher.getChild(mot,restreint="oui")
- #print (mot)
- #print (ouChercher)
- monMC=etape.getChild(ouChercher,restreint="oui")
- if monMC== None : monMC= ouChercher.addEntite(MCFils)
- monMC.isValid()
-
#-----------------------------------------
def initSplitterSizes(self, nbWidget=3):
#-----------------------
def getEtapeCourante(self) :
#-----------------------
- #print (self.tree.selectedItems())
if len(self.tree.selectedItems()) != 1 : return None
etape=self.tree.selectedItems()[0].item.object.getEtape()
return etape
self.jdc.aReafficher=False
txt_exception = None
if not jdc:
-# si on est en XMML ne faut-il pas passer en Accas ?
self.jdc.analyse()
txt_exception = self.jdc.cr.getMessException()
if txt_exception :
CONTEXT.unsetCurrentStep()
- #if elf.appliEficas.maConfiguration
+ #jdc=self.readercata.cata[0].JdC(procedure=text,
jdc=self.readercata.cata.JdC(procedure=text,
appli=self,
cata=self.readercata.cata,
def getTextJDC(self,format,pourRun=0,formatLigne="beautifie"):
#-----------------------------------------------------------#
if self.code == "MAP" and not(format in generator.plugins): format = "MAP"
-
if format in generator.plugins:
# Le generateur existe on l'utilise
# dans le JDC
ouChercher=etape
for mot in listeAvant :
- ouChercher=ouChercher.get_child(mot,restreint="oui")
- monMC=ouChercher.get_child(MCFils,restreint="oui")
+ ouChercher=ouChercher.getChild(mot,restreint="oui")
+ monMC=ouChercher.getChild(MCFils,restreint="oui")
if monMC != None : ouChercher.suppentite(monMC)
ouChercher.state='changed'
ouChercher.isvalid()
- #-------------------------------------#
+ #--------------------------------------------------------#
def ajoutMC(self,etape,MCFils,valeurs,listeAvant=()):
- #-------------------------------------#
+ #--------------------------------------------------------#
# dans le JDC
+ debug=False
+ if debug : print ('ajoutMC', etape,MCFils,valeurs,listeAvant)
ouChercher=etape
+ if debug : print (ouChercher)
for mot in listeAvant :
- ouChercher=ouChercher.get_child(mot,restreint="oui")
- monMC=etape.get_child(ouChercher,restreint="oui")
- if monMC== None : monMC= ouChercher.addentite(MCFils)
+ ouChercher=ouChercher.getChild(mot,restreint="oui", debug=1)
+ monMC=ouChercher.getChild(MCFils,restreint="oui")
+ if monMC == None : monMC = ouChercher.addEntite(MCFils)
monMC.valeur=valeurs
monMC.val=valeurs
monMC.state='changed'
monMC.isvalid()
+ return 1
+
+ #--------------------------------------------------------#
+ def ajoutMCinMCFactUnique(self,etape,MCFils,valeurs,listeAvant=()):
+ # Attention si +sieursMCFACT
+ #--------------------------------------------------------#
+ # dans le JDC
+ debug=False
+ if debug : print ('ajoutMC', etape,MCFils,valeurs,listeAvant)
+ ouChercher=etape
+ if debug : print (ouChercher)
+ for mot in listeAvant :
+ ouChercher=ouChercher.getChild(mot,restreint="oui", debug=1)
+ # Attention si +sieursMCFACT
+ ouChercher=ouChercher[0]
+ if debug : print (ouChercher)
+ monMC=ouChercher.getChild(MCFils,restreint="oui")
+ if monMC == None : monMC = ouChercher.addEntite(MCFils)
+ monMC.valeur=valeurs
+ monMC.val=valeurs
+ monMC.state='changed'
+ monMC.isValid()
+ return 1
#----------------------------------------------#
def ajoutMCFact(self,etape,MCFils,listeAvant=()):
#----------------------------------------------#
# dans le JDC
- print ('ajoutMCFact')
ouChercher=etape
- print (ouChercher)
for mot in listeAvant :
- ouChercher=ouChercher.get_child(mot,restreint="oui")
- print (mot)
- print (ouChercher)
- monMC=etape.get_child(ouChercher,restreint="oui")
- if monMC== None : monMC= ouChercher.addentite(MCFils)
+ ouChercher=ouChercher.getChild(mot,restreint="oui")
+ monMC=etape.getChild(ouChercher,restreint="oui")
+ if monMC== None : monMC= ouChercher.addEntite(MCFils)
monMC.isvalid()
+ #-----------------------------------------------------------------#
+ def setValeurMCSimpInEtape(self,etape,listeAvant,valeur):
+ #-----------------------------------------------------------------#
+ # pour VP
+ monObj=etape
+ for mot in listeAvant :
+ monObj=monObj.getChild(mot,restreint="oui")
+ if monObj==None : return False
+ if monObj == None : return False
+ if monObj.valeur != valeur :
+ # PNPN le setValeur fait des bugs --> pourquoi
+ #monObj.setValeur(valeur)
+ monObj.valeur=valeur
+ monObj.isValid()
+ return True
+
#-------------------------------------------------#
def getValeur(self,nomEtape,MCFils,listeAvant=()):
#-------------------------------------------------#
# dans le JDC
+ debug=0
ouChercher=None
for e in self.jdc.etapes:
if e.nom == nomEtape : ouChercher=e; break
if debug : print ('etape trouvee', ouChercher)
if ouChercher==None : return None
for mot in listeAvant :
- ouChercher=ouChercher.get_child(mot,restreint="oui")
+ ouChercher=ouChercher.getChild(mot,restreint="oui")
if debug : print (mot, ouChercher)
if ouChercher==None : return None
- monMC=ouChercher.get_child(MCFils,restreint="oui")
+ monMC=ouChercher.getChild(MCFils,restreint="oui")
if debug : print ('monMC', monMC)
if monMC== None : return None
return monMC.valeur
+ #-------------------------------------------------#
+ def getMCDsEtape(self,etape,MCFils,listeAvant=()):
+ #-------------------------------------------------#
+ # dans le JDC
+
+ if etape==None : return None
+ ouChercher=etape
+ debug=0
+ for mot in listeAvant :
+ ouChercher=ouChercher.getChild(mot,restreint="oui")
+ if debug : print (mot, ouChercher)
+ if ouChercher==None : return None
+ monMC=ouChercher.getChild(MCFils,restreint="oui")
+ if debug : print ('monMC', monMC)
+ return monMC
+
#-----------------------------------------------------------#
def setValeur(self,nomEtape,MCFils,valeur,listeAvant=()):
#--------------------------------------------------------#
if e.nom == nomEtape : ouChercher=e; break
if ouChercher==None : return None
for mot in listeAvant :
- ouChercher=ouChercher.get_child(mot,restreint="oui")
+ ouChercher=ouChercher.getChild(mot,restreint="oui")
#print (mot, ouChercher)
if ouChercher==None : return None
- monMC=ouChercher.get_child(MCFils,restreint="oui")
+ monMC=ouChercher.getChild(MCFils,restreint="oui")
monMC.set_valeur(valeur)
monMC.isvalid()
if ouChercher==None : return
for mot in listeAvant :
- ouChercher=ouChercher.get_child(mot,restreint="oui")
+ ouChercher=ouChercher.getChild(mot,restreint="oui")
if ouChercher==None : return
- monMC=ouChercher.get_child(MCFils,restreint="oui")
- if monMC== None : monMC= ouChercher.addentite(MCFils)
+ monMC=ouChercher.getChild(MCFils,restreint="oui")
+ if monMC== None : monMC= ouChercher.addEntite(MCFils)
monMC.definition.into=valeurs
from Noyau.N_VALIDATOR import IntoProtocol
for mot in listeAvant :
try :
- ouChercher=ouChercher.get_child(mot,restreint="oui")
+ ouChercher=ouChercher.getChild(mot,restreint="oui")
# Le mot clef n est pas la
except : return 0
try :
- monMC=ouChercher.get_child(MCFils,restreint="oui")
+ monMC=ouChercher.getChild(MCFils,restreint="oui")
# Le mot clef n est pas la
except : return 0
if monMC == None : return 0
return 1
#------------------------------------------------#
- def changeIntoDefMC(self,nomEtape,listeMC,valeurs):
+ def changeIntoDefMC(self,etape,listeMC,valeurs):
#------------------------------------------------#
# dans le MDD
#definitionEtape=getattr(self.jdc.cata[0],nomEtape)
- definitionEtape=getattr(self.jdc.cata,nomEtape)
- ouChercher=definitionEtape
+ #definitionEtape=getattr(self.jdc.cata,nomEtape)
+ print ( 'changeIntoDefMC ',etape,listeMC,valeurs)
+ ouChercher=getattr(self.jdc.cata,etape.nom)
- if len(listeMC) > 1 :
- for mc in listeMC[0:-1]:
- mcfact=ouChercher.entites[mc]
- ouChercher=mcfact
- mcAccas=ouChercher.entites[listeMC[-1]]
+ #if len(listeMC) > 1 :
+ # for mc in listeMC[0:-1]:
+ # mcfact=ouChercher.entites[mc]
+ # ouChercher=mcfact
+ #mcAccas=ouChercher.entites[listeMC[-1]]
+
+ for mc in listeMC :
+ mcAccas=ouChercher.entites[mc]
+ ouChercher=mcAccas
+ if ouChercher == None : return 0
if hasattr(mcAccas,'into') : oldValeurs=mcAccas.into
else : oldValeurs=None
- if oldValeurs==valeurs : return 0
+ if oldValeurs==valeurs : return 1
mcAccas.into=valeurs
from Noyau.N_VALIDATOR import IntoProtocol
mcAccas.intoProto = IntoProtocol("into", into=valeurs, val_min=mcAccas.val_min, val_max=mcAccas.val_max)
ouChercher = etape
for mot in listeMC[:-1] :
- ouChercher=ouChercher.get_child(mot,restreint="oui")
+ ouChercher=ouChercher.getChild(mot,restreint="oui")
if ouChercher==None : return
MCFils=listeMC[-1]
- monMC=ouChercher.get_child(MCFils,restreint="oui")
- if monMC== None : monMC= etape.addentite(MCFils)
+ monMC=ouChercher.getChild(MCFils,restreint="oui")
+ if monMC== None : monMC= etape.addEntite(MCFils)
monMC.definition.into=into
monMC.valeur=valeurs
from six.moves import range
from PyQt5.QtGui import QIcon
-from PyQt5.QtWidgets import QApplication, QMessageBox
+from PyQt5.QtWidgets import QApplication, QMessageBox, QScrollArea
from PyQt5.QtCore import QTimer, QSize, Qt
# Modules Eficas
from Extensions.i18n import tr
from InterfaceQT4.feuille import Feuille
-from desWidgetPlusieursBase import Ui_WidgetPlusieursBase
+from desWidgetPlusieursBase import Ui_WidgetPlusieursBase
from InterfaceQT4.politiquesValidation import PolitiquePlusieurs
from InterfaceQT4.qtSaisie import SaisieValeur
from InterfaceQT4.gereListe import GereListe
self.inInit=False
# PNPN a completer __ si tuple le type des tuples sinon le tuple
self.monCommentaireLabel.setText(self.finCommentaireListe())
+ self.scrollArea.leaveEvent = self.leaveEventScrollArea
def setValeurs(self):
validite,comm,comm2,listeRetour= self.politique.ajoutNTuple(listeComplete)
if not validite :
- self.editor.afficheInfos(comm2,Qt.red)
+ self.editor.affiche_infos(texte,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.editor.afficheInfos(tr('nb min de valeurs : ')+str( self.monSimpDef.min))
if len(self.listeValeursCourantes) < min and oblige==True: return
if len(self.listeValeursCourantes) > max : return
- self.node.item.setValeur(self.listeValeursCourantes)
+ retour=self.node.item.setValeur(self.listeValeursCourantes)
if len(self.listeValeursCourantes) == self.monSimpDef.max :
self.editor.afficheInfos(tr('nb max de valeurs atteint'))
self.setValide()
self.reaffiche()
-
+ def leaveEventScrollArea(self,event):
+ self.changeValeur(changeDePlace=False)
+ QScrollArea.leaveEvent(self.scrollArea,event)
# Avertissement quand on quitte le widget