

# This code creates the user interface for the mesh editor.
#
# Copyright (c) 1997 Pacific Marketing and Consulting, Inc,
#       and ICEM Systems, GmbH.  All rights reserved.
# Author:  Wayne A. Christopher, wayne@icemcfd.com
#
# All the menu-specific stuff, logos, etc go in this file.  This makes it
# easier to create flavored versions of med with different structures.


set tool_phases ""
lappend tool_phases {File file}
if $med_autohex {
    lappend tool_phases {Model model}
}
lappend tool_phases {Geometry geometry}
lappend tool_phases {Meshing mesher}
lappend tool_phases {"Edit mesh" edit}
lappend tool_phases {Output output}

# unused
# {merge     button "Merge"         0,2 "file_mergeproject" }

set tool_phase_info(file) {
    {open menu "Open" 0,1 {
	{ command -label "Project" -command {file_openproject} }
	{ command -label "Tetin (geometry) file" -command {file_loadtetin "" 1} }
	{ command -label "Domain (mesh) file" -command {file_loadmesh "" 0} }
	{ command -label "Boundary condition file" -command {file_loadfamboco ""} }
	{ command -label "Cartesian file" -command {file_loadcartfile ""} }
    } }
    {new menu "New" 0,2 {
	{ command -label "Project" -command {file_newproject} }
	{ command -label "Tetin (geometry) file" -command {file_newfile tetin} }
	{ command -label "Domain (mesh) file" -command {file_newfile domain} }
	{ command -label "Boundary condition file" -command {file_emptyfamboco} }
	{ command -label "Cartesian file" -command {file_newfile cartfile} }
    } }
    {save menu "Save" 0,3 {
	{ command -label "Project" -command {file_saveproject 0} }
	{ command -label "Tetin (geometry) file" -command {file_savetetin 0} }
	{ command -label "Domain (mesh) file" -command {file_savemesh 0} }
	{ command -label "Boundary condition file" -command {file_savefamboco 0} }
	{ command -label "Cartesian file" -command {file_savecartfile 0} }
    } }
    {saveas menu "Save as" 0,4 {
	{ command -label "Project" -command {file_saveproject 1} }
	{ command -label "Tetin (geometry) file" -command {file_savetetin 1} }
	{ command -label "Domain (mesh) file" -command {file_savemesh 1} }
	{ command -label "Boundary condition file" -command {file_savefamboco 1} }
	{ command -label "Cartesian file" -command {file_savecartfile 1} }
    } }
    {close menu "Close" 0,5 {
	{ command -label "Project" -command {file_closeproject} }
	{ command -label "Tetin (geometry) file" -command {file_unload tetin 1} }
	{ command -label "Domain (mesh) file" -command {file_unload domain 1} }
	{ command -label "Boundary condition file" -command {file_unload family_boco 1} }
	{ command -label "Cartesian file" -command {file_unload cart_file 1} }
    } }
    {quit      button "Quit"          0,6 file_quit}
       
    { delete menu "Delete"  1,1 {
	{ command -label "Project" -command "file_delete project" }
	{ command -label "Tetin (geometry) file" -command "file_delete tetin" }
	{ command -label "Domain (mesh) file" -command "file_delete domain" }
 	{ command -label "Boundary condition file" -command "file_delete family_boco " }
 	{ command -label "Cartesian file" -command "file_delete cart_file " }
    } }
    {import    menu "Import geo"      1,5 {
	{ command -label "Domain file" -command "geo_import domain; med_home" }
	{ command -label "Fluent"      -command "geo_import rampant; med_home" }
	{ command -label "Nastran"     -command "geo_import nastran; med_home" }
	{ command -label "Patran"      -command "geo_import patran; med_home" }
	{ command -label "Plot3d"      -command "geo_import plot3d; med_home" }
	{ command -label "STL"         -command "geo_import stl; med_home" }
	{ command -label "VRML"        -command "geo_import vrml; med_home" }
	{ command -label "TecPlot"    -command "geo_import tecplot; med_home" }
	separator
	{ command -label "Acis->Tetin" -command "trans_acis_tetin" }
	{ command -label "CATIA V4->Tetin"    -command "trans_catia_tetin" }
	{ command -label "DDN->Tetin"         -command "trans_ddn_tetin" }
	{ command -label "DWG/DXF->Tetin" -command "trans_autocad_tetin" }
	{ command -label "ESF->Tetin" -command "trans_esf_tetin" }
	{ command -label "GEMS->Tetin"        -command "trans_gems_tetin" }
	{ command -label "IDI->Tetin" -command "trans_idi_tetin" }
	{ command -label "IGES->Tetin"        -command "trans_iges_tetin" }
	{ command -label "INPUT->Tetin"   -command "trans_input_tetin" }
	{ command -label "Parasolid->Tetin" -command "trans_ps_tetin" }
	{ command -label "ProE->Tetin" -command "trans_proe_tetin" }
	{ command -label "STEP/IGES->Tetin" -command "trans_step_tetin" }
	{ command -label "UG->Tetin"          -command "trans_ug_tetin" }
	separator
	{ command -label "DXF->DDN"    -command "trans_dxf_ddn" }
	{ command -label "IGES->DDN"   -command "ddn_trans_iges_imp" }
	{ command -label "PreBFC->DDN" -command "trans_prebfc_ddn" }
	{ command -label "TVDA->DDN"   -command "trans_tvda_ddn" }
	{ ignore command -label "SET->DDN"    -command "trans_set_ddn" }
    } }
    {export    menu "Export geo"      1,6 {
	{ command -label "Tetin->BrepXML"   -command "trans_tetin_brepxml" }
	{ command -label "Tetin->DDN"	    -command "trans_tetin_ddn" }
	{ command -label "Tetin->IGES"	    -command "trans_tetin_iges" }
	{ command -label "Tetin->Parasolid" -command "trans_tetin_ps" }
	{ command -label "DDN->DXF"	    -command "trans_ddn_dxf" }
	{ command -label "DDN->IGES"	    -command "ddn_trans_iges_exp" }
	{ command -label "DDN->TVDA"	    -command "trans_ddn_tvda" }
	{ ignore command -label "DDN->SET"  -command "trans_ddn_set" }
    { command -label "Coordinate System->CCL" -command "trans_cos_ccl"}
    } }
    {options   menu   "Options"       2,1 {
	{ checkbutton -label "Expert mode" -variable options(expert) \
	  -command file_update_expert }
	{ command -label "Edit options"   -command file_options }
	{ command -label "Edit pathnames" -command file_edit_paths }
	{ command -label "Change ICEM_ACN" -command "file_change_icem_acn" }
	{ command -label "Mouse bindings" -command "tdv_edit_bindings .v.view"}
	{ command -label "Coord systems"  -command "coordinate_systems"}
	{ command -label "Edit directories" -command "file_edit_dirs" }

    } }
    {utility   menu   "Utilities"     2,2 {
	{ command -label "Structured -> unstructured" -command output_s2u }
	{ command -label "Structured -> superdomain" -command output_super }
	separator
	{ cascade Project {
	    { command -label "Archive"    -command "file_archive" }
	    { command -label "Un-archive"  -command "file_unarchive" }
	    { command -label "Copy"   -command "file_copyproject" }
	    { command -label "Rename" -command "file_renameproject" }
	    { command -label "Delete" -command "file_delete project" }
        }   }
	{ command -label "Change directory"   -command file_chdir}
	{ command -label "Convert directory style" \
	      -command file_convert_directory_structure }
	{ command -label "Text Editor"        -command edit_file }
	{ command -label "CGM->Postscript"    -command "file_gplot" }
	{ cascade License {
	    { command -label "Start server"   -command "license_start" }
	    { command -label "Reconnect"      -command "license_acquire" }
	    { command -label "Check usage"    -command "license_check" }
	} }
	{ command -label "Check system info"  -command "check_sysinfo" }
	{ command -label "Clear file locks"   -command "file_clear_lock" }
	{ cascade Shell {
	    { command -label "Current dir"    -command "file_shell ." }
	    { command -label "Transfer dir"   -command "file_shell transfer" }
	    { command -label "Mesh dir"       -command "file_shell mesh" }
	} }
	{ command -label "Play game"          -command "game" }
    } }
    
    {script  menu   "Scripting"       2,3 {
	{ command -label "Run script"         -command "script_run" }
	{ command -label "Replay mode"        -command "file_replay" }
	{ command -label "Programmer's guide" -command "file_pguide" }
	{ command -label "Variables & Vectors"  -command "vid_gui" }
    } "" options(expert) }
    
    {anno      button "Annotations"   2,4 file_annotations}
    
    {importmesh  menu "Import mesh"   2,5 {
	{ command -label "Ansys"     -command "mesh_import ansys; med_home" }
	{ command -label "CFX5"      -command "mesh_import cfx5; med_home" }
	{ command -label "CGNS"      -command "mesh_import cgns; med_home" }
	{ command -label "Fluent"    -command "mesh_import rampant; med_home" }
	{ command -label "LS-Dyna"     -command "mesh_import lsdyna; med_home" }
	{ command -label "Nastran"   -command "mesh_import nastran; med_home" }
	{ command -label "Patran"    -command "mesh_import patran; med_home" }
	{ command -label "Plot3d"    -command "mesh_import plot3d; med_home" }
	{ command -label "SAUNA"     -command "mesh_import sauna; med_home" }
	{ command -label "Starcd"    -command "mesh_import starcd; med_home" }
	{ command -label "STL"       -command "mesh_import stl; med_home" }
	{ command -label "TecPlot"  -command "mesh_import tecplot; med_home" }
	{ command -label "Specify reader"  -command "backend_readers; med_home" }
    } }
    {partop    menu "DDN part"        2,6 {
	{ ignore command -label "Select"     -command "ddn_set_part" }
	{ command -label "Move to other dir" -command "ddn_copymove_part 0" }
	{ command -label "Copy to other dir" -command "ddn_copymove_part 1" }
	{ command -label "Delete"  	     -command "ddn_delete_part" }
	{ command -label "Copy" 	     -command "ddn_copy_part" }
	{ command -label "Rename" 	     -command "ddn_rename_part" }
	{ ignore command -label "Switch dir" 	-command "ddn_switch_dir" }
	
    } }
} 

