sys.path.insert(0,os.path.abspath(os.path.join(os.getcwd(),'..')))
-import pyxb
-import pyxb.binding
-import pyxb.binding.basis
-#import pyxb.utils.utility
-#import pyxb.utils.domutils
+try :
+ import pyxb
+ import pyxb.binding
+ import pyxb.binding.basis
+ #import pyxb.utils.utility
+ #import pyxb.utils.domutils
+except : pass
class X_OBJECT:
# -------------
def addObjPyxb(self,indiceDansLeContenu):
if not self.cata.modeleMetier : return
- print ('_____________ addObjPyxb ds X_OBJECT', self.nom, indiceDansLeContenu)
+ #print ('**********************************************')
+ #print ('_____________ addObjPyxb ds X_OBJECT', self.nom, indiceDansLeContenu)
# adherence Accas sur le parent
parent=self.parent
while (parent.isBLOC()): parent=parent.parent
grandPere=self.perePyxb.perePyxb
ancienObjPerePyxb=self.perePyxb.objPyxb
print ('dans le perePyxb', self.perePyxb.nom)
+ print ('j ai pour orderedContent', self.objPyxb.orderedContent())
self.objPyxb.objAccas=self
listeArg=[]
indice=0
# a tester
# a affiner si on ajoute en fin
+ print (indiceDansLeContenu)
+ print (self.perePyxb.objPyxb.orderedContent())
for i in self.perePyxb.objPyxb.orderedContent():
if indice==indiceDansLeContenu : listeArg.append(self.objPyxb)
else : listeArg.append(i._Content__value)
indice=indice+1
- if indiceDansLeContenu > len(self.perePyxb.objPyxb.orderedContent()):
+ print ('avec', listeArg)
+ if indiceDansLeContenu == len(self.perePyxb.objPyxb.orderedContent()):
listeArg.append(self.objPyxb)
print ('avec', listeArg)
#print (type(self.valeur))
if self.valeur != None : self.objPyxb=self.maClasseModeleMetier(self.valeur)
elif self.definition.into != None and 'TXM' in self.definition.type : self.objPyxb = None
- else : self.objPyxb=self.maClasseModeleMetier();
+ #else : self.objPyxb=self.maClasseModeleMetier();
+ else : self.objPyxb=self.maClasseModeleMetier(_validate_constraints=False);
if self.objPyxb : self.objPyxb.objAccas=self
#print ('X_MCSIMP', self.nom, self.objPyxb, )
- #print ('fin X_MCSIMP', self.objPyxb, self.nom,self)
+ print ('fin X_MCSIMP', self.objPyxb, self.nom,self)
def setValeurObjPyxb(self,newVal):
if not self.cata.modeleMetier : return
- #print ('dans setValeurObjPyxb MCSIMP ', self.nom)
+ print ('dans setValeurObjPyxb MCSIMP ', self.nom)
#print (self.nom , ' a pour pere', self.perePyxb, self.perePyxb.nom, self.perePyxb.objPyxb)
if newVal != None : nvlObj=self.maClasseModeleMetier(newVal)
- else : nvlObj=self.maClasseModeleMetier()
+ #else : nvlObj=self.maClasseModeleMetier()
+ # a priori impossible mais ?
+ else : nvlObj=self.maClasseModeleMetier(_validate_constraints=False)
self.val=newVal
setattr(self.perePyxb.objPyxb,self.nom,nvlObj)
self.monNomClasseModeleMetier='T_'+self.nom
self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier)
- nvlObj=self.maClasseModeleMetier()
+ #nvlObj=self.maClasseModeleMetier()
+ nvlObj=self.maClasseModeleMetier(_validate_constraints=False)
+ print (self.perePyxb.objPyxb.orderedContent())
+ for i in (self.perePyxb.objPyxb.orderedContent()): print i._Content__value;print (type(i._Content__value))
setattr(self.perePyxb.objPyxb,self.nom,nvlObj)
tampon=self.perePyxb.objPyxb.orderedContent()[-1]
self.objPyxb = nvlObj
self.objPyxb.objAccas=self
indexOC=-1
longueur=len(self.perePyxb.objPyxb.orderedContent())
+ print (self.perePyxb.objPyxb.orderedContent())
+ print (self.perePyxb.nom)
for i in reversed(range(longueur)):
self.perePyxb.objPyxb.orderedContent()[i]=self.perePyxb.objPyxb.orderedContent()[i-1]
if i == indiceDsLeContenu + 1 : break
#
def buildObjPyxb(self,mc_list) :
#print ('________________________________________________')
- print ('X_MCCOMPO buildObjPyxb', self.nom, self, mc_list)
+ #print ('X_MCCOMPO buildObjPyxb', self.nom, self, mc_list)
if not self.cata.modeleMetier : return
self.listArg=[]
self.objPyxbDeConstruction = None
#print ('je passe dans le if pour ', self.nom, self.objPyxb, self)
else :
+ print (self.nom)
+ print (self.listArg)
self.objPyxb=self.maClasseModeleMetier(*self.listArg)
self.objPyxb.objAccas=self
- print ('X_MCCOMPO', self, self.nom, self.objPyxb)
- print ('_______________________________________')
+ #print ('X_MCCOMPO', self, self.nom, self.objPyxb)
+ #print ('_______________________________________')
def delObjPyxb(self):
if not self.cata.modeleMetier : return
self.exploreBLOC(fils)
elif fils.nature == 'MCList' :
for objFils in fils :
- fils.perePyxb=self
- self.listArg.append(fils.objPyxb)
+ #fils.perePyxb=self
+ #self.listArg.append(fils.objPyxb)
+ # fils ou objFils
+ objFils.perePyxb=self
+ self.listArg.append(objFils.objPyxb)
#print (fils.nom ,' est un MCLIST et a pour pere Pyxb', self, self.nom)
else :
self.listArg.append(fils.objPyxb)
# mise a none ? le bloc n a pas d existence en pyxb
self.perePyxb=None
#print ('_______________________________________')
- print ('X_MCBLOC buildObjPyxb', self.nom, self, mc_list)
- # on rattache ses fils au bloc mais leur pere sera ensuite le MCCOMPO qui contient le bloc
- # Pas sur d en avoir besoin du filsPyxb
+ #print ('X_MCBLOC buildObjPyxb', self.nom, self, mc_list)
self.filsPyxb=[]
self.objPyxb=None
- for objAccas in mc_list :
- self.filsPyxb.append(objAccas.objPyxb)
+ # Pas sur d en avoir besoin du filsPyxb
+ # on rattache ses fils au bloc mais leur pere sera ensuite le MCCOMPO qui contient le bloc
+ #for objAccas in mc_list :
+ # self.filsPyxb.append(objAccas.objPyxb)
#print (self.filsPyxb)
#print ('Fin ', self.nom, self.objPyxb)
#print ('_______________________________________')
+ def addObjPyxb(self, indiceDsLeContenu):
+ if not self.cata.modeleMetier : return
+ rangDeLObjet=indiceDsLeContenu
+ for obj in self.mcListe:
+ obj.addObjPyxb( rangDeLObjet)
+ rangDeLObjet=rangDeLObjet+1
class X_MCLIST (X_MCCOMPO):
# --------------------------
def buildObjPyxb(self,mc_list):
- print ('X_MCLIST buildObjPyxb ne fait rien', self.nom, self, mc_list)
+ #print ('X_MCLIST buildObjPyxb ne fait rien', self.nom, self, mc_list)
pass
+ def addObjPyxb(self,indiceDansLeContenu):
+ #traceback.print_stack()
+ print ('X_MCLIST addObjPyxb ne fait rien', self.nom)
+ pass
+
+
class X_MCFACT (X_MCCOMPO):
# -------------------------
self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier)
self.objPyxb=self.maClasseModeleMetier()
self.objPyxb.objAccas=self
- pyxb.GlobalValidationConfig._setContentInfluencesGeneration(pyxb.GlobalValidationConfig.ALWAYS)
- pyxb.GlobalValidationConfig._setInvalidElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION)
- pyxb.GlobalValidationConfig._setOrphanElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION)
+ pyxb.GlobalValidationConfig._setContentInfluencesGeneration(pyxb.GlobalValidationConfig.NEVER)
+ #pyxb.GlobalValidationConfig._setInvalidElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION)
+ #pyxb.GlobalValidationConfig._setOrphanElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION)
#print ('fin buildObjPyxb _______________________________________')
def enregistreEtapePyxb(self,etape,indice=0):
print ('enregistre ds ',self, etape.nom, 'indice = ', indice)
if not self.cata.modeleMetier : return
self.objPyxb.append(etape.objPyxb)
+ etape.perePyxb=self
#print (self.objPyxb.orderedContent())
- if indice != (len(self.objPyxb.orderedContent()) -1) :
- tampon=self.objPyxb.orderedContent()[-1]
- for i in reversed(range(len(self.objPyxb.orderedContent()))):
- self.objPyxb.orderedContent()[i]=self.objPyxb.orderedContent()[i-1]
- if i == indice + 1 : break
- self.objPyxb.orderedContent()[indice]=tampon
+ #if indice != (len(self.objPyxb.orderedContent()) ) :
+ # tampon=self.objPyxb.orderedContent()[-1]
+ # for i in reversed(range(len(self.objPyxb.orderedContent()))):
+ # self.objPyxb.orderedContent()[i]=self.objPyxb.orderedContent()[i-1]
+ # if i == indice + 1 : break
+ # self.objPyxb.orderedContent()[indice]=tampon
#print (self.objPyxb.orderedContent())
etape.perePyxb = self
- try:
- self.objPyxb.validateBinding()
- except pyxb.ValidationError as e:
- print(e.details())
+ #try:
+ # self.objPyxb.validateBinding()
+ #except pyxb.ValidationError as e:
+ # print(e.details())
def toXml(self):
if not self.cata.modeleMetier : return
print ('***************',self.objPyxb,'***************',)
+ print ('***************',self,'***************',)
print ('***************',self.objPyxb.orderedContent(),'***************',)
print(self.objPyxb.toDOM().toprettyxml())
print(self.objPyxb.toxml())
from Extensions.i18n import tr
from InterfaceQT4.feuille import Feuille
-from desWidgetPlusieursInto import Ui_WidgetPlusieursInto
+from desWidgetPlusieursInto import Ui_WidgetPlusieursInto
from InterfaceQT4.politiquesValidation import PolitiquePlusieurs
from InterfaceQT4.qtSaisie import SaisieValeur
from InterfaceQT4.gereListe import GerePlie
self.inhibe=False
#self.finCommentaireListe()
- if self.listeAAfficher== None or self.listeAAfficher==[] :
+ if self.listeAAfficher== None or self.listeAAfficher==[] :
spacerItem = QSpacerItem(30, 20, QSizePolicy.Fixed, QSizePolicy.Minimum)
self.CBLayout.addItem(spacerItem)
nouveauCommentaire=QLabel()
#print ('changeTout')
if self.inhibe : return
self.inhibe=True
- if not(self.CBCheck.isChecked()) :
+ if not(self.CBCheck.isChecked()) :
min,max = self.node.item.getMinMax()
if max < len(self.listeAAfficher) :
commentaire=tr('impossible de tout selectionner : max =')+str(max)
if self.node.item.definition.validators.verifItem(item)==1:
liste.append(item)
self.listeAAfficher=self.node.item.getListePossible(liste)
- else:
+ else:
self.listeAAfficher=self.node.item.getListePossible([])
else :
self.listeAAfficher=self.node.item.getListePossible([])
if self.node.item.hasIntoSug() : self.listeAAfficher=self.node.item.getListePossibleAvecSug([])
-
- if self.objSimp.waitAssd() :
+
+ if self.objSimp.waitAssd() :
self.listeAAfficher=self.node.item.getSdAvantDuBonType()
if self.listeAAfficher== None or self.listeAAfficher==[] : self.listeAAfficher=[]
#else : self.setMinimumHeight(len(self.listeAAfficher)*30)
self.PourEtreCoche=[]
- if self.objSimp.waitAssd() :
+ if self.objSimp.waitAssd() :
for concept in self.listeValeursCourantes: self.PourEtreCoche.append(concept.nom)
else :
for val in self.listeValeursCourantes: self.PourEtreCoche.append(val)
maListe=[]
- for i in self.listeAAfficher: maListe.append(i)
+ for i in self.listeAAfficher: maListe.append(i)
if self.alpha==1 : maListe.sort()
for i in range(1,len(maListe)+1): self.ajoutCB(i)
self.inhibe=False
self.vScrollBar.triggerAction(QScrollBar.SliderToMinimum)
-
+
def ajoutCB(self,index,valeur=None):
#print ('ajoutCB')
self.vScrollBar.triggerAction(QScrollBar.SliderToMaximum)
nouveauCB.setFocus()
setattr(self,nomCB,nouveauCB)
-
+
def ajout1Valeur(self,valeur=None):
for valeur in self.listeValeursCourantes : listeVal.append(valeur)
validite,comm,comm2,listeRetour=self.politique.ajoutValeurs(liste,-1,listeVal)
if (comm2 != "" and comm != None) : return comm2
- if validite :
+ if validite :
self.listeValeursCourantes=self.listeValeursCourantes+listeRetour
return None
else :
return(comm2+" "+comm)
-
+
def changeValeur(self):
courant=getattr(self,nomLineEdit)
if not (courant.isChecked()):continue
valeur=courant.text()
- if valeur != None and valeur != "" :
+ if valeur != None and valeur != "" :
commentaire=self.ajout1Valeur(valeur)
- if (commentaire != None ):
+ if (commentaire != None ):
self.editor.afficheInfos(commentaire,Qt.red)
self.listeValeursCourantesAvant=self.listeValeursCourantes
self.setValeurs()
min,max = self.node.item.getMinMax()
- if len(self.listeValeursCourantes) < min :
+ if len(self.listeValeursCourantes) < min :
self.editor.afficheInfos(tr("Nombre minimal de valeurs : ") + str(min),Qt.red)
- elif len(self.listeValeursCourantes) > max :
+ elif len(self.listeValeursCourantes) > max :
self.editor.afficheInfos(tr("Nombre maximal de valeurs : ") + str(max),Qt.red)
if self.listeValeursCourantes== [] : self.node.item.setValeur([])
#print ('prepareListeResultatFiltre')
filtre=str(self.LEFiltre.text())
for cb in self.listeCB:
- texte=cb.text()
+ texte=cb.text()
if texte.find(filtre) == 0 :
palette = QPalette(Qt.red)
- palette.setColor(QPalette.WindowText,Qt.red)
- cb.setPalette(palette)
+ palette.setColor(QPalette.WindowText,Qt.red)
+ cb.setPalette(palette)
t=cb.text()
cb.setText(t)
self.listeCbRouge.append(cb)