]> SALOME platform Git repositories - modules/eficas.git/commitdiff
Salome HOME
*** empty log message ***
authorPascale Noyret <pascale.noyret@edf.fr>
Wed, 12 May 2010 09:51:00 +0000 (09:51 +0000)
committerPascale Noyret <pascale.noyret@edf.fr>
Wed, 12 May 2010 09:51:00 +0000 (09:51 +0000)
InterfaceQT4/monChoixMap.py

index fb1dfcd3a989df81d744fc9b9ff85501afa64477..a18d0e9a281303942308df95fd7d68a7fa3a2cba 100644 (file)
 # 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();