set tool_phase_info(geometry) {
    {cadif     menu "DDN tools"         0,1 {
	{ command -label "DDN"              -command "ddn_run ddn" }
	{ command -label "DDN -> Tetin"     -command "ddn_run mif" }
	{ command -label "Tetin -> DDN"     -command "ddn_tetin_to_iparta" }
	{ command -label "Comak"            -command "ddn_run comak" }
	{ command -label "Input"            -command "ddn_run input" }
	{ command -label "Frontal"          -command "ddn_run frontal" }
    } }
    
    {boco      button "Boundary conds"   0,2 geo_famboco_edit "" "" }
    
    {repair    button "Repair"        0,3 geo_fix_gaps}
    {convert   menu "Utilities" 0,4 {
	{ command -label "Frontal area" -command "geo_frontal" }
	{ command -label "Surface area" -command "geo_surface_area" }
	{ command -label "Transfer facets -> mesh" -command "geo_export 1" }
	{ command -label "Transfer mesh -> facets" -command "geo_import current" }
	{ command -label "Struct mesh -> CAD surfaces" -command geo_import_str_to_cad }
    } "" options(expert) }
    {gmeshparams   menu "Mesh params" 0,5 {
	{ command -label "Model" -command "geo_params_edit_model" }
	{ command -label "Selected families" -command "geo_params_edit family" }
	{ command -label "All families" -command "geo_params_edit_allfamilies" }
    } "" }
    
    {surface   radiobutton "Surface"   1,1 geo_command_mode surface "" \
	 "" "" \
	 "-background \#AAAAFF -activebackground \#CCCCFF" }
    {curve     radiobutton "Curve"     1,2 geo_command_mode curve "" \
	 "" ""  \
	 "-background \#AAFFAA -activebackground \#CCFFCC" }
    {point     radiobutton "Point"     1,3 geo_command_mode point "" \
	 "" ""  \
	 "-background \#FFAAAA -activebackground \#FFCCCC" }
    {material  radiobutton "Material"  1,4 geo_command_mode material "" \
	 "" ""  \
	 "-background \#FFAAFF -activebackground \#FFCCFF" }
    {density   radiobutton "Density"   1,5 geo_command_mode density "" \
	 "" ""  \
	 "-background \#FFFFAA -activebackground \#FFFFCC" }
    {loop      radiobutton "Loop"      1,6 geo_command_mode loop "" \
	 "" ""  \
	 "-background \#AAFFFF -activebackground \#CCFFFF" }
    
    {create    menu "Create"           2,1 {
	variable geo_command_mode 
	{ surface {
	    { command -label "Segment surface" -command \
		  "geo_create_surface_segment" }
	    { command -label "From 4 points" -command \
		  "geo_create_surface_points" }
	    { command -label "From 8 points (box)" -command \
		  "geo_create_surface_points_box" }
	    separator
	    { ignore command -label "Shrink wrap" -command \
		  "geo_shrinkwrap" }
	    { command -label "Convex hull" -command \
		  "geo_convex_hull" }
	    { command -label "From 2-4 curves" -command \
		  "geo_create_surface_from_curves" }
	    { command -label "Curtain surface" -command \
		  "geo_create_surface_curtain" }
	    { command -label "Midsurface" -command \
		  "geo_create_surface_mid" }
	    { command -label "From planar contour" -command \
		  "geo_cre_srf_from_contour" }

	} geomenu }
	{ curve {
	    { command -label "Segment curve" -command \
		  "geo_create_curve_segment" }
	    { command -label "Extract from surface" -command \
		  "geo_create_curve_extract" }
	    { command -label "Intersect surfaces" -command \
		  "geo_create_curve_intersect" }
	    { command -label "From points" -command \
		  "geo_create_curve_points" }
	    { command -label "Concatenation" -command \
		  "geo_create_curve_concat" }
            { command -label "Arc through 3 points" -command \
		  "geo_create_curve_3pt_arc" }
            { command -label "Line through 2 points" -command \
		  "geo_create_curve_line" }
	    { command -label "Isoparametric Curves" -command \
		  "geo_create_curve_isocurve" }
	    { command -label "Build topology" -command \
		  geo_build_topo }
	    { command -label "Project to surface" -command \
		  geo_create_curve_proj_to_surface }
	} geomenu }
	{ point {
	    { command -label "Extract from curve" -command \
		  "geo_create_point_extract" }
	    { command -label "Screen select" -command \
		  "geo_create_point_screen" }
	    { command -label "Screen midpoint" -command \
		  "geo_create_point_midpoint" }
	    { command -label "Explicit location" -command \
		  "geo_create_point_explicit" }
	    { command -label "Curve intersection" -command \
		  "geo_create_point_curveinter" }
	} geomenu }
	{ material {
	    { command -label "Screen select" -command \
		  "geo_create_material_screen" }
	    { command -label "Screen midpoint" -command \
		  "geo_create_material_midpoint" }
	    { command -label "Explicit location" -command \
		  "geo_create_material_explicit" }
	} geomenu }
	{ density {
	    { command -label "Density Point" -command \
		  "geo_create_density_screen 1" }
	    { command -label "Density Line" -command \
		  "geo_create_density_screen 2" }
	    { command -label "Density Plane" -command \
		  "geo_create_density_screen 3" }
	    { command -label "Density Volume" -command \
		  "geo_create_density_screen" }
	} geomenu }
        { loop {
            { command -label "From curves" -command \
                    "geo_create_loop_screen" }
            { command -label "From surfaces" -command \
                    "geo_create_loop_surfaces 0" }
            { command -label "From surfaces per family" -command \
                    "geo_create_loop_surfaces 1" }
            { command -label "From each surface" -command \
                    "geo_create_loop_surface" }
	} geomenu }
    } ""  }

    {delete    menu "Delete"           2,2 {
	variable geo_command_mode
	{ surface {
	    { command -label Selected -command "geo_delete surface" }
	    { command -label "Last created" -command \
		  "geo_delete_last surface" }
	    { command -label "All visible" -command \
		  "geo_delete_all visible surface" }
	    { command -label "All blanked" -command \
		  "geo_delete_all blanked surface" }
	} geomenu }
	{ curve {
	    { command -label Selected -command "geo_delete curve" }
	    { command -label "Last created" -command \
		  "geo_delete_last curve" }
	    { command -label "All visible" -command \
		  "geo_delete_all visible curve" }
	    { command -label "All blanked" -command \
		  "geo_delete_all blanked curve" }
	} geomenu }
	{ point {
	    { command -label Selected -command "geo_delete point" }
	    { command -label "Last created" -command \
		  "geo_delete_last point" }
	    { command -label "All visible" -command \
		  "geo_delete_all visible point" }
	    { command -label "All blanked" -command \
		  "geo_delete_all blanked point" }
	} geomenu }
	{ material {
	    { command -label Selected -command "geo_delete material" }
	    { command -label "All visible" -command \
		  "geo_delete_all visible material" }
	    { command -label "All blanked" -command \
		  "geo_delete_all blanked material" }
	} geomenu }
	{ density {
	    { command -label Selected -command "geo_delete density" }
	    { command -label "All visible" -command \
		  "geo_delete_all visible density" }
	    { command -label "All blanked" -command \
		  "geo_delete_all blanked density" }
	} geomenu }
	{ loop {
	    { command -label Selected -command "geo_delete loop" }
	    { command -label "All visible" -command \
		  "geo_delete_all visible loop" }
	    { command -label "All blanked" -command \
		  "geo_delete_all blanked loop" }
	} geomenu }
    } "" }
    
    {modify    menu "Modify"           2,3 {
	variable geo_command_mode 
	{ surface {
	    { command -label "Untrim" -command \
		  "geo_modify_surface_untrim" }
	    { command -label "Rename" -command \
		  "geo_modify_object_rename surface" }
	    { command -label "Convert to facets" -command \
		  "geo_modify_object_facetize surface" }
	    { command -label "Merge surfaces" -command \
		  "geo_modify_merge surface" }
		{ command -label "Split folded surface" -command \
		  "geo_split_folded_surface" }
            { cascade "Reapproximate" {
                { command -label "Selected surface(s)" -command \
                      "geo_modify_surface_reappr 0 1 1 0" }
                { command -label "Selected surface(s) bounded by curve(s)" -command \
                      "geo_modify_surface_reappr 1 1 1 0" }
                { command -label "Each surface" -command \
                      "geo_modify_surface_reappr 0 1 1 1" }
                { command -label "Each surface, quiet" -command \
                      "geo_modify_surface_reappr 0 1 0 1" }
            } }
            { ignore command -label "Contact surfaces" -command \
                  "geo_contact_surfaces 1" }
            { cascade "Thickness" {
                { cascade "Explicit values" {
                    { command -label "2 * 2" -command \
                          "geo_surface_thickness 2" }
                    { command -label "3 * 3" -command \
                          "geo_surface_thickness 3" }
                    { command -label "4 * 4" -command \
                          "geo_surface_thickness 4" }
                } }
                { command -label "Calculate from solid" -command \
                      "geo_calculate_thickness" }
            } }
	    separator
	    { command -label "Create triangles" -command \
		  "geo_modify_object_add surface 3 triangle" }
	    { command -label "Delete triangles" -command \
		  "geo_modify_object_delete surface triangle" }
	    { command -label "Keep only triangles" -command \
		  "geo_modify_object_restrict surface triangle" }
	    { cascade "Move triangles" {
		{ command -label "To existing" -command \
		      "geo_modify_moveseg surface triangle 0" }
		{ command -label "To new" -command \
		      "geo_modify_moveseg surface triangle 1" }
	    } }
	    { cascade "Move nodes" {
		{ command -label "To location" -command \
		      "geo_modify_movenode surface loc" }
		{ command -label "On screen" -command \
		      "geo_modify_movenode surface none" }
		{ command -label "On plane" -command \
		      "geo_modify_movenode surface plane" }
		{ command -label "On line" -command \
		      "geo_modify_movenode surface line" }
		{ command -label "In direction" -command \
		      "geo_modify_movenode surface dir" }
	    } }
	    { cascade "Merge nodes" {
		{ command -label "Interactive" -command \
		      "geo_modify_mergenode surface" }
		{ command -label "Tolerance" -command \
		      "geo_modify_mergenode_tol surface" }
	    } }
	    { command -label "Split edges" -command \
		  "geo_modify_splitedge surface" }
	    { command -label "Swap edges" -command \
		  "geo_modify_swapedge surface" }
	    { command -label "Split triangles" -command \
		  "geo_modify_splitseg surface triangle 3" }
	    { command -label "Coarsen" -command \
		  "geo_coarsen_surface" }
	} geomenu }
	{ curve {
	    { command -label "Merge" -command \
		  "geo_modify_curve_merge" }
	    { command -label "Create segments" -command \
		  "geo_modify_object_add curve 2 segment" }
	    { command -label "Delete segments" -command \
		  "geo_modify_object_delete curve segment" }
	    { command -label "Confine segments" -command \
		  "geo_modify_object_restrict curve segment" }
	    { command -label "Merge curves" -command \
		  "geo_modify_merge curve" }
	    { cascade "Move segments" {
		{ command -label "To existing" -command \
		      "geo_modify_moveseg curve segment 0" }
		{ command -label "To new" -command \
		      "geo_modify_moveseg curve segment 1" }
	    } }
	    { cascade "Move nodes" {
		{ command -label "To location" -command \
		      "geo_modify_movenode curve loc" }
		{ command -label "On screen" -command \
		      "geo_modify_movenode curve none" }
		{ command -label "On surfaces" -command \
		      "geo_modify_movenode curve surface" }
		{ command -label "On plane" -command \
		      "geo_modify_movenode curve plane" }
		{ command -label "On line" -command \
		      "geo_modify_movenode curve line" }
		{ command -label "In direction" -command \
		      "geo_modify_movenode curve dir" }
	    } }
	    { command -label "Merge nodes" -command \
		  "geo_modify_mergenode curve" }
	    { command -label "Split segments" -command \
		  "geo_modify_splitseg curve segment 2" }
	    { command -label "Rename" -command \
		  "geo_modify_object_rename curve" }
	    { command -label "Convert to facets" -command \
		  "geo_modify_object_facetize curve" }
	    { command -label "Reapproximate" -command \
		  "geo_modify_curve_reappr" }
	} geomenu }
	{ point {
	    { command -label "Merge" -command \
		  "geo_modify_point_merge" }
	    { command -label "New position" -command \
		  "geo_modify_point_newpos" }
	    { command -label "Screen move" -command \
		  "geo_modify_point_screen" }
	    { command -label "Rename" -command \
		  "geo_modify_object_rename point" }
	} geomenu }
	{ material {
	    { command -label "New position" -command \
		  "geo_modify_material_newpos" }
	    { command -label "Screen move" -command \
		  "geo_modify_material_screen" }
	    { command -label "Rename" -command \
		  "geo_modify_object_rename material" }
	} geomenu }
	{ density {
            { command -label "Selected" -command \
                  "geo_modify_density_screen" }
	    { command -label "Move corner" -command \
		  "geo_modify_movenode density node" }
	    { command -label "Rename" -command \
		  "geo_modify_object_rename density" }
	} geomenu }
	{ loop {
	    { cascade "Merge" {
		{ command -label "Curves" -command \
		      "geo_modify_loop merge curves" }
		{ command -label "Loops" -command \
		      "geo_modify_loop merge loops" }
	    } }
	    { cascade "Add" {
		{ command -label "Corners" -command \
		      "geo_modify_loop add corner" }
		{ command -label "Prescribed points" -command \
		      "geo_modify_loop add point" }
		{ command -label "Boundary curves" -command \
		      "geo_modify_loop add curve boundary" }
		{ command -label "Prescribed curves" -command \
		      "geo_modify_loop add curve prescribed" }
		{ command -label "Surfaces" -command \
		      "geo_modify_loop add surface" }
	    } }
	    { cascade "Delete" {
		{ command -label "Corners" -command \
		      "geo_modify_loop delete corner" }
		{ command -label "Prescribed points" -command \
		      "geo_modify_loop delete point" }
		{ command -label "Curves" -command \
		      "geo_modify_loop delete curve" }
		{ command -label "Surfaces" -command \
		      "geo_modify_loop delete surface" }
	    } }
	} geomenu }
    } "" }
    {emeshparams  button "Entity params"    2,4 \
	    "geo_params_edit $geo_command_mode" "" "" \
	    { geo_command_mode {geomenu geo_command_mode}} }
    {families  button "Change family"     2,5 geo_family "" \
	 "" { geo_command_mode {geomenu geo_command_mode}} }
    {copymove  menu "Copy/move"        2,6 {
	variable geo_command_mode 
	{ surface {
	    { command -label "Whole geometry" -command \
		  "geo_copymove all" }
	    { command -label "Selected entities" -command \
		  "geo_copymove entity" }
	    { command -label "Selected surfaces" -command \
		  "geo_copymove surface" }
	} geomenu }
	{ curve {
	    { command -label "Whole geometry" -command \
		  "geo_copymove all" }
	    { command -label "Selected entities" -command \
		  "geo_copymove entity" }
	    { command -label "Selected curves" -command \
		  "geo_copymove curve" }
	} geomenu }
	{ point {
	    { command -label "Whole geometry" -command \
		  "geo_copymove all" }
	    { command -label "Selected entities" -command \
		  "geo_copymove entity" }
	    { command -label "Selected points" -command \
		  "geo_copymove point" }
	} geomenu }
	{ material {
	    { command -label "Whole geometry" -command \
		  "geo_copymove all" }
	    { command -label "Selected entities" -command \
		  "geo_copymove entity" }
	    { command -label "Selected materials" -command \
		  "geo_copymove material" }
	} geomenu }
	{ density {
	    { command -label "Whole geometry" -command \
		  "geo_copymove all" }
	    { command -label "Selected entities" -command \
		  "geo_copymove entity" }
	    { command -label "Selected densities" -command \
		  "geo_copymove density" }
	} geomenu }
	{ loop {
	    { command -label "Whole geometry" -command \
		  "geo_copymove all" }
	} geomenu }
    } ""  }
   {ezcad checkbutton EZ-CAD 0,6 ezcad_is_active med_ezcad}
}

