import qt
import notifqt
# -----------------------------------------------------------------------------
-import sys, os
+import sys, os, re
a)la création de groupes de mailles dans le composant SMESH de SALOME
b)la visualisation d'éléments géométrique dans le coposant GEOM de SALOME par sélection dans EFICAS
"""
- def __init__(self, parent, code = None, fichier = None ):
+ def __init__( self, parent, code = None, fichier = None, module = studyManager.SEficas ):
"""
Constructeur.
#--------------- spécialisation EFICAS dans SALOME -------------------
self.parent = parent
self.salome = True #active les parties de code spécifique dans Salome( pour le logiciel Eficas )
+ self.module = module #indique sous quel module dans l'arbre d'étude ajouter le JDC.
# donnée pour la création de groupe de maille
"""
Ajoute le Jeu De Commande ASTER ou HOMARD dans l'arbre d'étude Salome dans la rubrique EFICAS
"""
- ok, msgError = False, ''
- try:
+ ok, msgError = False, msgErrorAddJdcInSalome
+ try:
atLeastOneStudy = self.__studySync()
if not atLeastOneStudy:
return ok, msgError
- if self.bureau.code == 'ASTER':
- ok = studyManager.palStudy.addEficasItem( jdcPath, studyManager.FICHIER_EFICAS_ASTER )
- elif self.bureau.code == 'HOMARD':
- ok = studyManager.palStudy.addEficasItem( jdcPath, studyManager.FICHIER_EFICAS_HOMARD )
- #ok = studyManager.palStudy.addEficasItem( jdcPath, studyManager.FICHIER_EFICAS_HOMARD_CONF ) CS_pbruno ?????
- if not ok:
- msgError = msgErrorAddJdcInSalome
+
+ fileType = { 'ASTER': studyManager.FICHIER_EFICAS_ASTER,
+ 'HOMARD': studyManager.FICHIER_EFICAS_HOMARD }
+ moduleEntry = studyManager.palStudy.addComponent(self.module)
+ itemName = re.split("/",jdcPath)[-1]
+ #commEntry = self.createItemInStudy( EficasEntry, itemName ) #CS_pbruno attention même nom possible, controle à faire
+ commEntry = studyManager.palStudy.addItem( moduleEntry,
+ itemName = itemName,
+ itemType = fileType[ self.bureau.code ],
+ itemValue = jdcPath,
+ itemComment = str( jdcPath ),
+ itemIcon = "ICON_COMM_FILE",
+ bDoublonCheck = True )
+ studyManager.palStudy.refresh()
+ print 'addJdcInSalome commEntry->', commEntry
+ if commEntry:
+ ok, msgError = True, ''
+
except:
logger.debug(50*'=')
return ok, msgError
#-------------------------------------------------------------------------------------------------------
# Point d'entré lancement EFICAS
#
-def runEficas( code="ASTER", fichier=None ):
+def runEficas( code="ASTER", fichier=None, module = studyManager.SEficas ):
global appli
- if not appli: #une seul instance possible!
- appli = MyEficas( SalomePyQt.SalomePyQt().getDesktop(), code = code, fichier = fichier )
+ if not appli: #une seul instance possible!
+ appli = MyEficas( SalomePyQt.SalomePyQt().getDesktop(), code = code, fichier = fichier, module = module )