DEFINE_CAS_FILE = 955
EDIT_BOUNDARY_CONDITIONS_FILE_ID = 956
GENERATE_INTERPOLZ_PY_ID = 957
+ GEN_TELEMAC2D_PYTHON_ID = 958
def __init__( self ):
# create top-level menu
sgPyQt.createAction( GUIcontext.SHOW_LOG_ID, "Show log", "Show log",
"Show the log for the selected variable" )
+ sgPyQt.createAction( GUIcontext.GEN_TELEMAC2D_PYTHON_ID, "Generate Python script",
+ "Generate Python script",
+ "Run Telemac2D solver to compute the case" )
sgPyQt.createAction( GUIcontext.RUN_TELEMAC2D_ID, "Compute case", "Compute case",
"Run Telemac2D solver to compute the case" )
sgPyQt.createAction( GUIcontext.EDIT_TELEMAC2D_CASE_ID, "Edit case", "Edit case",
elif selectedType == hydro_study.TELEMAC2D_CASE_TYPE_ID:
popup.addAction(sgPyQt.action(GUIcontext.EDIT_TELEMAC2D_CASE_ID))
popup.addAction(sgPyQt.action(GUIcontext.RUN_TELEMAC2D_ID))
+ popup.addAction(sgPyQt.action(GUIcontext.GEN_TELEMAC2D_PYTHON_ID))
elif selectedType == hydro_study.COUPLING1D2D_CASE_TYPE_ID:
popup.addAction(sgPyQt.action(GUIcontext.EDIT_COUPLING1D2D_CASE_ID))
popup.addAction(sgPyQt.action(GUIcontext.OPEN_SCHEMA_IN_YACS_ID))
"see logs and listing files for more details):"))
msg += "\n" + unicode(exc)
raise HSGUIException(msg)
+# Generate a python script from the eficas file
+def generate_telemac2d_python():
+ try:
+ with wait_cursor:
+ ed = hydro_study.HydroStudyEditor()
+ sobj = ed.editor.study.FindObjectID(salome.sg.getSelected(0))
+ ed.find_or_create_telemac2d_case(sobj):
+ except SALOME.SALOME_Exception, exc:
+ salome.sg.updateObjBrowser( 0 )
+ msg = unicode(QApplication.translate("generate_telemac2d_python",
+ "An error happened while trying to generate telemac2d Python script:"))
+ msg += "\n" + exc.details.text
+ raise HSGUIException(msg)
+
###
# Open Eficas for 1D / 2D Coupling to create a new coupling case
GUIcontext.SHOW_LOG_ID: show_log,
GUIcontext.CREATE_TELEMAC2D_CASE_ID: create_telemac2d_case,
GUIcontext.RUN_TELEMAC2D_ID: run_telemac2d,
+ GUIcontext.GEN_TELEMAC2D_PYTHON_ID: generate_telemac2d_python,
GUIcontext.EDIT_TELEMAC2D_CASE_ID: edit_telemac2d_case,
GUIcontext.CREATE_COUPLING1D2D_CASE_ID: create_coupling1d2d_case,
GUIcontext.EDIT_COUPLING1D2D_CASE_ID: edit_coupling1d2d_case,