repIcon=self.appliEficas.repIcon
couleur=self.item.getIconName()
- if not self.editor.maConfiguration.differencieSiDefaut and couleur == 'ast-green-dark-ball' : couleur="ast-green-ball"
monIcone = QIcon(repIcon+"/" + couleur + ".png")
self.setIcon(0,monIcone)
"""
repIcon=self.appliEficas.repIcon
couleur=self.item.getIconName()
- if not self.editor.maConfiguration.differencieSiDefaut and couleur == 'ast-green-dark-ball' : couleur="ast-green-ball"
monIcone = QIcon(repIcon+"/" + couleur + ".png")
self.setIcon(0,monIcone)
def getIconName(self):
- if self.isValid():
- if self.object.valeur == self.object.definition.defaut :
- return "ast-green-dark-ball"
- # cas des tuples et des listes
- if self.object.definition.max > 1 :
- if list(self.object.valeur) == list(self.object.definition.defaut) : return "ast-green-dark-ball"
+ if self.appli.maConfiguration.differencieSiDefaut and self.isValid():
+ if self.object.definition.defaut != None :
+ if self.object.valeur == self.object.definition.defaut : return "ast-green-dark-ball"
+ if self.object.definition.max > 1 and list(self.object.valeur) == list(self.object.definition.defaut) : return "ast-green-dark-ball"
return "ast-green-ball"
elif self.object.isOblig():
return "ast-red-ball"
self.node.delete()
def setValide(self):
- #print " c est le moment de gerer le passage au suivant"
if not(hasattr (self,'RBValide')) : return
couleur=self.node.item.getIconName()
- if not self.editor.maConfiguration.differencieSiDefaut and couleur == 'ast-green-dark-ball' : couleur="ast-green-ball"
monIcone = QIcon(self.repIcon+"/" + couleur + ".png")
self.RBValide.setIcon(monIcone)
from __future__ import absolute_import
from __future__ import print_function
-from PyQt5.QtWidgets import QWidget
+from PyQt5.QtWidgets import QWidget, QSpacerItem, QSizePolicy
from PyQt5.QtCore import Qt
from Extensions.i18n import tr
if hasattr(self,'RBDeplie') : self.RBDeplie.clicked.connect(self.setDeplie)
if hasattr(self,'RBPlie') : self.RBPlie.clicked.connect( self.setPlie)
self.setAcceptDrops(True)
+ if hasattr (self, 'commandesLayout'):
+ spacerItem = QSpacerItem(20, 5, QSizePolicy.Minimum, QSizePolicy.Expanding)
+ self.commandesLayout.addItem(spacerItem)
def donneFocus(self):
for fenetre in self.listeFocus:
def mouseDoubleClickEvent(self, event):
#print "dans mouseDoubleClickEvent"
+ strAide=self.parent.node.item.object.getFr()
+ if hasattr(self.parent.node.item.object.definition, 'defaut') :
+ strAide+='\ndefaut : \n'+str(self.parent.node.item.object.definition.defaut)
strRapport=six.text_type(self.parent.node.item.object.report())
- self.parent.editor._viewText(strRapport, "JDC_RAPPORT")
+ self.parent.editor._viewText(strAide+"\n"+strRapport, "JDC_RAPPORT")
def mousePressEvent(self, event):
#print "dans mousePressEvent"
if self.parent.node.item.object.isValid() :
myToolTip=tr("objet valide")
if self.parent.editor.maConfiguration.differencieSiDefaut :
- if self.parent.node.item.object.valeur != self.parent.node.item.object.definition.defaut :
+ if hasattr(self.parent.node.item.object.definition, 'defaut') :
+ if self.parent.node.item.object.valeur != self.parent.node.item.object.definition.defaut :
myToolTip+='\ndefaut : \n'+str(self.parent.node.item.object.definition.defaut)
QToolTip.showText(event.globalPos(),myToolTip )
if couleur != None :
mapalette=self.palette()
mapalette.setColor( QPalette.WindowText, couleur )
+ mapalette.setColor( QPalette.Base, Qt.green )
self.setPalette( mapalette );
self.setText(tr(texte))
+ print ('jjjjjjjjjjjj')
try :
monToolTip=monOptionnel.parentMC.dictToolTipMc[texte]
self.setToolTip(monToolTip)
QWidget.__init__(self)
self.setupUi(self)
if couleur != None :
+ print ( 'je change pour ', texte)
+ self.monPb.setText(texte)
+ self.monPb.setStyleSheet('QPushButton {background-color: #A3C1DA; color: red;}')
mapalette=self.monPb.palette()
mapalette.setColor( QPalette.ButtonText, Qt.red )
self.monPb.setPalette( mapalette )
+ self.monPb.update()
+ self.update()
try :
monToolTip=monOptionnel.parentMC.dictToolTipMc[texte]
self.monPb.setToolTip(monToolTip)
except :
pass
- self.monPb.setText(texte)
+ #self.monPb.setText(texte)
self.monPb.clicked.connect(self.ajoutMC)
self.texte=texte
self.GroupBox.setText(tr(labeltext))
self.GroupBox.setTextInteractionFlags(Qt.TextSelectableByMouse)
self.parentQt.commandesLayout.insertWidget(insertIn,self)
- #else : self.parentQt.commandesLayout.insertWidget(0,self)
self.doitAfficherOptionnel=False
def enterEvent(self,event):
class MonWidgetFactTableau(Ui_WidgetFact,MonWidgetFactCommun):
def __init__(self,node,editor,parentQt,definition, obj, niveau,commande,insertIn=1):
MonWidgetFactCommun.__init__(self,node,editor,parentQt, definition,obj,niveau,commande,insertIn)
- print ('je passe dans FactTableau')
+ #print ('je passe dans FactTableau')
MonWidgetFactTableau.__init__(self,node,editor,parentQt, definition,obj,niveau,commande)
t=tuple(liste[i:len(liste)])
i=i+self.nbValeurs
if indexDernierRempli < self.indexDernierLabel:
+ print ('if')
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]))
else :
- self.ajoutLineEdit(t,False)
- indexDernierRempli = indexDernierRempli + 1
+ print ('eslse')
+ # 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)
+
+ if self.nbValeurs == 2 : nouveauLE = TupleCustom2(self.nbValeurs,self.scrollArea,self,self.indexDernierLabel)
+ else : nouveauLE = TupleCustom3(self.nbValeurs,self.scrollArea,self,self.indexDernierLabel)
+
+ print (nomLineEdit)
+ self.verticalLayoutLE.insertWidget(self.indexDernierLabel-1,nouveauLE)
+ setattr(self,nomLineEdit,nouveauLE)
+ print (nouveauLE)
+ nouveauLE.setValeur(t)
+
+ self.listeAffichageWidget.append(nouveauLE.lineEditVal_1)
+ self.listeAffichageWidget.append(nouveauLE.lineEditVal_2)
+ if self.nbValeurs == 3 : self.listeAffichageWidget.append(nouveauLE.lineEditVal_3)
+ indexDernierRempli = indexDernierRempli+1
+
+ self.etablitOrdre()
+
def RBListePush(self):
"""
Cette methode doit retourner un objet dérivé de la classe OBJECT
"""
+
raise NotImplementedError("La méthode __call__ de la classe %s doit être implémentée"
% self.__class__.__name__)
if self.position not in ('local', 'global', 'global_jdc'):
self.cr.fatal(_(u"L'attribut 'position' doit valoir 'local', 'global' "
u"ou 'global_jdc' : %r"), self.position)
+
+ def dumpXSD(self):
+ args = self.entites.copy()
+ mcs = set()
+ for nom, val in list(args.items()):
+ if val.label == 'SIMP':
+ mcs.add(nom)
+ # XXX
+ # if val.max != 1 and val.type == 'TXM':
+ # print "#CMD", parent, nom
+ elif val.label == 'FACT':
+ liste=val.dumpXSD()
+ mcs.update(liste)
+ print (self.nom, mcs)
+ return mcs
+
from __future__ import absolute_import
import types
-from . import N_ENTITE
-from . import N_MCSIMP
+from Noyau import N_ENTITE
+from Noyau import N_MCSIMP
class SIMP(N_ENTITE.ENTITE):
if self.min == '**' : self.min = float('-inf')
if self.val_min == '**' : self.val_min = float('-inf')
self.fenetreIhm=fenetreIhm
+ #self.creeT_SIMP()
def verifCata(self):
"""
de sa valeur (val), de son nom (nom) et de son parent dans l arboresence (parent)
"""
return self.class_instance(nom=nom, definition=self, val=val, parent=parent)
+
+ def creeT_SIMP(self):
+ from Efi2Xsd.readerEfficas import monSIMP
+ from Efi2Xsd.mapDesTypes import dictSIMPEficasXML
+
+ self.objXML=monSIMP()
+ for nomEficasArg in dictSIMPEficasXML :
+ argu=getattr(self,nomEficasArg)
+ nomXMLarg=dictSIMPEficasXML[nomEficasArg]
+ if not isinstance(nomXMLarg, (list, tuple)) :
+ print(nomXMLarg, argu)
+ #if nomEficasArg in listeParamDeTypeTypeAttendu:
+ # typeAttendu = self.typ
+
+ setattr(self.objXML, nomXMLarg, argu)
+
+
+
+# for nomXMLArg in dir(self) :
+# if nomXMLArg in self.dictATraiter :
+# nomEficasArg=self.dictATraiter[nomXMLArg]
+# argu=getattr(self,nomXMLArg)
+# if argu==None : continue
+#
+# if type(nomEficasArg) == types.DictionaryType:
+# for nomXML in list(nomEficasArg.keys()):
+# arguDecoupe=getattr(argu,nomXML)
+# nomEficasDecoupe=nomEficasArg[nomXML]
+# if arguDecoupe == None : continue
+# self.dictArgsEficas[nomEficasDecoupe]=arguDecoupe
+# else :
+# self.dictArgsEficas[nomEficasArg] = argu
+#
+#
+#
+#
+#
from Accas import A_BLOC, A_FACT, A_SIMP
- self.dicoCasToCata = appli.readercata.dicoCasToCata
+ try :
+ self.dicoCasToCata = appli.readercata.dicoCasToCata
+ except :
+ self.dicoCasToCata = {}
+ print ('pas de dicoCasToCata')
self.dicoInverse = appli.readercata.dicoInverse
self.dicoMC = appli.readercata.dicoMC
self.Ordre_Des_Commandes = appli.readercata.Ordre_Des_Commandes
- self.TelemacdicoEn = appli.readercata.TelemacdicoEn
- self.DicoEnumCasFrToEnumCasEn = appli.readercata.DicoEnumCasFrToEnumCasEn
+ try :
+ self.TelemacdicoEn = appli.readercata.TelemacdicoEn
+ except :
+ self.TelemacdicoEn = {}
+ print ('pas de TelemacdicoEn')
+ try :
+ self.DicoEnumCasFrToEnumCasEn = appli.readercata.DicoEnumCasFrToEnumCasEn
+ except :
+ self.DicoEnumCasFrToEnumCasEn = {}
+ print ('pas de DicoEnumCasFrToEnumCasEn')
if appli.langue=='fr' :