]> SALOME platform Git repositories - tools/eficas.git/blob - InterfaceQT/monOptionsEditeur.py
Salome HOME
CCAR: merge de la version 1.14 dans la branche principale
[tools/eficas.git] / InterfaceQT / monOptionsEditeur.py
1 # -*- coding: utf-8 -*-
2
3 from OptionsEditeur import desOptions
4 from qt import *
5 import os, re
6
7 class Options(desOptions):
8    def __init__(self,parent = None,name = None,modal = 0,fl = 0,configuration=None):
9        desOptions.__init__(self,parent,name,modal,fl)
10        self.configuration=configuration
11        self.viewMan=parent
12        self.dVersion={}
13        self.dRepMat={}
14        self.dRepCat={}
15        self.initAll()
16   
17
18    def initAll(self):
19        self.CBVersions.clear()
20        for item in self.configuration.catalogues :
21            try :
22               (code,version,cata,format,defaut)=item
23            except :
24               (code,version,cata,format)=item
25            self.dVersion[version]=(item)
26            self.dRepCat[version]=str(cata)
27            self.CBVersions.insertItem(QString(version),0)
28
29            codeSansPoint=re.sub("\.","",version)
30            chaine="rep_mat_"+codeSansPoint
31            if hasattr(self.configuration,chaine):
32               rep_mat=getattr(self.configuration,chaine)
33               self.dRepMat[version]=str(rep_mat)
34            else :
35               self.dRepMat[version]=""
36        self.LERepMat.setText(self.dRepMat[version])
37        self.LERepCata.setText(self.dRepCat[version])
38        if hasattr(self.configuration,"path_doc"):
39           self.LERepDoc.setText(self.configuration.path_doc)
40
41         
42    def VersionChoisie(self):
43        version=str(self.CBVersions.currentText())
44        if self.dRepMat.has_key(version):
45           self.LERepMat.setText(self.dRepMat[version])
46        if self.dRepCat.has_key(version):
47           self.LERepCata.setText(self.dRepCat[version])
48
49    def BokClicked(self):
50        version=str(self.CBVersions.currentText())
51        if self.LERepCata.text() == "" :
52           QMessageBox.critical( self, "Champ non rempli","Le champs Catalogue  doit etre rempli" )
53           return
54
55        self.dRepMat[version]=self.LERepMat.text()
56        if str(self.dRepMat[version] != "") != "" :
57           codeSansPoint=re.sub("\.","",version)
58           chaine="rep_mat_"+codeSansPoint
59           setattr(self.configuration,chaine,self.dRepMat[version])
60
61        self.dRepCat[version]=str(self.LERepCata.text())
62        if version in self.dVersion.keys():
63           item=list(self.dVersion[version])
64           item[2]=self.dRepCat[version]
65           self.dVersion[version]=tuple(item)
66        else :
67           self.dVersion[version]=('ASTER',version,self.dRepCat[version],'python')
68           
69        lItem=[]
70        for version in self.dVersion.keys() :
71           lItem.append(self.dVersion[version])
72        self.configuration.catalogues=lItem
73        self.configuration.save_params()
74
75    def AjoutVersion(self):
76        version=self.LEVersionAjout.text()
77        if str(version) == "" : return
78        self.CBVersions.insertItem(version,0)
79        self.LERepMat.setText("")
80        self.LERepCata.setText("")
81        self.LEVersionAjout.setText("")
82
83    def SupVersion(self):
84        version=str(self.LEVersionSup.text())
85        if version == "" : return
86        i =0
87        while i < self.CBVersions.count() :
88            if  self.CBVersions.text(i) == version :
89                self.CBVersions.removeItem(i)
90                break
91            i=i+1
92        try :
93           del self.dVersion[version]
94           del self.dRepMat[version]
95           del self.dRepCat[version]
96        except :
97           self.LEVersionSup.setText("")
98           return
99        codeSansPoint=re.sub("\.","",version)
100        chaine="rep_mat_"+codeSansPoint
101        if hasattr(self.configuration,chaine):
102           delattr(self.configuration,chaine)
103        self.LEVersionSup.setText("")
104
105        lItem=[]
106        for version in self.dVersion.keys() :
107            lItem.append(self.dVersion[version])
108        self.LERepMat.setText("")
109        self.LERepCata.setText("")
110        self.configuration.catalogues=lItem
111        self.configuration.save_params()
112        self.CBVersions.setCurrentItem(0)
113        self.VersionChoisie()
114
115
116    def BdefautChecked(self):
117        res = QMessageBox.warning(
118                  None,
119                  self.trUtf8("Restauration des parametres par defaut "),
120                  self.trUtf8("Votre fichier editeur sera ecrase."),
121                  self.trUtf8("&Ok"),
122                  self.trUtf8("&Abandonner"))
123        self.Bdefaut.setState(QButton.Off)
124        if res == 1 : return 
125
126        appli=self.configuration.appli
127        rep_ini=self.configuration.rep_ini
128        fic_ini_util=self.configuration.fic_ini_utilisateur
129        old_fic_ini_util=fic_ini_util+"_old"
130        commande="mv "+fic_ini_util+" "+old_fic_ini_util
131        os.system(commande)
132        from Editeur import configuration
133        configNew=configuration.CONFIG(appli,rep_ini)
134        self.configuration=configNew
135        appli.CONFIGURATION=configNew
136        self.configuration.save_params()
137        self.dVersion={}
138        self.dRepMat={}
139        self.dRepCat={}
140        self.initAll()
141
142    def ChangePathDoc(self):
143        self.configuration.path_doc=str(self.LERepDoc.text())
144        self.configuration.save_params()
145