#	    { command -label "From curve boundary" -command \
#		  "geo_create_surface_boundary" }

set tool_phase_info(mesher) {
    {hexa      menu   "Hexa"          0,1 {
	{ command -label Interactive    -command mesher_hexa }
	{ command -label Batch          -command mesher_hexa_batch }
	{ command -label "Mulcad->Hexa" -command mesher_mulcad_convert }
	{ command -label "From Quad Mesh" -command mesher_hex_dominant }
    } }
    {tetra     menu   "Tetra"         0,2 {
	{ command -label "From CAD/Surface Mesh" -command mesher_tetra }
	{ command -label "Old Tetra GUI" -command mesher_tetra_full }
	{ command -label "From Triangular Surface Mesh" -command mesher_tri2tet }
	{ ignore command -label "Insert Tetra" -command "unstruct_insert_tetra 1" }
    } }
    {prism     button "Prism"         0,3 mesher_prism}
    { surf_mesh   menu "Surface Mesh" 0,4 {
	{ command -label "Patch independent mesh" -command mesher_triangle }
	{ command -label "Patch based mesh" -command mesher_quad }
	{ ignore command -label "Mapped mesh" -command mesher_str_quad }
    } }
    {autohex   button "AutoHex"      0,5 mesher_autohexa}
    {mulcad    menu "Mulcad/Padamm"   1,1 {
	{ command -label "Run Mulcad" -command "ddn_run_mulcad" }
	{ command -label "Clean up Scratch Files" -command "mulcad_cleanup" }
    } }
    {pcube     menu   "P-Cube"        1,2 {
	{ command -label "Run P-Cube"  -command pcube_run }
	{ command -label "Delete P-Cube Undo Files" -command "pcube_delete_undos" }
	{ command -label "Set P-Cube Tolerance" -command "pcube_set_user_tol" }
    } }
    {cartfile menu   "Global setup" 2,1 {
	{ command -label "Init (minimal)" -command "cartfile_initialize" }
	{ command -label "Init (keypoints)" -command "cartfile_reset" }
	{ command -label "Load cart file" -command "cartfile_load" }
	{ command -label "Save cart file" -command "cartfile_save" }
	{ command -label "Merge cart file" -command "cartfile_merge" }
	{ checkbutton -label "Display" -variable cartfile_visible \
		-command "cartfile_display" }
	{ command -label "Add stations" -command "cartfile_add_stations" }
	{ command -label "Delete stations" -command "cartfile_del_stations" }
	{ command -label "Edit stations" -command "cartfile_edit_stations" }
	{ command -label "Edit ranges" -command "cartfile_edit_ranges" }
	{ command -label "Edit cyl params" -command "cartfile_edit_cylparams" }
	separator
	{ radiobutton -label Cartesian -variable cartfile_grid_type \
		-value cartesian -command cartfile_update_type }
	{ radiobutton -label Cylindrical -variable cartfile_grid_type \
		-value cylindrical -command cartfile_update_type }
    } "" }
    {global    button "Global"     2,2 mesher_global}
}
set tool_phase_info(edit) {
    {copymove  button "Copy/move"       0,1 edit_copymove
	"" "" data_available(mesh) }
    
    {smooth    button "Smooth"          0,2 edit_smooth
	"" "" data_available(mesh) }
    
    {refine    button "Refine"          0,3 edit_refine
	"" "" data_available(unstruct) }
    
    {coarsen   button "Coarsen"         0,4 edit_coarsen
	"" "" data_available(unstruct) }
    
    {merge     button "Merge"           0,5 edit_merge
	"" "" data_available(unstruct) }
    
    {consist   button "Extrude"         0,6 edit_extrude
	"" "" data_available(unstruct) }

    {diag      menu   "Diagnostics"   1,1 {
	variable data_available(unstruct)
	{ 0 {
	    { command -label "Quality metrics"    -command struct_diag }
	    { command -label "Domain orientation" -command struct_check_orient}
	    { command -label "Summary"            -command "ic_str_summary" }
	    { command -label "Full topo info"     -command "struct_dump" }
	} }
	{ 1 {
	    { cascade Information {
		{ command -label "Summary" \
		    -command "unstruct_print_info summary" }
		{ command -label "Domain file" \
		    -command "unstruct_print_info domain" }
		{ command -label "Element" \
		    -command "unstruct_print_info element" }
		{ command -label "Family boundary edges" -command \
		      "unstruct_diag_mesh bound_edge" }
	        { command -label "Spanning edges" -command \
		      "unstruct_diag_mesh 3_surface_node_internal_faces" }
		{ command -label "Node" \
		    -command "unstruct_print_info node" }
		{ command -label "Volume" \
		    -command "unstruct_print_info volume" }
		{ command -label "Area" \
		    -command "unstruct_print_info area" }
		{ command -label "Length" \
		    -command "unstruct_print_info length" }
        { command -label "Thickness" \
            -command "unstruct_get_thickness" }
	    } }
	    { ignore cascade "Which elements" {
		{ radiobutton -label "All" -variable options(diag_which) \
		      -value all }
		{ radiobutton -label "Active" -variable options(diag_which) \
		      -value active }
		{ radiobutton -label "Subset" -variable options(diag_which) \
		      -value subset }
	    } }
            { command -label "Check mesh" -command unstruct_diag_form }
	    { command -label "Check edges" -command "unstruct_edges" }
	    { command -label "Quality metrics" -command unstruct_quality }
	    { ignore cascade Quality {
		{ command -label "Quality metrics" -command unstruct_quality }
		{ ignore command -label "Overlapping elements" -command \
		      "unstruct_diag_mesh overlap" }
		{ ignore command -label "Delaunay violations"  -command \
		      "unstruct_diag_mesh delaunay" }
	    } }
	    { ignore cascade Errors {
		{ command -label "Duplicate elements"   -command \
		      "unstruct_diag_mesh duplicate" }
		{ command -label "Volume orientation" -command \
		      "unstruct_diag_mesh vol_orient" }
	        { command -label "Surface orientation" -command  \
		      "ic_uns_check_orientation" }
		{ command -label "Uncovered faces"      -command \
		      "unstruct_diag_mesh uncovered" }
		{ command -label "Missing internal faces" -command \
		      "unstruct_diag_mesh missing_internal" }
		{ command -label "Periodic problems" -command \
		      "unstruct_diag_mesh periodic_problem" }
	    } }
	    { ignore cascade "Possible problems" {
		{ command -label "Single edges"         -command \
		      "unstruct_diag_mesh single" }
		{ command -label "2 single edges"       -command \
		      "unstruct_diag_mesh single_2" }
		{ command -label "Multiple edges"       -command \
		      "unstruct_diag_mesh multiple" }
		{ command -label "Single/multiple edges" -command \
		      "unstruct_diag_mesh single_multiple" }
		separator
		{ command -label "Triangle boxes" -command \
		      "unstruct_diag_mesh triangle_box" }
		{ command -label "Non-manifold verts"   -command \
		      "unstruct_diag_mesh nmanvert" }
		{ command -label "Stand-alone surface mesh" -command \
		      "unstruct_diag_mesh standalone" }
		{ command -label "Check edges" -command \
				"unstruct_edges" }
		separator
	        { command -label "Max vertex degree" -command \
		      "unstruct_max_vertex_degree" }
	        { command -label "Disconnected vertices" -command \
		      "usntruct_disconnected_verts" }
	    } }
	} }
    } "" data_available(mesh) }

    {uncouple     menu "Uncouple"      1,2 {
        { command -label "standard" -command "unstruct_uncouple 0" }
        { command -label "allow unstable patterns" -command "unstruct_uncouple -1" }
        { command -label "pure 3D refinement" -command "unstruct_uncouple 1" }
    } "" data_available(unstruct) }

    {bandwidth    button "Bandwidth"     1,3 unstruct_bandwidth
        "" "" data_available(unstruct) }

    {chtype    menu "Change type"        1,4 {
	variable enable_feature(prism_2_3hexa)
	{ 0 {
	    { command -label "Prisms -> Tetras" -command "unstruct_dissolve_prisms" }
	    { command -label "Linear -> Quadratic" -command "unstruct_linear_to_quadratic" }
	    { command -label "Quadratic -> Linear" -command "unstruct_quadratic_to_linear" }
	    { command -label "1 Quad -> 2 Tri" -command "unstruct_chtype quad tri 0 1" }
            { command -label "Tri -> Quad" -command "unstruct_tri2quad" }
	    { command -label "12 Tetra -> 1 Hexa" -command "unstruct_convert_hexas" }
	    { command -label "1 Tetra -> 4 Hexa" -command "unstruct_chtype tetra hexa 1 1" }
	    { command -label "1 Prism -> 3 Tetra" -command "unstruct_chtype prism tetra 0 1" }
	    { command -label "1 Pyra -> 2 Tetra" -command "unstruct_chtype pyra tetra 0 1" }
	    { command -label "All -> Tetra" -command "unstruct_chtype all tetra 0 0" }
        } }
	{ 1 {
	    { command -label "Prisms -> Tetras" -command "unstruct_dissolve_prisms" }
	    { command -label "Linear -> Quadratic" -command "unstruct_linear_to_quadratic" }
	    { command -label "Quadratic -> Linear" -command "unstruct_quadratic_to_linear" }
	    { command -label "1 Quad -> 2 Tri" -command "unstruct_chtype quad tri 0 1" }
            { command -label "Tri -> Quad" -command "unstruct_tri2quad" }
	    { command -label "12 Tetra -> 1 Hexa" -command "unstruct_convert_hexas" }
	    { command -label "1 Tetra -> 4 Hexa" -command "unstruct_chtype tetra hexa 1 1" }
	    { command -label "1 Prism -> 3 Tetra" -command "unstruct_chtype prism tetra 0 1" }
	    { command -label "1 Pyra -> 2 Tetra" -command "unstruct_chtype pyra tetra 0 1" }
	    { command -label "All -> Tetra" -command "unstruct_chtype all tetra 0 0" } 
	    { command -label "1 Prism -> 3 Hexa" -command "unstruct_prism_to_3hexa" }
        } }
    } "" data_available(unstruct) }

    {setfam    menu   "Change family" 1,5 {
	variable data_available(unstruct)
	{ 0 {
	    { command -label Domain  -command "struct_setfam domain"  }
	    { command -label Subface -command "struct_setfam subface" }
	    { command -label Edge    -command "struct_setfam edge"    }
	    { command -label Vertex  -command "struct_setfam vertex"  }
	} }
	{ 1 {
	    { command -label Element -command "unstruct_family_element"  }
	} }
    } "" data_available(mesh) }
    
    {utilities  menu   "Utilities" 1,6 {
	variable data_available(unstruct)
	{ 0 {
	    { ignore command -label "Convert to unstruct" -command "struct_to_unstruct" }
	} }
	{ 1 {
	    { command -label "Edit properties" -command "unstruct_edit_props" }
	    { command -label "Make consistent" -command "unstruct_consistent" }
	    { command -label "Flood fill" -command "unstruct_flood_fill_checkfix" }
	    { command -label "Auto Orphan" -command "unstruct_auto_orphan" }
	    { command -label "Spectral elements" -command "unstruct_spectral_elements" }
	    { command -label "Orthogonal hexahedral smoother" -command "unstruct_test_smooth" }
        }   }
    } "" data_available(mesh) }
    
    {editnodes    menu   "Edit nodes"    2,1 {
	variable data_available(unstruct)
	{ 0 {
	    { command -label "Move exact" -command \
		  "struct_move_node_exact" }
	    { command -label "Move screen" -command \
		  "struct_move_node_screen" }
	    { checkbutton -label "On geometry" -variable \
		  struct_move_node(on_geom) }
	} }
	{ 1 {
	    { cascade Move {
		{ command -label "Invert"    -command "unstruct_move_node 1" }
		{ command -label "No invert" -command "unstruct_move_node 0" }
		{ command -label "Exact"     -command "unstruct_move_exact" }
	    } }
	    { cascade Merge {
		{ command -label "Interactive"  -command \
		      "unstruct_merge_node inter" }
		{ command -label "All (tolerance)"  -command \
		      "unstruct_merge_node all" }
		{ command -label "Selected (tolerance)"  -command \
		      "unstruct_merge_node select_tol" }
		{ command -label "Visible (tolerance)"  -command \
		      "unstruct_merge_node active_tol" }
	    } }
	    { command -label Delete  -command \
		  "unstruct_delete_node" }
	    { cascade "Project nodes" {
		{ command -label "Surfaces" \
		      -command "unstruct_project_node surface" }
		{ command -label "Curves" \
		      -command "unstruct_project_node curve" }
		{ command -label "Point" \
		      -command "unstruct_project_node point" }
		{ command -label "Current type" \
		      -command "unstruct_project_node same" }
		{ command -label "No projection" \
		      -command "unstruct_project_node none" }
		{ command -label "Automatic" \
		      -command "unstruct_project_node reset" }
		{ command -label "Curve -> surface" -command \
		      "unstruct_project_node curve_surface" }
		{ command -label "Surface -> curve" -command \
		      "unstruct_project_node surface_curve" }
		{ command -label "Surface -> point" -command \
		      "unstruct_project_node surface_point" }
	    } }
	    { cascade "Split nodes" {
		{ command -label "Manifold" \
		      -command "unstruct_split_node_man" }
		{ command -label "Non-manifold" \
		      -command "unstruct_split_node_nonman" }
	    } }
	    { cascade "Projection mode" {
		{ radiobutton -label "Active families" \
		      -variable options(project_active) -value 1 \
		      -command update_project_mode }
		{ radiobutton -label "All families" \
		      -variable options(project_active) -value 0 \
		      -command update_project_mode }
		{ radiobutton -label "No projection" \
		      -variable options(project_active) -value -1 \
		      -command update_project_mode }
	    } }
	    { cascade "Periodic" {
		{ command -label "Make periodic" -command \
		      "unstruct_make_periodic" }
		{ command -label "Remove periodic" -command \
		      "unstruct_remove_periodic" }
	    } }
	    { command -label "Redistribute prism edge" -command \
		"unstruct_redistribute_prism_edge" }
	} }
    } "" data_available(mesh) }
    
    {editelements menu "Edit elements"   2,2 {
	{ command -label Create           -command "unstruct_create_element" }
	{ cascade Delete {
	    { command -label Selected -command "unstruct_delete_element" }
	    { command -label "All blanked" -command "unstruct_delete_blanked" }
	    { command -label "Bars by feature angle" -command "unstruct_delete_bars" }
	    { command -label "Orphan volume" -command "unstruct_delete_orphan" }
	} }
	{ cascade "Change family" {
	    { command -label "Select on screen" -command "unstruct_family_element sel" }
	    { command -label "By family name" -command  "unstruct_family_element fam" }
	} }
	{ cascade Couplings {
	    { command -label Create -command "unstruct_create_coupling" }
	    { command -label Clear -command  "unstruct_clear_coupling" }
	} }
    { cascade Thickness {
        { cascade Create {
            { command -label "From elements" -command "unstruct_create_thickness" }
            { command -label "From nodes" -command "unstruct_create_thickness_at_node" }
        } }
        { command -label Clear -command "unstruct_clear_thickness" }
    } }
    { cascade Immutable {
        { command -label Create -command "unstruct_create_immutable" }
        { command -label Clear -command "unstruct_clear_immutable" }
    } }
	{ cascade "Create connectors" {
	    { command -label "Edit/run bolt-holes" -command \
		"unstruct_meshdirect_boltspiders" }
	    { command -label "Edit/run connectors" -command \
		"unstruct_meshdirect_connectors" }
	    { command -label "Edit/run seam-welds" -command \
		"unstruct_meshdirect_seamwelds" }
	    { command -label "Edit/run spot-welds" -command \
		"unstruct_meshdirect_spotwelds" }
        } }
	{ cascade Split {
	    { command -label Selected     -command "unstruct_split_element" }
	    { command -label "Internal faces" -command \
		  "unstruct_split_internal_faces" }
	    { command -label "Double wall" -command \
		  "unstruct_split_double_wall" }
	    { command -label "Prisms" -command \
		  "unstruct_split_prisms" }
	} }
	{ command -label Orientation      -command "unstruct_reorient_element"}
	{ command -label Renumber         -command "unstruct_reorder_element"}
	{ command -label Targets          -command "unstruct_calculate_targets"}
    } "" data_available(unstruct) }
    
    {editedges menu "Edit edges"         2,3 {
	{ cascade Split {
	    { command -label "Select" -command "unstruct_split_edge" }
	    { command -label "Interior Spanning Edges" -command \
				"unstruct_split_spanning" }
	    { command -label "All Spanning Edges" -command \
				"unstruct_split_spanning boundary_too" }
	} }
	{ cascade Swap {
	    { command -label "Simple"     -command "unstruct_swap_edge 0" }
	    { command -label "Try harder" -command "unstruct_swap_edge 1" }
	    { command -label "Automatic"  -command "unstruct_swap_auto" }
	} }
    } "" data_available(unstruct) }
    
    {editblocks menu "Edit blocks" 2,4 {
        variable enable_feature(nspack)
        { 0 {
	    { command -label "Orientation"  -command struct_reorient }
	    { ignore command -label "Renumber"     -command struct_renumber }
	    { ignore command -label "Split"        -command struct_split }
	    { ignore command -label "Merge"        -command struct_merge }
	    { ignore command -label "Extract topo" -command struct_extract }
	    { ignore command -label "NS packing"   -command edit_nspack }
        } }
        { 1 {
	    { command -label "Orientation"  -command struct_reorient }
	    { ignore command -label "Renumber"     -command struct_renumber }
	    { ignore command -label "Split"        -command struct_split }
	    { ignore command -label "Merge"        -command struct_merge }
	    { ignore command -label "Extract topo" -command struct_extract }
	    { command -label "NS packing"          -command edit_nspack }
        } }
    } "" data_available(struct) }
    
    {editsubface menu "Edit subfaces" 2,5 {
	{ command -label "Split"    -command struct_split_subface }
	{ command -label "Merge"    -command struct_merge }
	{ ignore command -label "Periodic" -command struct_periodic }
	{ ignore command -label "Create"   -command struct_create_subface }
	{ ignore command -label "Delete"   -command struct_delete_subface }
	{ ignore command -label "Modify"   -command struct_modify_subface }
    } "" data_available(struct) }
    
    {repair button "Repair" 2,6 edit_repair "" "" data_available(unstruct) }
}

