class accasConnecteur :
def __init__(self,code, fichierCata=None, langue=None, fichierComm=None,appWeb=None) :
+ #-------------------------------------------------------------------------------------
#if code==None : print ('il faut remonter une erreur'); exit()
self.code=code
from InterfaceSsIhm.eficasSsIhm import AppliSsIhm
# Si on permet l ouverture simultanee de plusieurs fichiers il faudra
# faire l equivalent du viewmanager
self.litFichierComm(fichierComm)
- # est-ce que id est suffisament unique ?
- # est-ce que cela ne va pa empecher le gc de faire son job ?
self.appWeb=appWeb
def toWebApp(self,fction,*args, **kwargs):
+ #-----------------------------------------
#if fction =='propageValide' :
debug=0
if debug : print ('PNPNPN : self.appWeb.fromConnecteur', fction, *args, **kwargs)
self.appWeb.fromConnecteur(fction, *args, **kwargs)
def litFichierComm(self,fichierComm=None):
+ #-----------------------------------------
from InterfaceWeb.editor import JDCWebEditor
self.monEditeur=JDCWebEditor(self.monEficas,fichierComm,connecteur=self)
def getListeCommandes(self):
+ #---------------------------
return (self.monEditeur.jdc.getListeCmd())
- #return ['A','B']
def getListeMotsClesFilsPossibles(self,nomCommande):
+ #-----------------------------------------
# ici il faut programmer getListeMotsClesFilsPossibles dans N_ENTITE
# Pour l instant on renvoie entites
# doit aussi pouvoir etre appele sur FACT et BLOC
laListe=maCommande.entites
return laListe
- def generDicoPourWeb(self) :
- dico=self.monEditeur.generDicoPourWeb()
- return dico
+ #def generDicoPourWeb(self) :
+ #---------------------------------
+ # dico=self.monEditeur.generDicoPourWeb()
+ # return dico
- def getDicoObjetsPourWeb(self,obj) :
- dico=self.monEditeur.getDicoObjetsPourWeb(obj)
- return dico
+ #def getDicoObjetsPourWeb(self,obj) :
+ #---------------------------------
+ # dico=self.monEditeur.getDicoObjetsPourWeb(obj)
+ # return dico
- def getDicoObjetsCompletsPourTree(self,obj) :
- dico=self.monEditeur.getDicoObjetsCompletsPourTree(obj)
- return dico
+ #def getDicoObjetsCompletsPourTree(self,obj) :
+ # dico=self.monEditeur.getDicoObjetsCompletsPourTree(obj)
+ # return dico
def getDicoForFancy(self,obj,debug=0) :
+ #---------------------------------
dico=self.monEditeur.getDicoForFancy(obj)
if debug :
import pprint
pprint.pprint (dico)
return dico
- def traiteDico(self,dico):
- for k,v in dico.items():
- monNode=self.monEditeur.getNodeById(k)
- try : print ('label', monNode.getLabelText())
- except : print ('monNode', monNode) # non operationnel pour jdc
- try : print ('validite :', monNode.isValid())
- except : pass # non operationnel pour jdc
- if type(v) is OrderedDict : self.traiteDico(v)
- else : print ('valeur :', v)
+ #def traiteDico(self,dico):
+ #---------------------------------
+ # for k,v in dico.items():
+ # monNode=self.monEditeur.getNodeById(k)
+ # try : print ('label', monNode.getLabelText())
+ # except : print ('monNode', monNode) # non operationnel pour jdc
+ # try : print ('validite :', monNode.isValid())
+ # except : pass # non operationnel pour jdc
+ # if type(v) is OrderedDict : self.traiteDico(v)
+ # else : print ('valeur :', v)
def changeValeur(self,id,valeur) :
#---------------------------------
"""
monNode=self.monEditeur.getNodeById(id)
#print (' change Valeur', monNode)
- (idUnique, commentaire, validite)=monNode.fauxNoeudGraphique.traiteValeurSaisie(valeur)
- print ('retour ChangeValeur',idUnique, commentaire, validite )
+ #(idUnique, commentaire, validite)=monNode.fauxNoeudGraphique.traiteValeurSaisie(valeur)
+ #print ('retour ChangeValeur',idUnique, commentaire, validite )
return monNode.fauxNoeudGraphique.traiteValeurSaisie(valeur)
- #self.toWebApp('retourChangeValeur',id, commentaire, validite ))
-
-
+ def updateSDName(self,id,valeur) :
+ #---------------------------------
+ monNode=self.monEditeur.getNodeById(id)
+ return monNode.fauxNoeudGraphique.updateSDName(valeur)
def suppNode(self,id):
#-------------------
if monNode.fauxNoeudGraphique == None :
print ('PNPN pas de noeud Graphique associe a l id')
return
+ print (monNode.fauxNoeudGraphique)
retour=monNode.fauxNoeudGraphique.appendChild(name,pos)
return retour
"""
return self.monEditeur.saveFile(fileName)
- def myTimer(self):
- from time import sleep
- sleep(2)
- self.leMessage()
+ #def myTimer(self):
+ # from time import sleep
+ # sleep(2)
+ # self.leMessage()
- def leMessage(self):
- id=1
- argsPos=()
- dico={}
- dico['contenu']='une chaine pour voir'
- self.toWebApp('ecritMessageRecu',id, **dico )
+ #def leMessage(self):
+ # id=1
+ # argsPos=()
+ # dico={}
+ # dico['contenu']='une chaine pour voir'
+ # self.toWebApp('ecritMessageRecu',id, **dico )
- def envoieMsg(self):
- from threading import Thread
- myThread=Thread(target=self.myTimer)
- myThread.start()
+ #def envoieMsg(self):
+ # from threading import Thread
+ # myThread=Thread(target=self.myTimer)
+ # myThread.start()
if __name__ == "__main__":
import prefs
print ('je detruis' ,etape2)
r=monEficasConnecteur.suppNode(etape2)
print (r)
+ monProc2=d['children'][0]['key']
+ r=monEficasConnecteur.appendChild(monProc2,'Fact2')
(ok,newFile)=monEficasConnecteur.saveFile('/tmp/ajoutProc.comm')
+
+ testAjoutSuppFact2=0
+ if testAjoutSuppFact2 :
+ monEficasConnecteur.litFichierComm('../WebTest/web_tres_simple_avec_2Procs.comm')
+ idRacine=monEficasConnecteur.monEditeur.tree.racine.item.idUnique
+ r=monEficasConnecteur.appendChild(idRacine,'MonProc2','last')
+ d=monEficasConnecteur.getDicoForFancy(monEficasConnecteur.monEditeur.tree.racine)
+ monProc2=d['children'][2]['key']
+ r=monEficasConnecteur.appendChild(monProc2,'Fact2')
+ #print (r)
+ (ok,newFile)=monEficasConnecteur.saveFile('/tmp/ajoutFact2.comm')
- lllll = 1
- testAjoutSuppFact=1
+ testAjoutSuppFact=0
if testAjoutSuppFact :
monEficasConnecteur.litFichierComm('../WebTest/web_tres_simple_avec_2Fact.comm')
idRacine=monEficasConnecteur.monEditeur.tree.racine.item.idUnique
r=monEficasConnecteur.appendChild(monProc2,'Fact1')
d=monEficasConnecteur.getDicoForFancy(monEficasConnecteur.monEditeur.tree.racine)
print (['children'][0])
- exit()
+ testAjoutSimpListe=0
+ if testAjoutSimpListe :
+ monEficasConnecteur.litFichierComm('../WebTest/web_tres_simple_avec_2Procs.comm')
+ idRacine=monEficasConnecteur.monEditeur.tree.racine.item.idUnique
+ r=monEficasConnecteur.appendChild(idRacine,'MonProc2','last')
+ d=monEficasConnecteur.getDicoForFancy(monEficasConnecteur.monEditeur.tree.racine)
+ monProc2=d['children'][2]['key']
+
+ testNommeProc=1
+ if testNommeProc :
+ monEficasConnecteur.litFichierComm('../WebTest/web_tres_simple_avec_2Procs.comm')
+ idRacine=monEficasConnecteur.monEditeur.tree.racine.item.idUnique
+ r=monEficasConnecteur.appendChild(idRacine,'MonOper','last')
+ d=monEficasConnecteur.getDicoForFancy(monEficasConnecteur.monEditeur.tree.racine)
+ monOper=d['children'][2]['key']
+ bOk, message = monEficasConnecteur.updateSDName(monOper,'toto')
+ print ('in testNommeProc, bOk, message', bOk, message)
+ d=monEficasConnecteur.getDicoForFancy(monEficasConnecteur.monEditeur.tree.racine)
+ monParam=d['children'][2]['children'][0]['key']
+ r=monEficasConnecteur.changeValeur(monParam,'65')
+ bOk, message = monEficasConnecteur.updateSDName(monOper,'toto')
+ print ('in testNommeProc, bOk, message', bOk, message)
#print ( '\n Fichier /home/A96028/QT5GitEficasTravail/Web/eficas/WebTest/web_tres_simple_avec_2Procs.comm')
#monEficasConnecteur.litFichierComm('../WebTest/web_tres_simple_avec_2Procs.comm')