1 # -*- coding: utf-8 -*-
3 from panelbase import *
7 controleur de la classe Maillage, traite les maillages correspondants à la géométrie
8 sélectionnée ou crée un maillage avec le nom saisi
10 def __init__(self, maillage):
11 self.maillage = maillage
13 def traiteMaillage(self):
15 si un maillage est sélectionné dans la listbox traite ce maillage
16 sinon crée un nouveau maillage avec comme nom le nom saisi
19 if self.maillage.lbMaillage.currentItem() == -1:
20 self.maillage.cl.traiteNewMaillage(0, str(self.maillage.lblGeom2.text()), str(self.maillage.lnNouveauMaillage.text()))
21 self.maillage.cl.traiteCL()
22 # met à jour les autres listbox des autres maillages -> ajoute le maillage cree
25 # sélection d'un maillage existant
27 self.maillage.cl.traiteMaillage(0, str(self.maillage.lbMaillage.currentText().latin1()))
28 self.maillage.cl.traiteCL()
30 print "traitemaillage -------------------------"
32 def enableBtnSuivant(self):
34 rend actif le bouton suivant (terminer) si un maillage a été sélectionné ou
35 si un nom de nouveau maillage a été saisi
38 if self.maillage.lblNouveauMaillage.isEnabled():
39 if self.maillage.lblNouveauMaillage.text().latin1() != str(''):
40 self.maillage.btnSuivant.setEnabled(1)
42 self.maillage.btnSuivant.setEnabled(0)
43 # sélection d'un maillage existant
44 elif self.maillage.lbMaillage.currentItem() != -1:
45 self.maillage.btnSuivant.setEnabled(1)
47 self.maillage.btnSuivant.setEnabled(0)
51 ferme l'application quand on clique sur le bouton suivant (terminer)
53 self.maillage.appli.mw.close()
55 def updateMeshList(self):
57 met à jour la liste des maillages dans tous les panneaux maillages
58 quand un nouveau maillage est cree
60 for maillage in self.maillage.appli.mw.publication.listeMaillages:
62 maillage.cl.get_geoms()
63 maillage.cl.get_maillages()
65 maillage.cl.MainShapes(0)
67 listeMaillage = maillage.cl.Possibles(0, str(self.maillage.appli.etude.geometrie[0]))
69 maillage.lbMaillage.insertStrList(listeMaillage)