set tool_phase_info(output) {
    {select    button "Select solver" 0,1 solution_select}
    {boco      button "Boundary conds"   0,2 geo_famboco_edit "" "" }
    {params    button "(no solver)"   0,3 famboco_edit_params}
    {input     button "(no solver)"   0,4 solution_input}
    {start     button "(no solver)"   0,5 solution_start}
    {visual3   menu "Visual3"       1,1 {
	{command -label "Run locally" -command solution_visual3}
        {command -label "Run remotely" -command "solution_visual3 \"\" 1"}
    }}
    {mesh_pro  button   "MESH_PRO"    1,4 "va_load_va mesh_pro" }
    
}

if [info exists env(MOVING_MESH)] {
    lappend tool_phase_info(output) {movemesh  button "Moving Mesh"   1,5 solution_movemesh}
}

if [info exists env(MOVING_MESH)] {
    if [info exists env(ICEM_CHADICE)] {
	lappend tool_phase_info(output) {rmi       button "CHADICE"       1,6 rmi_mainProc \
		"" enable_feature(ramm-ice)}
    } else {
	lappend tool_phase_info(output) {rmi       button "IC3M"          1,6 rmi_mainProc \
		"" enable_feature(ramm-ice)}
    }
} else {
    if [info exists env(ICEM_CHADICE)] {
	lappend tool_phase_info(output) {rmi       button "CHADICE"       1,5 rmi_mainProc \
		"" enable_feature(ramm-ice)}
    } else {
	lappend tool_phase_info(output) {rmi       button "IC3M"          1,5 rmi_mainProc \
		"" enable_feature(ramm-ice)}
    }
}

