From: Pascale Noyret Date: Tue, 18 Nov 2008 10:28:48 +0000 (+0000) Subject: *** empty log message *** X-Git-Tag: V0_a1_SEPQT4~71 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=0b898edbd505eb125252f67a6a60dcf9fa942bef;p=tools%2Feficas.git *** empty log message *** --- diff --git a/InterfaceQT4/compooper.py b/InterfaceQT4/compooper.py index 66bd646f..14d05da7 100644 --- a/InterfaceQT4/compooper.py +++ b/InterfaceQT4/compooper.py @@ -51,7 +51,7 @@ class Node(browser.JDCNode, typeNode.PopUpMenuNode): return child def view3D(self) : - import TroisDPal + from Editeur import TroisDPal troisD=TroisDPal.TroisDPilote(self.item,self.editor.parent.appliEficas) troisD.envoievisu() diff --git a/InterfaceQT4/composimp.py b/InterfaceQT4/composimp.py index 2d7364fd..d1422bf5 100644 --- a/InterfaceQT4/composimp.py +++ b/InterfaceQT4/composimp.py @@ -10,8 +10,6 @@ from Editeur import Objecttreeitem import browser from Noyau.N_CR import justify_text -import prefs - class Node(browser.JDCNode): def getPanel(self): """ diff --git a/InterfaceQT4/editor.py b/InterfaceQT4/editor.py index 7b8c937b..261abc4a 100644 --- a/InterfaceQT4/editor.py +++ b/InterfaceQT4/editor.py @@ -18,6 +18,7 @@ # # ====================================================================== +print "INTERFACEQT4" import types,sys,os import traceback from PyQt4 import * @@ -30,12 +31,10 @@ import convert,generator from Editeur import session from Editeur import comploader from Editeur import Objecttreeitem -#import panelsQT import browser import readercata import qtCommun -import prefs VERSION_EFICAS = "EFICAS v1.14" @@ -49,8 +48,7 @@ class JDCEditor(QSplitter): def __init__ (self,fichier = None, jdc = None, QWParent=None, units = None, include=0 ,appli=None, vm=None): #----------------------------------------------------------------------------------------------------------# - #print "debut JDCEditor __init__" - print "fichier", fichier,"jdc",jdc,"units",units,"include",include + #print "fichier", fichier,"jdc",jdc,"units",units,"include",include QSplitter.__init__(self, QWParent) self.appliEficas = appli self.appli = appli #---- attendu par IHM @@ -66,7 +64,7 @@ class JDCEditor(QSplitter): else : self.salome=0 - self.code = prefs.code + self.code = self.appliEficas.CONFIGURATION.code self.version_code = VERSION_CODE self.titre=VERSION_EFICAS + ' pour '+ self.code @@ -77,7 +75,7 @@ class JDCEditor(QSplitter): self.jdc_openturn_std="" self.ihm="QT" - from Editeur import configuration + import configuration self.CONFIGURATION = self.appliEficas.CONFIGURATION self.CONFIGStyle = self.appliEficas.CONFIGStyle @@ -167,7 +165,6 @@ class JDCEditor(QSplitter): """ import Extensions.jdc_include JdC_aux=Extensions.jdc_include.JdC_include - print JdC_aux CONTEXT.unset_current_step() jaux=self.readercata.cata[0].JdC( procedure="", @@ -214,9 +211,12 @@ class JDCEditor(QSplitter): text=p.convert('exec',appli) if not p.cr.estvide(): self.affiche_infos("Erreur à la conversion") + else : + self.affiche_infos("Type de fichier non reconnu") + QMessageBox.critical( self, "Type de fichier non reconnu","EFICAS ne sait pas ouvrir ce type de fichier") + return None CONTEXT.unset_current_step() - ## os.chdir(self.initialdir) jdc=self.readercata.cata[0].JdC(procedure=text, appli=self, cata=self.readercata.cata, @@ -299,6 +299,16 @@ class JDCEditor(QSplitter): #------------------------------# def affiche_infos(self,message): #------------------------------# + if self.salome : + if not hasattr(self.appliEficas,'MessageLabel') : + self.appliEficas.leLayout=QDockWindow(self.appliEficas) + self.appliEficas.MessageLabel = QLabel(self.appliEficas.leLayout,"MessageLabel") + self.appliEficas.MessageLabel.setAlignment(Qt.AlignBottom) + self.appliEficas.leLayout.setWidget(self.appliEficas.MessageLabel) + self.appliEficas.moveDockWindow(self.appliEficas.leLayout,Qt.DockBottom) + self.appliEficas.MessageLabel.setText(message) + self.appliEficas.MessageLabel.show() + self.appliEficas.leLayout.show() if self.sb: self.sb.showMessage(message)#,2000) @@ -368,8 +378,7 @@ class JDCEditor(QSplitter): Ne permet que la copie d'objets de type Commande ou MCF """ self.chercheNoeudSelectionne() - print "noeud a copier", self.node_selected.item.GetLabelText()[0] - print "noued apres " ,self.QWParent.noeud_a_editer.item.GetLabelText()[0] + index_noeud_a_couper=self.QWParent.noeud_a_editer.treeParent.children.index(self.QWParent.noeud_a_editer) if self.QWParent.noeud_a_editer == None : QMessageBox.information( self, "Copie impossible", @@ -398,10 +407,13 @@ class JDCEditor(QSplitter): # si possible on renomme l objet comme le noeud couper if self.QWParent.edit == "couper": - #nom = self.QWParent.noeud_a_editer.item.object.sd.nom - print self.QWParent.noeud_a_editer.item.object.sd.nom + print self.QWParent.noeud_a_editer.child + index_ajoute=child.treeParent.children.index(child) + if index_ajoute <= index_noeud_a_couper : + index_noeud_a_couper=index_noeud_a_couper + 1 item=self.QWParent.noeud_a_editer.item - self.QWParent.noeud_a_editer.delete() + noeud_a_supprimer=self.QWParent.noeud_a_editer.treeParent.children[index_noeud_a_couper] + noeud_a_supprimer.delete() child.item.update(item) #test,mess = child.item.nomme_sd(nom) child.select() @@ -414,9 +426,9 @@ class JDCEditor(QSplitter): #---------------------# return self.fichier - #---------------------------# + #----------------------------------# def writeFile(self, fn, txt = None): - #------------------------------# + #----------------------------------# """ Public slot to write the text to a file. @@ -434,7 +446,6 @@ class JDCEditor(QSplitter): txt += eol else: txt += eol - try: f = open(fn, 'wb') f.write(txt) @@ -445,38 +456,41 @@ class JDCEditor(QSplitter): self.trUtf8('The file %1 could not be saved.
Reason: %2') .arg(unicode(fn)).arg(str(why))) return 0 + #------------------------------------ + def writeOpenturnsWrapper(self,fn) : + #------------------------------------ + print "writeOpenturnsWrapper" + base=fn[:fn.rfind(".")] + self.jdc_openturns_wrapperfile=self.generator.getOpenturnsXML() + fileXML=base + '.xml' + self.writeFile(fileXML,self.jdc_openturns_wrapperfile) + + + #------------------------------------ + def writeOpenturnsStudy(self,fn) : + #------------------------------------ + base=fn[:fn.rfind(".")] + fileSTD=base + '_std.py' + self.writeFile(fileSTD,self.jdc_openturns_study) -# #------------------------------------ -# def writeFilesOpenturns(self,fn) : -# #------------------------------------ -# base=fn[:fn.rfind(".")] -# fileXML=base + '.xml' -# fileSTD=base + '_std.py' -# self.writeFile(fileXML,self.jdc_openturn_xml) -# self.writeFile(fileSTD,self.jdc_openturn_std) -# -# #-----------------------------# def get_text_JDC(self,format): #-----------------------------# if generator.plugins.has_key(format): # Le generateur existe on l'utilise - g=generator.plugins[format]() - jdc_formate=g.gener(self.jdc,format='beautifie') - if format == "openturns" : - self.jdc_openturn_xml=g.getOpenturnsXML() - self.jdc_openturn_std=g.getOpenturnsSTD() - if not g.cr.estvide(): + self.generator=generator.plugins[format]() + jdc_formate=self.generator.gener(self.jdc,format='beautifie') + if not self.generator.cr.estvide(): self.affiche_infos("Erreur à la generation") QMessageBox.critical( self, "Erreur a la generation","EFICAS ne sait pas convertir ce JDC") - return + return "" else: return jdc_formate else: # Il n'existe pas c'est une erreur self.affiche_infos("Format %s non reconnu" % format) - QMessageBox.critical( self, "Format %s non reconnu" % format,"EFICAS ne sait pas convertir le JDC en format %s "% format) - return + QMessageBox.critical( self, "Format "+format+" non reconnu","EFICAS ne sait pas convertir le JDC selon le format "+format) + return "" #-----------------------------------------# @@ -496,8 +510,7 @@ class JDCEditor(QSplitter): newName = None if self.fichier is None or saveas: if path is None: - #PN --> modifier selon les prefs - path="/tmp" + path=self.CONFIGURATION.initialdir selectedFilter = QString('') fn = QFileDialog.getSaveFileName( self, self.trUtf8("sauvegarde"), path, @@ -533,8 +546,9 @@ class JDCEditor(QSplitter): self.appliEficas.addToRecentList(newName) self.tree.racine.item.getObject().nom=os.path.basename(newName) self.tree.racine.update_node_label() -# if self.code == "OPENTURNS" : -# self.writeFilesOpenturns(fn) + + if self.code == "OPENTURNS_WRAPPER" : + self.writeOpenturnsWrapper(fn) # if self.salome : # self.QWParent.appli.addJdcInSalome( self.fichier) # if self.code == 'ASTER': @@ -579,8 +593,8 @@ class JDCEditor(QSplitter): texte = texte+'Donnez le nom du fichier dont vous \n voulez faire une poursuite' QMessageBox.information( self, titre,texte) - #PN --> les prefs - fn = QFileDialog.getOpenFileName( self, titre) + path=self.CONFIGURATION.savedir + fn = QFileDialog.getOpenFileName( self, titre,path) if fn.isNull(): # ce retour est impose par le get_file d'I_JDC @@ -596,8 +610,10 @@ class JDCEditor(QSplitter): # Une erreur a été rencontrée jdcText = '' return ulfile, jdcText + if __name__=='__main__': + import prefs # dans main if hasattr(prefs,'encoding'): # Hack pour changer le codage par defaut des strings import sys diff --git a/InterfaceQT4/eficas_go.py b/InterfaceQT4/eficas_go.py index daaf8bf7..e79bea8b 100644 --- a/InterfaceQT4/eficas_go.py +++ b/InterfaceQT4/eficas_go.py @@ -24,38 +24,25 @@ """ # Modules Python import sys -from qt import * +from PyQt4.QtGui import * -# Modules Eficas -import prefs -if hasattr(prefs,'encoding'): - # Hack pour changer le codage par defaut des strings - import sys - reload(sys) - sys.setdefaultencoding(prefs.encoding) - del sys.setdefaultencoding - # Fin hack - -from Editeur import import_code -from Editeur import session +from Editeur import import_code +from Editeur import session +from qtEficas import Appli def lance_eficas(code=None,fichier=None): """ Lance l'appli EFICAS """ # Analyse des arguments de la ligne de commande - if code !=None : prefs.code=code - import qtEficas options=session.parse(sys.argv) code=options.code app = QApplication(sys.argv) - mw = qtEficas.Appli(code=code) - app.setMainWidget(mw) - app.connect(app, SIGNAL("lastWindowClosed()"), app, SLOT("quit()")) - mw.show() - mw.ouvreFichiers() - res = app.exec_loop() - sys.exit(res) + Eficas=Appli(code=code) + Eficas.show() + res=app.exec_() + sys.exit(res) + diff --git a/InterfaceQT4/monIncludePanel.py b/InterfaceQT4/monIncludePanel.py index 15a0408c..921d7014 100644 --- a/InterfaceQT4/monIncludePanel.py +++ b/InterfaceQT4/monIncludePanel.py @@ -83,7 +83,6 @@ class MonIncludePanel(DInc,QTPanelTBW1,QTPanelTBW2,QTPanelTBW3): self.TWChoix.setCurrentIndex(2) def BBrowsePressed(self): - print self.node.makeEdit self.node.makeEdit() def BOkIncPressed (self): @@ -103,6 +102,8 @@ class MonIncludePanel(DInc,QTPanelTBW1,QTPanelTBW2,QTPanelTBW3): if not text: return + self.editor.init_modif() + try : self.node.item.object.change_fichier_init(nomFichier,text) commentaire = "Fichier modifie : " + self.node.item.get_nom() @@ -136,7 +137,7 @@ class MonIncludePanel(DInc,QTPanelTBW1,QTPanelTBW2,QTPanelTBW3): def BChangeFilePressed(self): - userDir=os.path.expanduser("~/Eficas_install/") + userDir=self.node.appliEficas.CONFIGURATION.initialdir fn = QFileDialog.getOpenFileName(self.node.appliEficas, self.node.appliEficas.trUtf8('Fichier Include'), self.node.appliEficas.trUtf8('All Files (*);;''JDC Files (*.comm);;')) diff --git a/InterfaceQT4/monOptionsEditeur.py b/InterfaceQT4/monOptionsEditeur.py index e307158b..d5542a1a 100644 --- a/InterfaceQT4/monOptionsEditeur.py +++ b/InterfaceQT4/monOptionsEditeur.py @@ -149,13 +149,13 @@ class Options(desOptions): if res == 1 : return appli=self.configuration.appli - rep_ini=self.configuration.rep_ini + repIni=self.configuration.REPINI fic_ini_util=self.configuration.fic_ini_utilisateur old_fic_ini_util=fic_ini_util+"_old" commande="mv "+fic_ini_util+" "+old_fic_ini_util os.system(commande) - from Editeur import configuration - configNew=configuration.CONFIG(appli,rep_ini) + import configuration + configNew=configuration.CONFIG(appli,repIni) self.configuration=configNew appli.CONFIGURATION=configNew self.configuration.save_params() diff --git a/InterfaceQT4/monParamPanel.py b/InterfaceQT4/monParamPanel.py index a77f9439..ccc25e7a 100644 --- a/InterfaceQT4/monParamPanel.py +++ b/InterfaceQT4/monParamPanel.py @@ -22,7 +22,6 @@ import string,types,os,re # Modules Eficas -import prefs from PyQt4 import * from PyQt4.QtGui import * diff --git a/InterfaceQT4/monPlusieursASSDPanel.py b/InterfaceQT4/monPlusieursASSDPanel.py index 48942483..3af461a8 100644 --- a/InterfaceQT4/monPlusieursASSDPanel.py +++ b/InterfaceQT4/monPlusieursASSDPanel.py @@ -21,17 +21,15 @@ # Modules Python import string,types,os -# Modules Eficas -import prefs - from PyQt4 import * from PyQt4.QtGui import * from PyQt4.QtCore import * + +# Modules Eficas from monPlusieursIntoPanel import MonPlusieursIntoPanel from monPlusieursIntoPanel import DPlusInto from qtCommun import QTPanel from politiquesValidation import PolitiquePlusieurs -# Import des panels class MonPlusieursASSDPanel(MonPlusieursIntoPanel): """ diff --git a/InterfaceQT4/monPlusieursBasePanel.py b/InterfaceQT4/monPlusieursBasePanel.py index 4a67d947..9fa93e46 100644 --- a/InterfaceQT4/monPlusieursBasePanel.py +++ b/InterfaceQT4/monPlusieursBasePanel.py @@ -156,10 +156,10 @@ class MonPlusieursBasePanel(DPlusBase,QTPanel,SaisieValeur): self.editor.affiche_infos("Valeurs Ajoutées") def BImportPressed(self): - init=QString( self.editor.CONFIGURATION.rep_user) + init=QString( self.editor.CONFIGURATION.initialdir) fn = QFileDialog.getOpenFileName(self.node.appliEficas, self.node.appliEficas.trUtf8('Fichier de données'), - QString(), + init, self.trUtf8('All Files (*)',)) if fn == None : return if fn == "" : return diff --git a/InterfaceQT4/monRacinePanel.py b/InterfaceQT4/monRacinePanel.py index 5b9fa79b..2e542999 100644 --- a/InterfaceQT4/monRacinePanel.py +++ b/InterfaceQT4/monRacinePanel.py @@ -107,8 +107,6 @@ class MonRacinePanel(DRac,QTPanelTBW2): name=str(self.LBNouvCommande.currentItem().text()) if name==QString(" "): return if name.find("GROUPE :")==0 : return - print self.editor - print self.editor.__class__ self.editor.init_modif() print self.node.__class__ new_node = self.node.append_child(name,'first') diff --git a/InterfaceQT4/monUniqueBasePanel.py b/InterfaceQT4/monUniqueBasePanel.py index 24792e45..3261a771 100644 --- a/InterfaceQT4/monUniqueBasePanel.py +++ b/InterfaceQT4/monUniqueBasePanel.py @@ -80,7 +80,8 @@ class MonUniqueBasePanel(DUnBase,QTPanel,SaisieValeur): def detruitBouton(self): mc = self.node.item.get_definition() type = mc.type[0] - if not('grma' in repr(type)) or not(self.editor.salome) : + #if not('grma' in repr(type)) or not(self.editor.salome) : + if not(('grma' in repr(type)) or ('grno' in repr(type))) or not(self.editor.salome) : self.BSalome.close() self.BView2D.close() diff --git a/InterfaceQT4/monUniqueSDCOIntoPanel.py b/InterfaceQT4/monUniqueSDCOIntoPanel.py index c968b0f7..8c5e45dc 100644 --- a/InterfaceQT4/monUniqueSDCOIntoPanel.py +++ b/InterfaceQT4/monUniqueSDCOIntoPanel.py @@ -22,8 +22,6 @@ import string,types,os # Modules Eficas -import prefs - from PyQt4 import * from PyQt4.QtGui import * diff --git a/InterfaceQT4/prefsQT.py b/InterfaceQT4/prefsQT.py deleted file mode 100644 index ef1aa899..00000000 --- a/InterfaceQT4/prefsQT.py +++ /dev/null @@ -1,25 +0,0 @@ -# -*- coding: utf-8 -*- - -# ====================================================================== -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# -# ====================================================================== - -lang='fr' - diff --git a/InterfaceQT4/qtCommun.py b/InterfaceQT4/qtCommun.py index 5a9ed167..ad7b6df2 100644 --- a/InterfaceQT4/qtCommun.py +++ b/InterfaceQT4/qtCommun.py @@ -25,7 +25,6 @@ import traceback from PyQt4 import * from PyQt4.QtGui import * from PyQt4.QtCore import * -import prefsQT # Import des panels @@ -281,6 +280,7 @@ class ViewText(Ui_dView,QDialog): """ def __init__(self,parent): QDialog.__init__(self,parent) + self.parent=parent self.setupUi(self) self.resize( QSize(600,507).expandedTo(self.minimumSizeHint()) ) @@ -292,25 +292,10 @@ class ViewText(Ui_dView,QDialog): def saveFile(self): #recuperation du nom du fichier + userDir=os.path.expanduser("~/.Eficas_install/") fn = QFileDialog.getSaveFileName(None, self.trUtf8("Save File"), - self.trUtf8("/tmp")) - #if not fn.isNull(): - # print "hhhhhhhhhhhhhhjjjjjjjjjjjjjjjjjjjjkkkkkkkkkkkkk" - # if QFileInfo(fn).exists(): - # abort = QMessageBox.warning(self, - # self.trUtf8("Save File"), - # self.trUtf8("The file %1 already exists.") - # .arg(fn), - # self.trUtf8("&Overwrite"), - # self.trUtf8("&Abort")) - # if abort: - # return - # fn = unicode(QDir.convertSeparators(fn)) - #else: - # return - - #ecriture du fichier + self.trUtf8(userDir)) if fn.isNull() : return try: f = open(fn, 'wb') diff --git a/InterfaceQT4/qtEficas.py b/InterfaceQT4/qtEficas.py index 5f633e6e..4fb867e2 100644 --- a/InterfaceQT4/qtEficas.py +++ b/InterfaceQT4/qtEficas.py @@ -1,11 +1,6 @@ # -*- coding: iso-8859-1 -*- import os, sys -REPINI=os.path.dirname(os.path.abspath(__file__)) -INSTALLDIR=os.path.join(REPINI,'..') -sys.path.append(INSTALLDIR) -sys.path.append(INSTALLDIR+"/UiQT4") -sys.path.append(INSTALLDIR+"/InterfaceQT4") from PyQt4.QtGui import * from PyQt4.QtCore import * @@ -13,9 +8,9 @@ from PyQt4.QtAssistant import * from myMain import Ui_Eficas from viewManager import MyTabview -from Editeur import configuration from Editeur import session +dirCode={"ASTER":"Aster","OPENTURNS_WRAPPER":"Openturns_Wrapper"} class Appli(Ui_Eficas,QMainWindow): @@ -31,9 +26,15 @@ class Appli(Ui_Eficas,QMainWindow): self.salome=salome self.top = self #(pour CONFIGURATION) - self.initPrefs() + import prefs + self.REPINI=prefs.REPINI + import configuration self.CONFIGURATION = configuration.make_config(self,prefs.REPINI) self.CONFIGStyle = configuration.make_config_style(self,prefs.REPINI) + if hasattr(prefs,'encoding'): + import sys + reload(sys) + sys.setdefaultencoding(prefs.encoding) QMainWindow.__init__(self) Ui_Eficas.__init__(self) @@ -44,11 +45,9 @@ class Appli(Ui_Eficas,QMainWindow): #self.monAssistant=QAssistantClient(QString(""), self.viewmanager) - #if self.salome : # from Editeur import session # self.ouvreFichiers() - from Editeur import session self.ouvreFichiers() self.ficPatrons={} @@ -130,8 +129,7 @@ class Appli(Ui_Eficas,QMainWindow): idx=idx+1 def initRecents(self): - #try : - if 1 : + try : rep=self.CONFIGURATION.rep_user monFichier=rep+"/listefichiers_"+self.code index=0 @@ -142,8 +140,7 @@ class Appli(Ui_Eficas,QMainWindow): l=(ligne.split("\n"))[0] self.recent.append(l) index=index+1 - #except : pass - else : + except : pass try : f.close() @@ -227,7 +224,7 @@ class Appli(Ui_Eficas,QMainWindow): def handleOpenPatrons(self): idx=self.sender() - fichier=REPINI+"/../Editeur/Patrons/"+self.code+"/"+self.ficPatrons[idx] + fichier=self.REPINI+"/../Editeur/Patrons/"+self.code+"/"+self.ficPatrons[idx] self.viewmanager.handleOpen(fichier=fichier, patron = 1) def handleOpenRecent(self): @@ -289,23 +286,6 @@ class Appli(Ui_Eficas,QMainWindow): def NewInclude(self): self.viewmanager.newIncludeEditor() - def initPrefs(self): - if code == "ASTER" : - from Aster import prefs - import sys - sys.path.append(INSTALLDIR+"/Aster") - else : - import prefs - #try : - if 1 : - apply(Appli.__dict__[code],(self,)) - #except : - else: - pass - if hasattr(prefs,'encoding'): - import sys - reload(sys) - sys.setdefaultencoding(prefs.encoding) if __name__=='__main__': diff --git a/InterfaceQT4/readercata.py b/InterfaceQT4/readercata.py index 052d2f1d..4a4693c3 100644 --- a/InterfaceQT4/readercata.py +++ b/InterfaceQT4/readercata.py @@ -31,13 +31,12 @@ import cPickle import re # Modules Eficas -import prefs from Noyau.N_CR import CR from Editeur.utils import init_rep_cata_dev -from Editeur import analyse_catalogue -from Editeur import autre_analyse_cata -from Editeur import uiinfo +import analyse_catalogue +import autre_analyse_cata +import uiinfo from monChoixCata import MonChoixCata from PyQt4 import * @@ -136,28 +135,7 @@ class READERCATA: # traitement des clefs documentaires # self.traite_clefs_documentaires() - - # chargement et analyse des catalogues développeur (le cas échéant) - # - if self.appliEficas.CONFIGURATION.isdeveloppeur == 'OUI' : - init_rep_cata_dev(self.fic_cata,self.appliEficas.CONFIGURATION.path_cata_dev) - fic_cata_dev = os.path.join(self.appliEficas.CONFIGURATION.path_cata_dev,'cata_developpeur.py') - if os.path.isfile(fic_cata_dev): - # il y a bien un catalogue développeur : il faut récupérer le module_object associé ... - test = self.compile_cata(fic_cata_dev,fic_cata_dev+'c') - if not test : - showinfo("Compilation catalogue développeur", - "Erreur dans la compilation du catalogue développeur") - self.cata = (self.cata,) - else: - self.cata_dev =self.import_cata(fic_cata_dev) - #self.Retrouve_Ordre_Cata_Developpeur() - self.Retrouve_Ordre_Cata_Developpeur_autre() - self.cata = (self.cata,self.cata_dev) - else: - self.cata = (self.cata,) - else: - self.cata = (self.cata,) + self.cata=(self.cata,) titre="Eficas V1.14 avec le catalogue " + os.path.basename(self.fic_cata) if self.appliEficas.top: self.appliEficas.setWindowTitle(titre) @@ -181,7 +159,7 @@ class READERCATA: def import_cata(self,cata): """ - Réalise l'import du catalogue dont le chemin d'acca¨s est donné par cata + Réalise l'import du catalogue dont le chemin d'acces est donné par cata """ nom_cata = os.path.splitext(os.path.basename(cata))[0] rep_cata = os.path.dirname(cata) @@ -223,34 +201,6 @@ class READERCATA: self.Get_Ordre_Cata(mode='cata') self.appliEficas.affiche_infos("Catalogue standard chargé") - def Retrouve_Ordre_Cata_Developpeur(self): - """ - Retrouve l'ordre des mots-clés dans le catalogue, cad : - - si ce dernier a été modifié, relance l'analyse du catalogue pour déterminer - l'ordre des mots-clés dans le catalogue - - s'il n'a pas été modifié, relie le fichier pickle - """ - if self.code != 'ASTER' : return - fic_cata = os.path.join(self.appliEficas.CONFIGURATION.path_cata_dev,'cata_developpeur.py') - message="Chargement catalogue développeur présent dans :\n %s..." % self.appliEficas.CONFIGURATION.path_cata_dev - cata_dev_ordonne = analyse_cata.analyse_catalogue(self,self.fic_cata) - self.cata_dev_ordonne_cr = cata_dev_ordonne.cr - cata_dev_ordonne_dico = cata_dev_ordonne.entites - self.cata_ordonne_dico.update(cata_dev_ordonne_dico) - self.appliEficas.affiche_infos(" catalogue(s) développeur(s) chargé(s)" ) - - def Retrouve_Ordre_Cata_Developpeur_autre(self): - """ - Retrouve l'ordre des mots-clés dans le catalogue, cad : - - si ce dernier a été modifié, relance l'analyse du catalogue pour déterminer - l'ordre des mots-clés dans le catalogue - - s'il n'a pas été modifié, relie le fichier pickle - """ - if self.code != 'ASTER' : return - message="Chargement catalogue développeur présent dans :\n %s..." % self.appliEficas.CONFIGURATION.path_cata_dev - cata_dev_ordonne_dico,self.appliEficas.liste_simp_reel=autre_analyse_cata.analyse_catalogue(self.cata) - self.cata_ordonne_dico.update(cata_dev_ordonne_dico) - self.appliEficas.affiche_infos(" catalogue(s) développeur(s) chargé(s)" ) def Get_Ordre_Cata(self,mode='pickle'): """ diff --git a/InterfaceQT4/viewManager.py b/InterfaceQT4/viewManager.py index 52650ead..54a92acb 100644 --- a/InterfaceQT4/viewManager.py +++ b/InterfaceQT4/viewManager.py @@ -44,16 +44,16 @@ class MyTabview: if fichier is None: fichier = QFileDialog.getOpenFileName(self.appliEficas, self.appliEficas.trUtf8('Ouvrir Fichier'), - self.getOpenStartDir(), + self.appliEficas.CONFIGURATION.initialdir, self.appliEficas.trUtf8('JDC Files (*.comm);;''All Files (*)')) if fichier.isNull(): return - from utilitaires import normabspath - fichier = normabspath(unicode(fichier)) + fichier = os.path.abspath(unicode(fichier)) + self.appliEficas.addToRecentList(fichier) maPage=self.getEditor( fichier,units=units) def handleClose(self,doitSauverRecent = 1): - print "passage dans handleClose" - print self.dict_editors + #print "passage dans handleClose" + #print self.dict_editors if doitSauverRecent : self.appliEficas.sauveRecents() index=self.myQtab.currentIndex() if index < 0 : return @@ -165,8 +165,7 @@ class MyTabview: indexEditor=0 for indexEditor in self.dict_editors.keys(): editor=self.dict_editors[indexEditor] - from utilitaires import samepath - if samepath(fichier, editor.getFileName()): + if self.samepath(fichier, editor.getFileName()): abort = QMessageBox.warning(self.appliEficas, self.appliEficas.trUtf8("Fichier"), self.appliEficas.trUtf8("Le fichier %1 est deja ouvert.").arg(fichier), @@ -217,6 +216,14 @@ class MyTabview: except : return "" + def samepath(self,f1, f2): + """ + compare two paths. + """ + if f1 is None or f2 is None: return 0 + if os.path.normcase(os.path.normpath(f1)) == os.path.normcase(os.path.normpath(f2)) : return 1 + return 0 + def checkDirty(self, editor): """