# Modules Python
# Modules Eficas
-from desChoixMap import Ui_DChoixMap
+from desChoixMap import Ui_ChoixMap
from PyQt4 import *
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtCore import *
+labels = {
+"s_oxides_st_1" : "Determination de l'allure de l'interface d'un oxyde donné \npour un niveau a determiner d'irradiation" ,
+"s_oxides_st_2" : "Estimation du champ mecanique dans une couche de zircone" ,
+"s_oxides_mt_1" : "Estimation du champ mecanique dans une couche de zircone \nprésentant des défauts et de l'énergie élastique relaxée",
+"c_scc_st_1" : "Analyse morphologique et mécanique d'une couche d'oxydes",
+"c_scc_st_2" : "Analyse statistique de données locales et expérimentales \nou numériques",
+"s_cc_st_3" : "taux de couverture des joints de grains par des précipités",
+"s_polymers_st_1" : "Estimation numérique 3D de la diffusion effective des gaz dans les polymères chargés",
+
+ }
+
+dico={"oxides" : {"irradiation" : "s_oxides_st_1",
+ "mecanique" : "s_oxides_st_2",
+ "mecanique avec defaut" : "s_oxides_mt_1"},
+ "scc" : {"analyse morphologique" : "c_scc_st_1",
+ "analyse statistique" : "c_scc_st_2",
+ "taux de couverture" : "s_cc_st_3"},
+ "concrete" : {},
+ "polycristals" : {},
+ "polymers" : {"numerique 3D" : "s_polymers_st_1"},
+ "micro" : {},
+ "seal" : {},
+ "mox" : {},
+ "nano" : {},
+ "insulator" : {}}
+
# Import des panels
-class MonChoixMap(Ui_DChoixMap,QtGui.QDialog):
+class MonRadioBouton(QRadioButton) :
+
+ def setModule(self,module,fenetreMere):
+ self.module=module
+ self.fenetreMere=fenetreMere
+
+ def enterEvent(self,e):
+ schema=str(self.text())
+ nomCata=dico[self.module][schema]
+ self.fenetreMere.labelScheme.setText(labels[nomCata])
+
+class MonChoixMap(Ui_ChoixMap,QtGui.QDialog):
"""
Classe définissant le panel associé aux mots-clés qui demandent
à l'utilisateur de choisir une seule valeur parmi une liste de valeurs
discrètes
"""
- def __init__(self, QWparent , name = None,fl = 0):
+ def __init__(self, choixCata,name = None,fl = 0):
QtGui.QDialog.__init__(self)
self.setMinimumSize(50, 50);
self.setModal(True)
self.setupUi(self)
- self.appliEficas=QWparent
-
- self.RepIcon=self.appliEficas.RepIcon
- icon = QIcon(self.RepIcon+"/oslo.png")
- self.Pb1.setIcon(icon)
- icon1 = QIcon(self.RepIcon+"/munich.png")
- self.Pb2.setIcon(icon1)
- icon2 = QIcon(self.RepIcon+"/beijing.png")
- self.Pb3.setIcon(icon2)
+ self.ajouteCeQuilFaut()
+ self.choixCata=choixCata
+
- def closeEvent(self,event):
- self.appliEficas.sous_code=0
-
- def on_PB1_clicked(self):
- self.appliEficas.sous_code=1
- print "hhhhh"
- self.close()
+ def ajouteCeQuilFaut(self) :
+ self.groupModules=QButtonGroup(self.groupBoxModule)
+ self.vLayoutScheme=QVBoxLayout(self.groupBoxScheme)
+ self.groupModules.addButton(self.RBM1)
+ self.groupModules.addButton(self.RBM2)
+ self.groupModules.addButton(self.RBM3)
+ self.groupModules.addButton(self.RBM4)
+ self.groupModules.addButton(self.RBM5)
+ self.groupModules.addButton(self.RBM6)
+ self.groupModules.addButton(self.RBM7)
+ self.groupModules.addButton(self.RBM8)
+ self.groupModules.addButton(self.RBM9)
+ self.groupModules.addButton(self.RBM10)
+ self.groupScheme=QButtonGroup(self.groupBoxScheme)
+ self.connect(self.groupModules,SIGNAL("buttonClicked (QAbstractButton*)"),self.modifieModule)
+ self.connect(self.groupScheme,SIGNAL("buttonClicked (QAbstractButton*)"),self.choisitSchema)
+ icon = QtGui.QIcon()
+ icon.addPixmap(QtGui.QPixmap("../Editeur/icons/map.ppm"),QtGui.QIcon.Normal,QtGui.QIcon.Off)
+ self.PBIconeMap.setIcon(icon)
- def on_Pb2_clicked(self):
- self.appliEficas.sous_code=2
- self.close()
+
+ def modifieModule(self):
+ self.module=str(self.groupModules.checkedButton().text())
+ dicoModules=dico[self.module]
+ self.choixCata.module=self.module
+ for bouton in self.groupScheme.buttons():
+ self.groupScheme.removeButton(bouton)
+ bouton.close()
+ for label in dicoModules.keys():
+ bouton=MonRadioBouton(QString(label),self.groupBoxScheme)
+ bouton.setModule(self.module,self)
+ self.vLayoutScheme.addWidget(bouton)
+ self.groupScheme.addButton(bouton)
- def on_Pb3(self):
- self.appliEficas.sous_code=3
- self.close()
+
+ def choisitSchema(self):
+ schema=str(self.groupScheme.checkedButton().text())
+ self.choixCata.schema=schema
+ nomCata= dico[self.module][schema]
+ self.choixCata.nom=nomCata
+ self.close();