lappend  tool_phase_info(output) {cart3d    button "Cart3D"        1,2 cart3d_start}

after idle "set geo_command_mode surface"

help_define .v.top.panel2.file.open "" med/med-Open.html ""
help_define .v.top.panel2.file.new "" med/med ""
help_define .v.top.panel2.file.save "" med/med-Save.html ""
help_define .v.top.panel2.file.saveas "" med/med-Save-2.html ""
help_define .v.top.panel2.file.close "" med/med-Close.html ""
help_define .v.top.panel2.file.quit "" med/med-Quit.html ""
help_define .v.top.panel2.file.projectop "" med/med-Project.html ""
help_define .v.top.panel2.file.delete "" med/med ""
help_define .v.top.panel2.file.import "" med/med-Import.html ""
help_define .v.top.panel2.file.export "" med/med-Export.html ""
help_define .v.top.panel2.file.options "" med/med-Options.html ""
help_define .v.top.panel2.file.utility "" med/med-Utilitie.html ""
help_define .v.top.panel2.file.script "" med/med-Scriptin.html ""
help_define .v.top.panel2.file.anno "" med/med-Annotati.html ""
help_define .v.top.panel2.file.importmesh "" med/med-Import-2.html ""
help_define .v.top.panel2.file.partop "" med/med-DDN-2.html ""
help_define .v.top.panel2.geometry.cadif "" med/med-CAD.html ""
help_define .v.top.panel2.geometry.boco "" med/med-Boundary.html ""
help_define .v.top.panel2.geometry.repair "" med/med-Repair.html ""
help_define .v.top.panel2.geometry.convert "" med/med-Utilitie-2.html ""
help_define .v.top.panel2.geometry.cartfile "" med/med-Global.html ""
help_define .v.top.panel2.geometry.surface "" med/med-Surface.html ""
help_define .v.top.panel2.geometry.curve "" med/med-Curve.html ""
help_define .v.top.panel2.geometry.point "" med/med-Point.html ""
help_define .v.top.panel2.geometry.material "" med/med-Material.html ""
help_define .v.top.panel2.geometry.density "" med/med-Density.html ""
help_define .v.top.panel2.geometry.loop "" med/med-Loop.html ""
help_define .v.top.panel2.geometry.create "" med/med ""
help_define .v.top.panel2.geometry.delete "" med/med ""
help_define .v.top.panel2.geometry.modify "" med/med ""
help_define .v.top.panel2.geometry.meshparams "" med/med-Mesh.html ""
help_define .v.top.panel2.geometry.families "" med/med-Change-3.html ""
help_define .v.top.panel2.geometry.copymove "" med/med-Copy_Mov.html ""
help_define .v.top.panel2.geometry.ezcad "" med/med ""
help_define .v.top.panel2.mesher.hexa "" med/med-Meshing-2.html ""
help_define .v.top.panel2.mesher.tetra "" med/med-Meshing-2.html ""
help_define .v.top.panel2.mesher.global "" med/med-Meshing-2.html ""
help_define .v.top.panel2.mesher.prism "" med/med-Meshing-2.html ""
help_define .v.top.panel2.mesher.surf_mesh "" med/med-Meshing-2.html ""
help_define .v.top.panel2.mesher.autohex "" med/med-Meshing-2.html ""
help_define .v.top.panel2.mesher.mulcad "" med/med-Meshing-2.html ""
help_define .v.top.panel2.mesher.pcube "" med/med-Meshing-2.html ""
help_define .v.top.panel2.mesher.cart3d "" med/med-Meshing-2.html ""
help_define .v.top.panel2.edit.copymove "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.smooth "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.refine "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.coarsen "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.merge "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.consist "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.diag "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.uncouple "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.bandwidth "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.chtype "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.setfam "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.utilities "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.editnodes "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.editelements "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.editedges "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.editblocks "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.editsubface "" med/med-Edit-4.html ""
help_define .v.top.panel2.edit.repair "" med/med-Edit-4.html ""
help_define .v.top.panel2.output.select "" med/med-Select-2.html ""
help_define .v.top.panel2.output.boco "" med/med ""
help_define .v.top.panel2.output.params "" med/med ""
help_define .v.top.panel2.output.input "" med/med ""
help_define .v.top.panel2.output.start "" med/med ""
help_define .v.top.panel2.output.visual3 "" med/med-Visual3.html ""
help_define .v.top.panel2.output.mom3d "" med/med-Mom3d.html ""
help_define .v.top.panel2.output.rmi "" med/med-IC3M.html ""
help_define .v.top.panel2.output.yplus "" med/med ""

