# $Revision$ on $Date$
# The above revision line needs to be the first line for ttkrf files
# Copyright (c) 2006 Ansys Inc

#
#---------------------------------------------------------------------------------------------------
dataEntryDialog mszCurveDEZ "Curve Mesh Setup"
  exclusiveGroup mszCurveTypeGG "Curve Mesh Parameters" "Method" 3 DROPDOWN
	exclusiveGroupItem mszCurveTypeBasic "General"
	  entityChooser mszCurveMousePick "Select Curve(s)" curveList CURVE ANY
  	  textEntry mszCurveSz2 "Maximum size" emax NUM
	  textEntry mszCurveNum2 "Number of nodes" nmax NUM
	  textEntry mszCurveHgt2 "Height" ehgt NUM
	  textEntry mszCurveRat2 "Height ratio" hrat NUM
	  integerEntry mszCurveNlay "Num. of layers" nlay 0 100 1
	  integerEntry mszCurveWid2 "Tetra width" ewid 0 100 1
	  textEntry mszCurveMinSz2 "Min size limit" emin NUM
	  textEntry mszCurveDev2 "Max deviation" edev NUM
	  textEntry mszCurvePrismFactor "Prism height limit factor" prism_height_limit NUM
	  dropDownEntry curveParamPrismLaw "Prism growth law" PrismLawList prism_law FALSE READONLY
	  frame mszCurveBunchingFrm "Advanced Bunching"
	      dropDownEntry curveParamLaw "Bunching law" LawList law FALSE READONLY
	      textEntry curveParamSp1 "Spacing 1" h1 NUM
	      textEntry curveParamR1 "Ratio 1" r1 NUM
	      textEntry curveParamSp2 "Spacing 2" h2 NUM
	      textEntry curveParamR2 "Ratio 2" r2 NUM
	      textEntry curveParamL1 "Max space" lmax NUM
	      checkItem mszCurveDir "Curve direction" dirCurveFlag "aie_curve_show_directions"
	      textButton mszCurveDirReverse "Reverse direction" "aie_curve_reverse_crv"
	  frame END
	  checkItem mszCurveAdjust "Adjust attached curves" adjustFlag NULL
ifndef AI_ENV_CFX
	  checkItem mszRemesh "Remesh attached surfaces" remeshFlag NULL
endif
	exclusiveGroupItem END
	exclusiveGroupItem mszCurveTypeAdvanced "Dynamic" 
	      integerEntryIcon mszCurveSz "Maximum size" emax 0.0 10000 1.0 "aie_curve_mouse_dynamic emax"
	      integerEntryIcon mszCurveNum "Number of nodes" nmax 2 10000 1 "aie_curve_mouse_dynamic nmax"
	      integerEntryIcon mszCurveBRat "Bunching ratio" brat 1.0 10000 0.1 "aie_curve_mouse_dynamic brat"
	      dropDownEntry mszCurveBLaw "Bunching law" simpleLawList blaw FALSE READONLY
	      integerEntryIcon mszCurveHgt "Height" ehgt 0.0 10000 0.1 "aie_curve_mouse_dynamic ehgt"
	      integerEntryIcon mszCurveRat "Height ratio" hrat 0.0 10000 0.1 "aie_curve_mouse_dynamic hrat"
	      integerEntryIcon mszCurveWid "Width" ewid 0 100 1 "aie_curve_mouse_dynamic ewid"
	      integerEntryIcon mszCurveMinSz "Min size limit" emin 0.0 10000 0.1 "aie_curve_mouse_dynamic emin"
	      integerEntryIcon mszCurveDev "Max deviation" edev 0.0 10000 0.1 "aie_curve_mouse_dynamic edev"

      dialogSpace 1
      exclusiveGroup setSelectProperties "Curve Properties (Dynamic)" "Incr/Decr for" 2 DROPDOWN
      exclusiveGroupItem setSelectIncrDecr1 "Maximum Size"
          textEntry setSelectIncrDecr1v "Value" emax_incr NUM
          textButton setSelectIncrDecr1b "Apply" "aie_curve_incr_decr_properties emax"
      exclusiveGroupItem END
      exclusiveGroupItem setSelectIncrDecr2 "Number of Nodes"
          textEntry setSelectIncrDecr2v "Value" nmax_incr INT
          textButton setSelectIncrDecr2b "Apply" "aie_curve_incr_decr_properties nmax"
      exclusiveGroupItem END
      exclusiveGroupItem setSelectIncrDecr3 "Bunching Ratio"
          textEntry setSelectIncrDecr3v "Value" brat_incr NUM
          textButton setSelectIncrDecr3b "Apply" "aie_curve_incr_decr_properties brat"
      exclusiveGroupItem END
      exclusiveGroupItem setSelectIncrDecr4 "Height"
          textEntry setSelectIncrDecr4v "Value" ehgt_incr NUM
          textButton setSelectIncrDecr4b "Apply" "aie_curve_incr_decr_properties ehgt"
      exclusiveGroupItem END
      exclusiveGroupItem setSelectIncrDecr5 "Ratio"
          textEntry setSelectIncrDecr5v "Value" hrat_incr NUM
          textButton setSelectIncrDecr5b "Apply" "aie_curve_incr_decr_properties hrat"
      exclusiveGroupItem END
      exclusiveGroupItem setSelectIncrDecr6 "Width"
          textEntry setSelectIncrDecr6v "Value" ewid_incr NUM
          textButton setSelectIncrDecr6b "Apply" "aie_curve_incr_decr_properties ewid"
      exclusiveGroupItem END
      exclusiveGroupItem setSelectIncrDecr7 "Minimum Size"
          textEntry setSelectIncrDecr7v "Value" emin_incr NUM
          textButton setSelectIncrDecr7b "Apply" "aie_curve_incr_decr_properties emin"
      exclusiveGroupItem END
      exclusiveGroupItem setSelectIncrDecr8 "Max Deviation"
          textEntry setSelectIncrDecr8v "Value" edev_incr NUM
          textButton setSelectIncrDecr8b "Apply" "aie_curve_incr_decr_properties edev"
      exclusiveGroupItem END
  exclusiveGroup END
	      
	exclusiveGroupItem END	
        exclusiveGroupItem mszCurveTypeCopy "Copy Parameters" 
            frame mszCurveTypeCopyFrom "From Curve"
                entityChooser mszCurveCopyPickFrom "Curve" copyCurveFrom CURVE 1 
  	        textEntry mszCurveSzFrom "Maximum size" from_emax READONLY
	        textEntry mszCurveNumFrom "Number of nodes" from_nmax READONLY
	        textEntry mszCurveHgtFrom "Height" from_ehgt READONLY
	        textEntry mszCurveRatFrom "Ratio" from_hrat READONLY
	        textEntry mszCurveWidFrom "Width" from_ewid READONLY
	        textEntry mszCurveMinSzFrom "Min size limit" from_emin READONLY
	        textEntry mszCurveDevFrom "Max deviation" from_edev READONLY 
	        textEntry mszCurveLawFrom "Bunching law" from_law READONLY
	        textEntry2 mszCurveSpacingFrom "Spacing 1 / Spacing 2" from_h1 READONLY from_h2 READONLY
	        textEntry2 mszCurveRatioFrom "Ratio 1 / Ratio 2" from_r1 READONLY from_r2 READONLY
	        textEntry mszCurveMaxSFrom "Max space" from_lmax READONLY
            frame END
            frame mszCurveTypeCopyToFrm "To Selected Curve(s)"
                entityChooser mszCurveCopyPickTo "Curve(s)" copyCurveTo CURVE ANY
	    frame END
            dialogSpace 1
            radioGroup mszCurveCopyType "Copy" 3 copy_absolute 0 NULL
                radioItem mszCurveCopyRel "Relative" 0
                radioItem mszCurveCopyAbs "Absolute" 1
            radioGroup END
        exclusiveGroupItem END
  exclusiveGroup END
  textButton mszCurveDone "Blank curves with params" "aie_curve_params_blank"
dataEntryDialog END
#---------------------------------------------------------------------------------------------------
dataEntryDialog mszSurfDEZ "Surface Mesh Setup"

  entityChooser mszSurfPick "Surface(s)" surfList SURF ANY
  dialogSpace 1

  textEntry mszSurfSz     "Maximum size" emax NUM
  textEntry mszSurfHgt    "Height" ehgt NUM
  textEntry mszSurfHRat   "Height ratio" hrat NUM
ifndef AI_ENV_LSTC
  integerEntry mszSurfNlay "Num. of layers" nlay 0 100 1
  integerEntry mszSurfWid "Tetra width" ewid 0 100 1
  textEntry mszSurfRat    "Tetra size ratio" erat NUM
  textEntry mszSurfMinSz "Min size limit" emin NUM
  textEntry mszSurfDev   "Max deviation" edev NUM
  textEntry mszSurfPrismFactor "Prism height limit factor" prism_height_limit NUM
  dropDownEntry mszSurfPrismLaw "Prism growth law" PrismLawList prism_law FALSE READONLY
  dropDownEntry mszSurfType "Mesh type" surfElemTypeList etyp2 FALSE READONLY
  dropDownEntry mszSurfMethod "Mesh method" surfElemMethodList emethod2 FALSE READONLY
ifndef AI_ENV_CFX
  checkItem mszSurfRemesh "Remesh selected surfaces" remeshSurfFlag NULL
endif
  textButton mszSurfDone "Blank surfaces with params" "aie_surface_params_blank"
#  checkItem mszSurfIntWall   "Internal Wall" intwall NULL
#  checkItem mszSurfSplitWall "Split Wall"    splitwall NULL
endif

dataEntryDialog END
#---------------------------------------------------------------------------------------------------
dataEntryDialog mszBodyDEZ "Body Mesh Setup"

  entityChooser mszBodyPick "Body(s)" bodyList BODY ANY
  dialogSpace 1

  textEntry mszBodySz    "Maximum size" size NUM
  textEntry mszBodyHgt    "Height" height NUM
  textEntry mszBodyRat    "Ratio" erat NUM
  textEntry mszBodyMinSz "Min size limit" minsize NUM
  textEntry mszBodyDev   "Max deviation" dev NUM

dataEntryDialog END

#---------------------------------------------------------------------------------------------------
dataEntryDialog mszGlobalDEZ "Global Mesh Setup"
    exclusiveGroup mszGlobalTypeGG "Global Mesh Parameters" "Method" 3 ICON
	    exclusiveGroupItem mxzGlobalTypeGeneral "Global Mesh Size" M_GlobalMesh$icon_size2.gif
	        frame mszGlobalMeshSizeFrame "Global Mesh Size"
	            frame mszGlobalSzFrm "Global Element Scale Factor"
	                textEntry mszGlobScale "Scale factor" globalSF NUM
	                checkItem mszGlobalScaleChk "Display" dspScaleFlag "aie_show_params ref {}"
	            frame END
	            frame mszGlobalSeedFrm "Global Element Seed Size"
	                textEntry mszSeedSz "Max element" maxSz NUM
	                checkItem mszGlobalSeedChk "Display" dspSeedFlag "aie_show_params max {}"
	            frame END
	            frame mszGlobalNatFrm "Curvature/Proximity Based Refinement"
	                greyGroup natSzGG "Enabled"
	                    greyGroupItem natSzChkGI Foo
	    	                textEntry mszGlobalMnSz "Min size limit" minSize NUM
	                        checkItem mszGlobalNatChk "Display" dspNatFlag "aie_show_params nat {}"
		                    integerEntry mszGapCells "Elements in gap" gapNum 1 100 1
	    	                integerEntry mszRefinement "Refinement" gnatref 1 500 1
		                    checkItem ignoreWallChk "Ignore Wall Thickness" igwall NULL
	                greyGroupItem END
	            greyGroup END
	        frame END
        frame END
    exclusiveGroupItem END
    dialogSpace 1
        exclusiveGroupItem mszGlobalTypeShell "Shell Meshing Parameters" M_AMP_Shell$icon_size2.gif
            frame mszGlobalTypeShellFrame "Shell Meshing Parameters"
            dropDownEntry mszShellType "Mesh type" meshElemTypeList mesh_type2 FALSE READONLY
            dropDownEntry mszShellMethod "Mesh method" meshElemMethodList mesh_method2 FALSE READONLY
            dialogSpace 1
            exclusiveGroup mszShellAdvanced "Shell Meshing Parameters" "Section" 2 DROPDOWN
                exclusiveGroupItem mszShellAdvanced2 "Autoblock"
                    frame mszShellGeneral1 "General"
                        textEntry mszShellIgnoreFeature1 "Ignore size" ign_size NUM
                    frame END
                   frame mszMapParams "Surface Blocking Options"
                    dropDownEntry mszShellMapped "Method" mappedMethodsList mapped_method2 FALSE READONLY
                    checkItem mszShellMerge "Merge mapped blocks" merge_surfs NULL
                   frame END
                exclusiveGroupItem END
                exclusiveGroupItem mszShellAdvanced3 "Patch Dependent"
                    frame mszShellGeneral2 "General"
                        textEntry mszShellIgnoreFeature2 "Ignore size" ign_size NUM
                        checkItem mszShellBunch "Respect line elements" bunch_respect NULL
                        checkItem mszShellQuadratic "Quadratic elements" quadratic NULL
                    frame END
                    frame mszShellBoundary "Boundary"
                        checkItem mszShellProtect "Protect given line elements" protect_line NULL
                        checkItem mszShellSmoothBoundary "Smooth boundaries" bound_smooth NULL
                        checkItem mszShellFreeBunch "Allow free bunching" free_bunch NULL
                        dropDownEntry mszShellSimpleOffset "Offset type" OffsetList simple_offset2 FALSE
                    frame END
                    frame mszShellInterior "Interior"
                        scaleBar mszShellBlock "Force mapping" block_mapping 0 1 0.05 "aie_global_scale_mapping" 0 160 1
                        scaleBar mszShellAdjustNodesMax "Max. nodes adjustment" adjust_nodes_max 0.0 100.0 1.0 "aie_global_scale_adjust" 0 160 0 "%"
                        checkItem mszShellProject "Project to surfaces" proj_surf aie_global_quad_trace_proj_surf
                        checkItem mszShellSurfaceSizes "Adapt mesh interior" surf_sizes NULL
                        checkItem mszShellSurfaceNormals "Orient to surface normals" snorm NULL
ifdef QUAD_DEBUG
                        textEntry mszShellMaxDev "Max. deviation" max_dev NUM
endif
                    frame END
                    frame mszShellRepair "Repair"
                        scaleBar mszShellHarder "Try harder" try_harder 0 3 1 "aie_global_scale_try_harder" 0 160 1
                        scaleBar  mszShellImprovement "Improvement level" impr_level 0 3 1 "aie_global_scale_impr_level" 0 160 1
                        checkItem mszShellDormant "Respect dormant boundaries" mesh_dormant NULL
                        checkItem mszShellSmoothDormant "Relax dormant boundaries for smoothing" smooth_dormant NULL
                    frame END
                exclusiveGroupItem END
                exclusiveGroupItem mszShellAdvanced4 "Patch Independent"
ifdef AI_ENV_BETA
                    frame mszShellGeneral4 "General"
                        checkItem mszShellBunch4 "Respect line elements" bunch_respect NULL
                    frame END
endif
                exclusiveGroupItem END
                exclusiveGroupItem mszShellAdvanced5 "Shrinkwrap"
                    integerEntry mszShrinkSmooth "Num. of smooth iterations" shrinkwrap_nsmooth 1 10 1
                    textEntry mszShrinkProj "Surface projection factor" shrinkwrap_projfactor NUM
                exclusiveGroupItem END
ifdef AI_ENV_BETA
                exclusiveGroupItem mszShellAdvanced6 "Delaunay"
                    frame mszShellGeneral3 "General"
                        textEntry mszShellIgnoreFeature3 "Ignore size" ign_size NUM
                    frame END
                    dialogSpace 1
ifdef QUAD_DEBUG
                    textEntry mszShellMaxArea "Maximum element area" max_area NUM
endif
                    textEntry mszShellMaxLength "Maximum edge length" max_length NUM
ifdef QUAD_DEBUG
                    textEntry mszShellMinAngle "Minimum angle" min_angle NUM
                    textEntry mszShellMaxNodes "Maximum number of nodes" max_nodes NUM
                    textEntry mszShellMaxElements "Maximum number of elements" max_elements NUM
endif
                exclusiveGroupItem END
endif
            exclusiveGroup END
        frame END
        exclusiveGroupItem END

	exclusiveGroupItem mxzGlobalTypeTetra "Volume Meshing Parameters" M_AMP_Volume$icon_size2.gif
	    exclusiveGroup mszGlobalVolumeTypeEG "Volume Meshing Parameters" "Mesh Type" 3 DROPDOWN
		exclusiveGroupItem mxzGlobalMeshTet "Tetra/Mixed"
		    exclusiveGroup mszGlobalTetType "Tetra/Mixed Meshing" "Mesh Method" 4 DROPDOWN
			exclusiveGroupItem mxzGlobalTypeTetOct "Robust (Octree)"
ifndef AI_ENV_ACADEMIC
			    checkItem mszGlobalAsBatch "Run as batch process" tetra_batch NULL
endif
			    checkItem mszGlobalTranChk "Fast transition" fastTranFlag NULL
			    textEntry mszEdgeCriterion "Edge criterion" gedgec NUM
			    textButton mszThincuts "Define thin cuts" "aie_define_thincuts"

			    greyGroup mszTetSmoothGG1 "Smooth mesh" tetra_smooth
				greyGroupItem mszTetSOpts "Smoother options"
ifndef AI_ENV_IN_WB2
				    integerEntry mszTetVSI "Smooth Iterations" tetra_smooth_niter 1 20 1
				    textEntry mszTetSAR "Min quality" tetra_smooth_aspect NUM
endif
ifdef AI_ENV_IN_WB2
				    integerEntry mszTetVSI "Smooth Iterations (Octree)" tetra_smooth_niter 1 20 1
				    textEntry mszTetSAR "Min quality (Octree)" tetra_smooth_aspect NUM
endif

				greyGroupItem END
			    greyGroup END

			    greyGroup mszTetCrsGG1 "Coarsen mesh" tetra_coarsen
				greyGroupItem mszTetCOpts "Coarsener options"
				    integerEntry mszTetCNumIter "Coarsen Iterations" tetra_coarsen_niter 1 5 1
				    textEntry mszTetCAR "Worst aspect ratio" tetra_coarsen_aspect NUM
				greyGroupItem END
			    greyGroup END

			    checkItem mszTetFixNMChk "Fix Non-manifold" tetra_fix_nmanifold NULL
			    checkItem mszTetCloseGapsChk "Close Gaps" tetra_close_gaps NULL
			    checkItem mszFixHoles "Fix Holes" tetra_fix_holes NULL
			    checkItem meshTetLCS "Use active local coordinate system" tetra_use_active_lcs NULL
ifdef TETRA_ADVANCED_OPTS
		            checkItem mszTetRunCutterChk "Run Cutter" tetra_run_cutter NULL
		            checkItem mszTetSaveTrisChk "Save All Triangles" tetra_save_tris NULL
			    checkItem mszTetAutoOrphanChk "Auto Orphan" tetra_auto_orphan NULL
		            checkItem mszTetParVerboseChk "Parallel Verbose" tetra_parallel_verbose NULL
endif
			exclusiveGroupItem END
			exclusiveGroupItem mxzGlobalTypeTetDel "Quick (Delaunay)"
			    exclusiveGroup meshUseAdvDelaunay222 "Delaunay Scheme" "Select" 2 RADIO tetra_run_adv_delaunay
				    exclusiveGroupItem meshUseAdvDelaunay12 "Standard"
				    exclusiveGroupItem END
				    exclusiveGroupItem meshUseAdvDelaunay22 "TGlib"
				        checkItem meshUseAdvDelaunayAFT2 "Use AF" tetra_tg_adv_delaunay_af NULL
				    exclusiveGroupItem END
                exclusiveGroup END
                dialogSpace 1
			    textEntry meshDelSF "Memory scaling factor" tetra_memory_scale NUM
			    textEntry mszDelExpand "Spacing Scaling Factor" tetra_spacing_factor NUM
			    checkItem meshDelRemeshHoles "Fill holes in volume mesh" tetra_fillholes NULL
			    checkItem meshDelRemeshAD "Mesh internal domains" tetra_meshall NULL
			    checkItem meshDelRemeshFF "Flood fill after completion" tetra_floodfill NULL
			    checkItem meshDelRemeshMV "Verbose output" tetra_verbose NULL
			    greyGroup meshDelRemeshSmoothGG1 "Smooth mesh" tetra_smooth2
				greyGroupItem meshDelRemeshSOpts "Smoother options"
ifndef AI_ENV_IN_WB2
				    integerEntry meshDelRemeshVSI "Smooth Iterations" tetra_smooth_niter2 1 20 1
				    textEntry meshDelRemeshSAR "Min quality" tetra_smooth_aspect2 NUM
endif
ifdef AI_ENV_IN_WB2
				    integerEntry meshDelRemeshVSI "Smooth Iterations (Delaunay)" tetra_smooth_niter2 1 20 1
				    textEntry meshDelRemeshSAR "Min quality (Delaunay)" tetra_smooth_aspect2 NUM
endif
				greyGroupItem END
			    greyGroup END
			exclusiveGroupItem END
			exclusiveGroupItem mxzGlobalTypeTetAdv "Smooth (Advancing Front)"
			    textEntry mszAdvExpand "Expansion Factor" tetra_expansion_factor NUM
			    checkItem mszAdvProximity "Do Proximity Checking" tetra_proximity_check NULL
#		            checkItem meshAdvRemeshHoles "Fill holes in volume mesh" tetra_fillholes NULL
#	    	            checkItem meshAdvRemeshAD "Mesh all domains" tetra_meshall NULL
			    checkItem meshAdvRemeshFF "Flood fill after completion" tetra_floodfill NULL
			    checkItem meshAdvRemeshMV "Verbose output" tetra_verbose NULL
			exclusiveGroupItem END
			exclusiveGroupItem mxzGlobalTypeTetTGrid "Fluent Meshing"
			    textEntry mszTGridExpand "Expansion Factor" tetra_expansion_factor NUM
			    #checkItem meshTGridRemeshBM "Force Background Mesh" tetra_bgmesh NULL
			    #checkItem meshTGridRemeshAF "Use AFT Scheme" tetra_tgrid_af NULL
			    #checkItem meshTGridRemeshAD "Mesh all domains" tetra_meshall NULL
			    checkItem meshTGridRemeshFF "Flood fill after completion" tetra_floodfill NULL
			    checkItem meshTGridRemeshMV "Verbose output" tetra_verbose NULL
			exclusiveGroupItem END
		    exclusiveGroup END

		exclusiveGroupItem END

		exclusiveGroupItem mxzGlobalMeshHybrid "Hexa-Dominant"
		    checkItem meshHDRemeshCenter "Remesh Center" hybrid_remeshCenter NULL
		exclusiveGroupItem END

		exclusiveGroupItem mxzGlobalMeshCart "Cartesian"
		    exclusiveGroup mszGlobalMeshCartEG "Cartesian Meshing" "Mesh Method" 2 DROPDOWN
			exclusiveGroupItem mxzGlobalCartBF "Body-Fitted"
			    textEntry meshCartProj "Projection Factor" cart_proj_factor NUM
			    checkItem meshCartSplit "Split Degenerate"  cart_split_degen NULL
			    checkItem meshCartPyras "Create Pyramids" cart_create_pyramids NULL
			    dropDownEntry meshCartTratio "Refinement Type" cartRefType cart_tratio FALSE READONLY
			    textEntry meshCartStretch "Aspect Ratio" cart_aspect_ratio TEXT
ifdef AI_ENV_BETA
			    checkItem meshCartConformal "Resolve refinement"  cart_conformal NULL
			    integerEntry mszCartUntangle "Untangling passes" cart_nuntangle 0 20 1
			    greyGroup BFCartMaxRefGG "Override maximum refinement" override_maxref
				greyGroupItem BFCartMaxRefOpts "Max. Refinement"
				    integerEntry BFCartMaxRef "Max. Refinement" cart_maxref -1 20 -1
				greyGroupItem END
			    greyGroup END
endif
			    checkItem meshCartInfProj "Project Inflated Faces"  cart_infproj NULL			   

			    greyGroup meshCartBBoxGG "Outer Bounding Box" cart_user_bbox
			    	greyGroupItem meshCartBBoxGI "Outer Bounding Box"
			 	    entityChooser meshCartBBox "Min-Max Coordinates" cart_bbox POINTORXYZ 2
			    	greyGroupItem END
			    greyGroup END
			    checkItem meshCartLCS "Use active local coordinate system" cart_csys NULL
			exclusiveGroupItem END
ifdef AI_ENV_BETA
			exclusiveGroupItem mxzGlobalCartGlobal "Staircase (Global)"
			    exclusiveGroup mszGlobalCartRefEG "Refinement" "Type" 2 DROPDOWN
				exclusiveGroupItem mxzGlobalCartRefUns "Unstructured"
				    integerEntry globalMeshBuff "Num. of Layers" cart_nlayers 0 5 1
				    checkItem globalMeshUniform "Refine all" cart_refall NULL
				exclusiveGroupItem END

				exclusiveGroupItem mxzGlobalCartRefAll "Pure Cartesian"
				    textEntry cartNStart "Starting Mesh Divs." cart_nStart TEXT

				    frame mxzGlobalCartSym "Symmetry"
					checkItem globalSymX "Enforce Symmetry in X" cart_symx NULL
					checkItem globalSymY "Enforce Symmetry in Y" cart_symy NULL
					checkItem globalSymZ "Enforce Symmetry in Z" cart_symz NULL
				    frame END

				    greyGroup globalVOFGG "Compute Volume Fraction" cart_computevof
					greyGroupItem globalVOF "Compute Volume fraction"
					    textEntry globalVOFCutoff "Cut-off fraction" cart_volfrac NUM
					greyGroupItem END
				    greyGroup END
				    checkItem globalFaces "Create Faces" cart_faces NULL
				    checkItem globalEdges "Create Edges" cart_edges NULL
				exclusiveGroupItem END
			    exclusiveGroup END

			    greyGroup globalCartMaxRefGG "Override maximum refinement" override_maxref
				greyGroupItem globalCartMaxRefOpts "Max. Refinement"
				    integerEntry globalCartMaxRef "Max. Refinement" cart_maxref -1 20 -1
				greyGroupItem END
			    greyGroup END
			exclusiveGroupItem END
endif
			exclusiveGroupItem mxzGlobalCartHexaCore "Hexa-Core"
			    checkItem meshCartHCHoles "Fill holes in volume mesh" cart_fillholes NULL
			    dropDownEntry meshCartHCTratio "Refinement Type" cartRefType cart_tratio FALSE READONLY
ifdef AI_ENV_BETA
			    checkItem meshCartHCConformal "Resolve refinement"  cart_conformal NULL
endif	
			    greyGroup meshCartHCBBoxGG "Outer Bounding Box" cart_user_bbox
			    	greyGroupItem meshCartHCBBoxGI "Outer Bounding Box"
			 	    entityChooser meshCartHCBBox "Min-Max Coordinates" cart_bbox POINTORXYZ 2
			    	greyGroupItem END
			    greyGroup END
			    checkItem meshHexa-CoreLCS "Use active local coordinate system" cart_csys NULL
			exclusiveGroupItem END
			
		    exclusiveGroup END

		exclusiveGroupItem END
	    exclusiveGroup END

	exclusiveGroupItem END

	exclusiveGroupItem mxzGlobalTypePrism "Prism Meshing Parameters" M_AMP_Prism$icon_size2.gif
	    frame mszGobalPrismOptFrm "Prism Meshing Parameters"
		dropDownEntry meshPrismLaw "Growth law" GrowthLawList law FALSE
		textEntry meshPrismInitHt "Initial height" height NUM
		textEntry meshPrismRatio "Height ratio" ratio NUM
		integerEntry meshPrismNlay "Number of layers" layers 1 500 1
		textEntry meshPrismTotHt "Total height" total_height NUM
		textButton meshPrismCompute "Compute params" "aie_prism_compute_params"
	    frame END

#	    textButton meshPrismSelParts "Select parts for prism layers" "aie_edit_prism_parts"

	    checkItem meshPrismFixtMarch "Fix marching direction" init_dir_from_prev NULL
	    textEntry meshPrismQuality "Min prism quality" min_prism_quality NUM
	    textEntry meshPrismFillet "Fillet ratio" fillet NUM
	    textEntry meshPrismMaxAngle "Max prism angle" max_prism_angle NUM
	    textEntry meshPrismHtOverBase "Max height over base" max_aspect_ratio  NUM
	    textEntry meshPrismHtLimit "Prism height limit factor" prism_height_limit NUM
	    textEntry meshPrismRatioMultiplier "Ratio multiplier" ratio_multiplier NUM
	    frame mszGlobalPrismExtrudeOpts "Prism element part controls"
		entityChooser meshPrismVolPart "New volume part" new_volume part_3d 1
		entityChooser meshPrismSidePart "Side part" side_family part_2d 1
		entityChooser meshPrismTopPart "Top part" top_family part_2d 1
		checkItem meshPrismExtOrfn "Extrude into orphan region" into_orphan NULL
	    frame END
	    frame meshPrismOpts1 "Smoothing Options"
		integerEntry meshPrismNTriSmooth1 "Number of surface smoothing steps" n_triangle_smoothing_steps 0 100 1 5
		dropDownEntry meshPrismTriQuality1 "Triangle quality type" TriQualityList triangle_quality FALSE
        textEntry meshPrismOrtho "Ortho weight" ortho_weight NUM
		integerEntry meshPrismNTetSmooth1 "Number of volume smoothing steps" n_tetra_smoothing_steps 0 100 1 10
		integerEntry meshPrismNsmooth1 "Max directional smoothing steps" smoothing_steps 1 100 1 12
		integerEntry meshPrismFirstLayNSmooth1 "First layer smoothing steps" first_layer_smoothing_steps 1 100 1
	    frame END

        frame meshPrismOpts2 "Additional Pre Inflation (Fluent Meshing) settings"
            checkItem meshPrsimTGridInflationFFirst "Fix First Layer" tgrid_fix_first_layer NULL
            integerEntry meshPrismTGridInflationNum "Number of Orthogonal Layers" tgrid_n_ortho_layers 0 100 1
            textEntry meshPrismTGridInflationGapF "Gap Factor" tgrid_gap_factor NUM
            checkItem meshPrismTGridEnhanceNormComp "Enhance Normal Computation" tgrid_enhance_norm_comp NULL
            checkItem meshPrismTGridEnhanceOffsetComp "Enhance Offset Computation" tgrid_enhance_offset_comp NULL
            dropDownEntry meshPrismPrTGridImprovePrismQuality "Smoothing Level" TgridSmoothingLevelList tgrid_smoothing_level FALSE
            textEntry meshPrismTGridMaxCapSkew "Max Allowable Cap Skewness" tgrid_max_cap_skew NUM
            textEntry meshPrismTGridMaxCellSkew "Max Allowable Cell Skewness" tgrid_max_cell_skew NUM
            textEntry meshPrismTGridLastLayerAspect "Min Last Layer Aspect Ratio" tgrid_last_layer_aspect NUM
        frame END

	    textButton meshPrismExtraParams "Advanced Prism Meshing Parameters" aie_prism_extra_params
	    textButton meshPrismParamsFile "Read a Prism Parameters File" aie_mesh_prism_params
	exclusiveGroupItem END
#    entityChooser mszGlobalSplitWalls "Split walls" splitWalls PART 1
	exclusiveGroupItem mxzGlobalTypePeriodicity "Set up Periodicity" M_GlobalPeriodic$icon_size2.gif
	    frame mxzGlobalTypePeriodicityFrame "Set up Periodicity"
	    greyGroup DefineperiodicGG "Define periodicity"
		greyGroupItem perGroup Foo
		    exclusiveGroup periodicTypeEG "Periodicity" "Type" 1 RADIO
			exclusiveGroupItem  periodicTypeRot "Rotational periodic"
			    dialogSpace 1
				exclusiveGroup periodicTypeRotM "Rotational axis" "Method" 5 DROPDOWN
					exclusiveGroupItem periodicTypeRot2  "User defined by angle"
					    entityChooser perTypeRotBase "Base" base POINTORXYZ 1
					    textEntry perTypeRotAxis "Axis" axis TEXT
					    textEntry perTypeRotAngle2 "Angle" angle NUM
				    exclusiveGroupItem END
					exclusiveGroupItem periodicTypeRot3  "User defined by sectors"
					    entityChooser perTypeRotBase3 "Base" base POINTORXYZ 1
					    textEntry perTypeRotAxis2 "Axis" axis TEXT
					    textEntry perTypeNumberSec "Sectors" num_sectors NUM
				    exclusiveGroupItem END
				    exclusiveGroupItem periodicTypeRot1 "Vector"
					entityChooser periodicTypeRotPick "2 points" VecList  POINTORXYZ 2
					textEntry perTypeRotAngle "Angle" angle NUM
				    exclusiveGroupItem END
				exclusiveGroup END
			exclusiveGroupItem END
			exclusiveGroupItem  periodicTypeTrans "Translational periodic"
			    textEntry perTypeTransOff "Offset" axis TEXT
			exclusiveGroupItem END
			textButton perConvertFromLCStoGlobal "Convert coordinates to global coordinates" "aie_global_periodic_convert"
		    exclusiveGroup END
		greyGroupItem END
	  greyGroup END
	  frame END
	exclusiveGroupItem END
  exclusiveGroup END
dataEntryDialog END

dataEntryDialog createDensityDEZ "Create Density"
  textEntry createDensityName "Name"  name TEXT
  textEntry createDensitySz   "Size"  emax NUM
  textEntry createDensityRat  "Ratio" erat NUM
  textEntry createDensityWid  "Width" ewid NUM
  dialogSpace 1
  exclusiveGroup createDensityTypeEG "Density Location" "From" 2 RADIO
    exclusiveGroupItem createDensityPoints "Points"
      entityChooser createDensityPointPts "Points" ptlist POINTORXYZ ANY
    exclusiveGroupItem END
    exclusiveGroupItem createDensityEntity "Entity bounds"
       entityChooser createDensityEntityPick "Entities" entityList GEOMETRY ANY
    exclusiveGroupItem END
  exclusiveGroup END
dataEntryDialog END

dataEntryDialog modifyDensityDEZ "Modify Density"
  entityChooser modifyDensityPick "Density" densityList DENSITY ANY
  textEntry modifyDensitySz  "Size"  emax NUM
  textEntry modifyDensityRat "Ratio" erat NUM
  textEntry modifyDensityWid "Width" ewid NUM
  dialogSpace 1
  exclusiveGroup modifyDensityLoc "Density Location" "Method" 1 DROPDOWN
#    exclusiveGroupItem modifyDensityFixed "Fix Location"
#    exclusiveGroupItem END
#    exclusiveGroupItem modifyDensityScreen "Screen Move"
#    exclusiveGroupItem END
    exclusiveGroupItem modifyDensityMove "Modify Location"
    exclusiveGroupItem END
    exclusiveGroupItem modifyDensityAdd "Add Location"
    exclusiveGroupItem END
    exclusiveGroupItem modifyDensityDelete "Delete Location"
    exclusiveGroupItem END
  exclusiveGroup END
dataEntryDialog END

dataEntryDialog deleteDensityDEZ "Delete Density"
  entityChooser deleteDensityPick "Density" densityList DENSITY ANY
dataEntryDialog END

#--------------------------------------------------------------------------

ifdef NOT_DEF

# this is for later -Wayne

dataEntryDialog meshPartOptionsDEZ "Mesh Options for Parts"
  dropDownEntry mpoName "Part" PartList part FALSE
  radioGroup mpoWallRG "Wall type" 2 walltype 0 DummyProc
    radioItem mpoWallNormal "Regular wall" "regular"
    radioItem mpoWallInternal "Internal baffle" "internal"
    radioItem mpoWallSplit "Split faces" "split1"
    radioItem mpoWallSplit2 "Thermal shell" "split2"
  radioGroup END
dataEntryDialog END

endif

#--------------------------------------------------------------------------

dataEntryDialog createNodesDEZ "Create Nodes"
  textEntry createNodesName "Name" name TEXT
  dialogSpace 1

  radioGroup createNodesRG "Method" 3 createNodesMethod 1 createNodesRGProc
    radioItem createNodesXYZBut "XYZ" "xyz"
    radioItem createNodesScreenBut "Screen" "screen"
    radioItem createNodesEndPBut "End point" "end"
  radioGroup END
  frame createNodesXYZ "XYZ Coordinates"
     textEntry createNodesX "X" x NUM
     textEntry createNodesY "Y" y NUM
     textEntry createNodesZ "Z" z NUM
  frame END
  frame createNodesScreen "Select on Screen"
     entityChooser createNodesScreenWdgt "Location" nodeXYZList POINTORXYZ ANY
  frame END
  frame createNodesEndPoint "Select End Point"
    entityChooser createNodesEndPick "End point(s)" epList ENDPOINT ANY
  frame END
dataEntryDialog END

#---------------------------------------------------------------------------------------------------

dataEntryDialog createElemsDEZ "Create Elements"
    dropDownEntry createElemsName "Part" PartList part FALSE
    dialogSpace 1
    exclusiveGroup createElemsRG "Element Topology" "Element" -4 ICON
       exclusiveGroupItem createElemsPointBut "Node (Point Element)" E_CreateElemNode$icon_size2.gif
           exclusiveGroup createElemsMethod1 "Selection Method" "Method" 1 DROPDOWN PickMethod
               exclusiveGroupItem createElemsFromNodes1 "From nodes"
	           entityChooser createElemsNodesPick1 "Select" nodeList NODE ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromPoints1 "From points"
	           entityChooser createElemsPointsPick1 "Select" pointList POINT ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromScreen1 "From screen"
	           entityChooser createElemsScreenPick1 "Location" pointList POINTORXYZ ANY
    	       exclusiveGroupItem END
           exclusiveGroup END
#          checkItem createElemsAuto1 "Automatic element creation" createAuto aie_trace_create_elems_automatically

       exclusiveGroupItem END
       exclusiveGroupItem createElemsLineBut "Bar (Line Element)" E_CreateElemLine$icon_size2.gif
           exclusiveGroup createElemsMethod2 "Selection Method" "Method" 1 DROPDOWN PickMethod
               exclusiveGroupItem createElemsFromNodes2 "From nodes"
	           entityChooser createElemsNodesPick2 "Select" nodeList NODE ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromPoints2 "From points"
	           entityChooser createElemsPointsPick2 "Select" pointList POINT ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromScreen2 "From screen"
	           entityChooser createElemsScreenPick2 "Location" pointList POINTORXYZ ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromElems "From elements"
	           entityChooser createElemsElemsPick "Select" elemList ELEM ANY
		   checkItem createElemsElemsInh "Inherit parts" inherit_part NULL
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromEdges "From edges"
	           entityChooser createElemsEdgePick "Select" edgeList EDGE ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromCurves "From curves"
	           entityChooser createElemsCurvePick "Select" curveList CURVE ANY
    	       exclusiveGroupItem END
           exclusiveGroup END
           checkItem createElemsAuto2 "Automatic element creation" createAuto aie_trace_create_elems_automatically

       exclusiveGroupItem END
       exclusiveGroupItem createElemsTriBut "Tri" E_CreateElemTri$icon_size2.gif
           exclusiveGroup createElemsMethod3 "Selection Method" "Method" 1 DROPDOWN PickMethod
               exclusiveGroupItem createElemsFromNodes3 "From nodes"
	           entityChooser createElemsNodesPick3 "Select" nodeList NODE ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromPoints3 "From points"
	           entityChooser createElemsPointsPick3 "Select" pointList POINT ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromScreen3 "From screen"
	           entityChooser createElemsScreenPick3 "Location" pointList POINTORXYZ ANY
    	       exclusiveGroupItem END
           exclusiveGroup END

           checkItem createElemsConsistent "Make volume consistent" makeConsistent NULL
           checkItem createElemsAuto3 "Automatic element creation" createAuto aie_trace_create_elems_automatically
       exclusiveGroupItem END
       exclusiveGroupItem createElemsQuadBut "Quad" E_CreateElemQuad$icon_size2.gif
           exclusiveGroup createElemsMethod4 "Selection Method" "Method" 1 DROPDOWN PickMethod
               exclusiveGroupItem createElemsFromNodes4 "From nodes"
	           entityChooser createElemsNodesPick4 "Select" nodeList NODE ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromPoints4 "From points"
	           entityChooser createElemsPointsPick4 "Select" pointList POINT ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromScreen4 "From screen"
	           entityChooser createElemsScreenPick4 "Location" pointList POINTORXYZ ANY
    	       exclusiveGroupItem END
           exclusiveGroup END

           checkItem createElemsConsistent2 "Make volume consistent" makeConsistent NULL
           checkItem createElemsDistrAuto "Automatic vertex distribution" sortAuto NULL
           checkItem createElemsAuto4 "Automatic element creation" createAuto aie_trace_create_elems_automatically
       exclusiveGroupItem END
       exclusiveGroupItem createElemsTetBut "Tet" E_CreateElemTet$icon_size2.gif
           exclusiveGroup createElemsMethod5 "Selection Method" "Method" 1 DROPDOWN PickMethod
               exclusiveGroupItem createElemsFromNodes5 "From nodes"
	           entityChooser createElemsNodesPick5 "Select" nodeList NODE ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromPoints5 "From points"
	           entityChooser createElemsPointsPick5 "Select" pointList POINT ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromScreen5 "From screen"
	           entityChooser createElemsScreenPick5 "Location" pointList POINTORXYZ ANY
    	       exclusiveGroupItem END
           exclusiveGroup END
           checkItem createElemsAuto5 "Automatic element creation" createAuto aie_trace_create_elems_automatically

       exclusiveGroupItem END
       exclusiveGroupItem createElemsWedgeBut "Prism" E_CreateElemPrism$icon_size2.gif
           exclusiveGroup createElemsMethod6 "Selection Method" "Method" 1 DROPDOWN PickMethod
               exclusiveGroupItem createElemsFromNodes6 "From nodes"
	           entityChooser createElemsNodesPick6 "Select" nodeList NODE ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromPoints6 "From points"
	           entityChooser createElemsPointsPick6 "Select" pointList POINT ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromScreen6 "From screen"
	           entityChooser createElemsScreenPick6 "Location" pointList POINTORXYZ ANY
    	       exclusiveGroupItem END
           exclusiveGroup END
           checkItem createElemsAuto6 "Automatic element creation" createAuto aie_trace_create_elems_automatically

       exclusiveGroupItem END
       exclusiveGroupItem createElemsPyraBut "Pyramid" E_CreateElemPyra$icon_size2.gif
           exclusiveGroup createElemsMethod7 "Selection Method" "Method" 1 DROPDOWN PickMethod
               exclusiveGroupItem createElemsFromNodes7 "From nodes"
	           entityChooser createElemsNodesPick7 "Select" nodeList NODE ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromPoints7 "From points"
	           entityChooser createElemsPointsPick7 "Select" pointList POINT ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromScreen7 "From screen"
	           entityChooser createElemsScreenPick7 "Location" pointList POINTORXYZ ANY
    	       exclusiveGroupItem END
           exclusiveGroup END
           checkItem createElemsAuto7 "Automatic element creation" createAuto aie_trace_create_elems_automatically

       exclusiveGroupItem END
       exclusiveGroupItem createElemsHexBut "Hex" E_CreateElemHexa$icon_size2.gif
           exclusiveGroup createElemsMethod8 "Selection Method" "Method" 1 DROPDOWN PickMethod
               exclusiveGroupItem createElemsFromNodes8 "From nodes"
	           entityChooser createElemsNodesPick8 "Select" nodeList NODE ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromPoints8 "From points"
	           entityChooser createElemsPointsPick8 "Select" pointList POINT ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromScreen8 "From screen"
	           entityChooser createElemsScreenPick8 "Location" pointList POINTORXYZ ANY
    	       exclusiveGroupItem END
		exclusiveGroupItem createElemsFromFaces "From Faces"
	           entityChooser createElemsFacesPick "Opp. Faces" faceList ELEM 2
    	       exclusiveGroupItem END
           exclusiveGroup END
           checkItem createElemsDistrAuto2 "Automatic vertex distribution" sortAuto NULL
           checkItem createElemsAuto8 "Automatic element creation" createAuto aie_trace_create_elems_automatically

       exclusiveGroupItem END
       exclusiveGroupItem createElemsAutoTypeBut "Auto Element Type" E_CreateElements$icon_size2.gif 
           exclusiveGroup createElemsMethod9 "Selection Method" "Method" 1 DROPDOWN PickMethod
               exclusiveGroupItem createElemsFromNodes9 "From nodes"
	           entityChooser createElemsNodesPick9 "Select" nodeList NODE ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromPoints9 "From points"
	           entityChooser createElemsPointsPick9 "Select" pointList POINT ANY
    	       exclusiveGroupItem END
	       exclusiveGroupItem createElemsFromScreen9 "From screen"
	           entityChooser createElemsScreenPick9 "Location" pointList POINTORXYZ ANY
    	       exclusiveGroupItem END
           exclusiveGroup END

           checkItem createElemsConsistent3 "Make volume consistent" makeConsistent NULL
           checkItem createElemsDistrAuto3 "Automatic vertex distribution" sortAuto NULL

       exclusiveGroupItem END
    exclusiveGroup END
dataEntryDialog END

#---------------------------------------------------------------------------------------------------

dataEntryDialog defineConnectorsDEZ "Define Connectors"
    exclusiveGroup defineConnectorsTypeGG "Connector Type" "Method" 6 ICON
        exclusiveGroupItem defineConnectorsArbitrary "Arbitrary Connectors" M_ConnectArb$icon_size2.gif
            textEntry arbConnSelEG0Dde "Arbitrary connector name" groupOnWhich TEXT
            frame defineConnectorsCreateConn1 "Arbitrary Connectors"
            exclusiveGroup arbConnSel0EG "Source" "Select by" 1 DROPDOWN arbConnSrcSelMethod
                exclusiveGroupItem arbConnSel0EG0   "Entities"
                    entityChooser arbConnSelEG0Ec  "Entities" groupEntsOnWhich ANY_ENTITY ANY
                exclusiveGroupItem END
                exclusiveGroupItem arbConnSelEG1    "Existing part"
#                   entityChooser  arbConnSelEG1Dde "Source part" groupOnWhich PART ANY
                    entityChooser  arbConnSelEG1Dde "Source part" arbConnSourceFam PART ANY
#dropDownEntry arbConnSelEG1Dde "Existing Part of source entities" group_list groupOnWhich  FALSE
                exclusiveGroupItem END
            exclusiveGroup END
            dialogSpace 1
            exclusiveGroup arbConnSel1EG "Target" "Select by" 1 DROPDOWN arbConnTrgSelMethod
                exclusiveGroupItem arbConnSel1EG0    "Entities"
                    entityChooser arbConnSel1EG0Ec  "Entities" groupEntsToWhich ANY_ENTITY ANY
                exclusiveGroupItem END
                exclusiveGroupItem arbConnSel1EG1    "Existing part"
                    entityChooser  arbConnSel1EG1Dde "Target part" arbConnTargetFam PART ANY
                exclusiveGroupItem END
            exclusiveGroup END
            frame defineArbConnFrame "Connector"
                dropDownEntry defineArbConnFam "Part name" group_list groupResultName FALSE
            frame END
            dialogSpace 1
            textEntry defineConnectorsArbitraryMaxProj "Max projection" maxProjection TEXT
            checkItem defineConnArbitraryAct "Active" curDirectActive NULL
            frame END
        exclusiveGroupItem END

    exclusiveGroupItem defineConnectorsSpiderweb "Bolt Hole" M_ConnectSpider$icon_size2.gif
        textEntry boltHoleSelEG0Dde "Bolt hole name" groupOnWhich TEXT
        frame defineConnectorsCreateConn2 "Bolt Hole"
        entityChooser boltHoleSelEG0Ec  "Bolt curves" groupEntsOnWhich CURVE ANY
        frame defineBoltConnFrame "Connector"
        dropDownEntry defineConnectorsFam "Part name" group_list groupResultName FALSE
        integerEntry defineConnectorsNQLayers "Num quad rings" boltHoleNQuadLayers 0 100 1
        checkItem defineConnBoltWasher   "Washer" boltHoleIsWasher NULL
        frame END
        checkItem defineConnBoltHolesAct "Active" curDirectActive NULL
        frame END
    exclusiveGroupItem END

    exclusiveGroupItem defineConnectorsSeamWeld "Seam Weld" M_ConnectSeam$icon_size2.gif
            textEntry      seamWeldSelEG0Dde  "Seam connector name" groupOnWhich     TEXT
            frame defineConnectorsCreateConn3 "Seam Weld"
            exclusiveGroup jkaSWDumbWidgetGroup "Weld Options" "Weld type" 1 DROPDOWN dumbSeamWeldMethod
            exclusiveGroupItem jkaSWDumbWidgetName0 "Point to point"
		entityChooser  seamWeldSelEG0Ec   "Source curves"  groupEntsOnWhich CURVE ANY
		entityChooser defineConnectorsPart1Fam "Target part" seamTargetFam PART ANY
		textEntry     defineConnectorsSeamWeldMaxProj "Max projection"      maxProjection TEXT
		dropDownEntry defineConnectorsNewPartFam      "Part name" group_list groupResultName FALSE
		dropDownEntry defineConnectorsSeamSplitMethod "Element splitting"   possible_splitting_methods splittingMethod FALSE
            exclusiveGroupItem END
            exclusiveGroupItem jkaSWDumbWidgetName1 "Curtain tris/quads"
		entityChooser  seamWeldSelEG0Ec2   "Source curves"  groupEntsOnWhich CURVE ANY
		entityChooser defineConnectorsPart1Fam2 "Target part" seamTargetFam PART ANY
		textEntry     defineConnectorsSeamWeldMaxProj2 "Max projection"      maxProjection TEXT
		dropDownEntry defineConnectorsNewPartFam2      "Part name" group_list groupResultName FALSE
		dropDownEntry defineConnectorsSeamSplitMethod2  "Element splitting"   possible_splitting_methods splittingMethod FALSE
            exclusiveGroupItem END
            exclusiveGroupItem jkaSWDumbWidgetName2     "Tent welds"
		entityChooser  seamWeldSelEG0Ec3   "Source curves"  groupEntsOnWhich CURVE ANY
		entityChooser defineConnectorsPart1Fam3 "Target part" seamTargetFam PART ANY
		dropDownEntry defineConnectorsNewPartFam3      "Part name" group_list groupResultName FALSE
		dropDownEntry defineConnectorsSeamSplitMethod3  "Element splitting"   possible_splitting_methods splittingMethod FALSE
		exclusiveGroup jkaSWSubDumbWidgetGroup "Tent weld sub-type" "Weld type" 1 DROPDOWN glinkaSubType
 		   exclusiveGroupItem jkaSWSubDumbWidgetName0 "T welds"
		    dropDownEntry jkaSWDumbWidgetOffsetNormSide "Diagonals" glinka_sides glinkaDiagsSide FALSE
		   exclusiveGroupItem END
		   exclusiveGroupItem jkaSWSubDumbWidgetName1 "Lap welds"
		     dropDownEntry jkaSWDumbWidgetOffsetOneSide "Diagonals" glinka_one_side glinkaDiagsOneSide FALSE
 		   exclusiveGroupItem END
		exclusiveGroup END
		exclusiveGroup SWGlinkaWeldSpacingGroup "Tent weld spacing" "By" 1 DROPDOWN glinkaSpacing UpdateGlinkaWeldSpacingParams
 		  exclusiveGroupItem SWGlinkaWeldSpacingGroup0 "Distance to Weld Toe"
			textEntry jkaSWDumbWidgetWeldDist  "Distance to weld toe" glinkaOffsetHeight TEXT
			textEntry jkaSWDumbWidgetNumLayers "Number layers to toe" glinkaOffsetNLayers TEXT
			textEntry jkaSWDumbWidgetGrowthRat "Growth ratio after weld" glinkaOffsetHeightRatio TEXT
 		  exclusiveGroupItem END
 		  exclusiveGroupItem SWGlinkaWeldSpacingGroup1 "Weld fillet radius"
			textEntry ajcSWDumbWidgetRadius "Radius" glinkaOffsetRadius TEXT
 		  exclusiveGroupItem END
		exclusiveGroup END
		checkItem jkaSWDumbWidgetExtendType "Perpendicular extension" glinkaExtendType NULL
            exclusiveGroupItem END
            exclusiveGroup END
            dialogSpace 1
            checkItem defineConnSeamWeldAct "Active" curDirectActive NULL
            frame END
    exclusiveGroupItem END

    exclusiveGroupItem defineConnectorsSpotWeld "Spot Weld" M_ConnectSpot$icon_size2.gif
      textEntry spotWeldSelEG0Dde  "Spot Weld name" groupOnWhich TEXT
      frame defineConnectorsCreateConn7 "Spot Weld"
 	entityChooser spotWeldSelEG0Ec  "Source points" groupEntsOnWhich POINT ANY
	entityChooser defineConnectors3ListBox3  "Target parts" spotMultTargets PART ANY
        frame defineSpotConnFrame "Connector"
	  dropDownEntry defineSpotConnectorsNewPartFam "Part name" group_list groupResultName FALSE
	  textEntry defineConnectorsMaxProj53 "Max projection" maxProjection TEXT
          dialogSpace 1
	# this widget will break if dumbMethodList changes it's order... --jka
	exclusiveGroup jkaDumbWidgetGroup "Weld options" "Weld type" 1 DROPDOWN dumbSpotWeldMethod
	   exclusiveGroupItem jkaDumbWidgetName0 "Point to point"
	        dropDownEntry defineConnMultSplitMethod3 "Element splitting" possible_splitting_methods splittingMethod FALSE
    	   exclusiveGroupItem END
	   exclusiveGroupItem jkaDumbWidgetName1 "Mesh independent line"
	      	dropDownEntry jkaDumbWidgetRbe3Part0 "RBE3 part name" group_list rbe3PartName FALSE
    	   exclusiveGroupItem END
	   exclusiveGroupItem jkaDumbWidgetName2 "Mesh independent hexa"
		textEntry jkaDumbWidgetWeldRadius0 "Weld radius" weldRadius TEXT
	      	dropDownEntry jkaDumbWidgetRbe3Part1 "RBE3 part name" group_list rbe3PartName FALSE
    	   exclusiveGroupItem END
	   exclusiveGroupItem jkaDumbWidgetName3 "Area weld"
		textEntry jkaDumbWidgetWeldRadius1 "Weld radius" weldRadius TEXT
    	   exclusiveGroupItem END
        exclusiveGroup END
	frame END
	checkItem defineConn3PartAct3 "Active" curDirectActive NULL
      frame END
    exclusiveGroupItem END

    exclusiveGroupItem defineConnectorsSpotWeldFile "Spot Weld from file" M_ConnectSpotFile$icon_size2.gif
      frame defineConnectorsCreateConn6 "Spot Weld from File"
  	fileChooser   defineConnectorsSpotWeldFileName   "Spot Weld data file "   spotFileName FALSE
  	fileChooser   defineConnectorsSpotWeldFileReport "Spot Weld report file " spotFileReport TRUEdropDownEntry
	dialogSpace 1
	dropDownEntry defineConnectorsSpotWeldFileSplitMethod "Element splitting" possible_splitting_methods spotFileElSplitting FALSE
        frame defineSpotFileConnFrame "Connector"
	  dropDownEntry defineConnectorsSpotWeldFileFam "Part name" group_list groupResultName FALSE
	  textEntry defineConnectorsMaxProj3 "Max projection " spotFileMaxProj TEXT
	frame END
      frame END
    exclusiveGroupItem END

  exclusiveGroup END

dataEntryDialog END
#---------------------------------------------------------------------------------------------------
dataEntryDialog meshLineDEZ "Mesh Curve"
  entityChooser meshLinePick "Curves" curvList CURVE ANY
dataEntryDialog END
#---------------------------------------------------------------------------------------------------
dataEntryDialog meshQuadDEZ "Mesh Surface"
    exclusiveGroup defineSurfMeshT "Surface Meshing" "Method" 6 ICON

#ifdef AI_ENV_QUAD
        exclusiveGroupItem defineSurfMeshPB "Patch based" M_PatchBased$icon_size2.gif
            dropDownEntry meshQuadElType "Mesh type" typeList elType FALSE
            exclusiveGroup meshQuadMethod "Mesh boundaries" "Method" 1 DROPDOWN QuadMethod
                exclusiveGroupItem each_surface "From surfaces"
                    entityChooser meshQuadPick "Surfaces" surfList SURF ANY
                exclusiveGroupItem END
                exclusiveGroupItem from_curves "From curves"
                    entityChooser meshQuadPick2 "Curves" curveList CURVE ANY
                exclusiveGroupItem END
ifdef QUAD_DEBUG
                exclusiveGroupItem from_loops "From loops"
                exclusiveGroupItem END
                exclusiveGroupItem from_native_surfaces "From native surfaces"
                    entityChooser meshQuadPick3 "Surfaces" surfList SURF ANY
                exclusiveGroupItem END
endif
            exclusiveGroup END
            exclusiveGroup meshQuadAdvanced "Options" "Section" 2 DROPDOWN
                exclusiveGroupItem meshQuadAdvanced1 "General"
                    checkItem meshQuadRemoveOld "Remove old elements" remove_old NULL
                    dropDownEntry meshQuadSimpleOffset "Offset type" OffsetList simple_offset FALSE
                exclusiveGroupItem END
                exclusiveGroupItem meshQuadAdvanced2 "Boundary"
                    checkItem meshQuadBunch "Respect line elements" bunch NULL
                    checkItem meshQuadProtect "Protect given line elements" protect NULL
                    checkItem meshQuadSmoothBoundary "Smooth boundaries" b_smooth NULL
                    integerEntry meshQuadBlock "Mapping" block 0 1 .05
                    integerEntry meshQuadAdjustNodesMax "Adjust nodes limit" \
                        adjust_nodes_max 0.0 1.0 .05
                exclusiveGroupItem END
                exclusiveGroupItem meshQuadAdvanced3 "Interior"
                    checkItem meshQuadProject "Project to surfaces" projection aie_quad_trace_projection
                    checkItem meshQuadSurfaceSizes "Use surface sizes" use_surface_sizes NULL
                    textEntry meshQuadMaxDev "Max deviation" MaxDev NUM
                exclusiveGroupItem END
                exclusiveGroupItem meshQuadAdvanced4 "Repair"
                    textEntry meshQuadIgnoreFeature "Ignore size" ignore NUM
                                                                          ### aie_quad_trace_ignore
                    integerEntry meshQuadHarder "Try harder" try_harder 0 3 1
                    integerEntry meshQuadImprovement "Improvement level" improvement 0 3 1
                    checkItem meshQuadDormant "Mesh dormant" dormant NULL
                    checkItem meshQuadSmoothDormant "Oversmooth dormant" smoothdormant NULL
                exclusiveGroupItem END
                exclusiveGroupItem meshQuadAdvanced5 "Delaunay"
                    textEntry meshMaxArea "Maximum element area" max_area NUM
                    textEntry meshMaxLength "Maximum edge length" max_length NUM
                    textEntry meshMinAngle "Minimum angle" min_angle NUM
                    textEntry meshMaxNodes "Maximum number of nodes" max_nodes NUM
                    textEntry meshMaxElements "Maximum number of elements" max_elements NUM
                exclusiveGroupItem END
ifdef QUAD_DEBUG
                exclusiveGroupItem meshQuadAdvanced6 "Beta"
                    checkItem meshQuadFour "Four-quad points" four NULL
                    textEntry meshQuadEnn "Estimated number of nodes" enn NUM
                exclusiveGroupItem END
                exclusiveGroupItem meshQuadAdvanced7 "Testing"
                    textEntry meshQuadInner "Preferred inner size" inner NUM
                    integerEntry meshQuadIterations "Smoothing" iters 0 20 1
                    textEntry meshQuadGeoTol "Looping tolerance" geo_tol NUM
                    integerEntry meshQuadPattern "Pattern angle" pattern 0 150 10
                    textEntry meshQuadTimeLimit "Time limit" time_max NUM
                    textEntry meshQuadElementLimit "Element limit" ele_max NUM
                    checkItem meshQuadBoard "Iceboard" board NULL
                    integerEntry meshQuadDebug "Debug level" debug -1 5 1
                exclusiveGroupItem END
endif
            exclusiveGroup END
        exclusiveGroupItem END
#endif

        exclusiveGroupItem defineSurfMeshPI "Patch independent" M_PatchIndependent$icon_size2.gif
            dropDownEntry meshQuadElTypePI "Mesh type"  typeList elType FALSE
#           entityChooser meshPIPick "Surfaces" surfList SURF ANY
            integerEntry meshPIIterations "Iterations" iterations 0 500 1
        exclusiveGroupItem END

#ifdef AI_ENV_QUAD
        exclusiveGroupItem defineSurfMeshHex "Mapped based" M_StructuredQuad$icon_size2.gif
            dropDownEntry meshQuadElTypeHex "Mesh type"  typeList elType FALSE
	    entityChooser mapMeshSurfsPick "Surfaces" meshSurfs SURF ANY
            textEntry meshQuadMinEdgeHex "Min edge" MinEdge NUM
        exclusiveGroupItem END
#endif

ifdef AI_ENV_BETA
        exclusiveGroupItem defineSurfMeshSB "Surface based" M_PatchBased$icon_size2.gif
	    radioGroup meshSurfMethodSB "Method" 2 DelaunayFlag 0 DummyProc
		radioItem meshSurfMethodAF "Advancing Front" 0
		radioItem meshSurfMethodDel "Delaunay" 1
	    radioGroup END
	    checkItem meshSurfVerbose "Verbose Output" VerboseFlag NULL
	    checkItem meshSurfProximity "Do Proximity Checking" ProximityFlag NULL
	    textEntry meshSurfExpand "Expansion Factor" ExpansionFactor NUM
	    textEntry meshSurfTol "Topology Tolerance" TopoTolerance NUM
	    checkItem meshSurfTopo "Force Topology Rebuild" RebuildTopoFlag NULL
#	    checkItem meshSurfJoin "Merge Surfaces" MergeSurfFlag NULL
	    checkItem meshSurfLoad "Load mesh after completion" loadFlag NULL
        exclusiveGroupItem END
endif

    exclusiveGroup END
dataEntryDialog END
#---------------------------------------------------------------------------------------------------
dataEntryDialog meshTetDEZ "Mesh Volume"
    dropDownEntry meshVolType "Volume Mesh type"  typeList meshType FALSE
    exclusiveGroup  meshTetMethodEG "Method" "Method" 3 ICON
    	exclusiveGroupItem meshTetGeom "From geometry" M_OctreeGeom$icon_size2.gif
#	    dropDownEntry meshSurfType "Surface Mesh type" surfTypeList surfMeshType FALSE
	    greyGroup meshTetSmoothGG1 "Smooth mesh" meshTetSmoothGGVal
		greyGroupItem meshTetSOpts "Smoother options"
		    integerEntry meshTetVSI "Iterations" numSmooth 1 20 1
		    textEntry meshTetSAR "Min quality" smoothAR NUM
		greyGroupItem END
	    greyGroup END

	    greyGroup meshTetCrsGG1 "Coarsen mesh" meshTetCrsGGVal
		greyGroupItem meshTetCOpts "Coarsener options"
		    integerEntry meshTetCNumIter "Iterations" coarsNumIter 1 5 1
		    textEntry meshTetCAR "Worst aspect ratio" coarsAR NUM
		greyGroupItem END
	    greyGroup END

	    greyGroup meshTetStGG1 "Smooth transition" meshTetStGGVal
		greyGroupItem meshTetTOpts "Transition options"
		    textEntry meshTetTF "             Factor" STfactor NUM
		greyGroupItem END
	    greyGroup END
	frame meshTetbatchFR "Options"
ifdef AI_ENV_CFX
	  checkItem meshTetOnlySurf "Create 2D/Surface mesh only" surfMeshFlag NULL
endif
	  greyGroup meshTetbatchGG "Run as batch process" batchFlag
	    greyGroupItem meshTetbatchGI "Batch options"
		checkItem meshTetOnlyVisGeom "Only visible geometry" VisGeomFlag NULL
		checkItem meshTetByPart "Part by Part" partFlag NULL
#		checkItem meshTetFixAOChk "Keep unused volumes" autoOrphFlag NULL
		checkItem meshTetLdTChk "Load mesh after completion" loadFlag NULL
	    greyGroupItem END
	  greyGroup END
	  checkItem meshFixHoles "Fix Holes" fix_holes NULL
	  checkItem meshTetFixNMChk "Fix Non-manifold" fixNMFlag NULL
ifdef AI_ENV_BETA
	  checkItem meshTetCloseGapsChk "Close Gaps" closeGapsFlag NULL
	  checkItem meshTetSaveTrisChk "Save All Triangles" saveTrisFlag NULL
endif
	frame END
ifdef AI_ENV_BETA
	frame meshTetAFFR "Advancing Front Options"
	  checkItem meshAFVerbose "Verbose Output" VerboseFlag NULL
	  checkItem meshAFDelaunay "Delaunay Surface Mesh" DelaunayFlag NULL
	  checkItem meshAFProximity "Do Proximity Checking" ProximityFlag NULL
	  textEntry meshAFExpand "Expansion Factor" ExpansionFactor NUM
	  textEntry meshAFTol "Topology Tolerance" TopoTolerance NUM
	  checkItem meshAFTopo "Force Topology Rebuild" RebuildTopoFlag NULL
#	  checkItem meshAFJoin "Merge Surfaces" MergeSurfFlag NULL
	frame END
endif
	exclusiveGroupItem END

    	exclusiveGroupItem meshTetGeomMesh "From geometry and surface mesh" M_OctreeG-M$icon_size2.gif
	    greyGroup meshTetSMSmoothGG "Smooth mesh" meshTetSmoothGGVal
		greyGroupItem meshTetSMSOpts "Smoother options"
		    integerEntry meshTetSMVSI "Iterations" numSmooth 1 20 1
		    textEntry meshTetSMSAR "Min quality" smoothAR NUM
		greyGroupItem END
	    greyGroup END

	    greyGroup meshTetSMCrsGG "Coarsen mesh" meshTetCrsGGVal
		greyGroupItem meshTetSMCOpts "Coarsener options"
		    integerEntry meshTetSMCNumIter "Iterations" coarsNumIter 1 5 1
		    textEntry meshTetSMCAR "Worst aspect ratio" coarsAR NUM
		greyGroupItem END
	    greyGroup END

	    greyGroup meshTetSMStGG "Smooth transition" meshTetStGGVal
		greyGroupItem meshTetSMTOpts "Transition options"
		    textEntry meshTetSMTF "Factor" STfactor NUM
		greyGroupItem END
	    greyGroup END

	    entityChooser meshTetUseMeshParts "Existing Mesh Parts" useMeshParts SUBPART ANY
	frame meshTetSMbatchFR "Options"
	  greyGroup meshTetSMbatchGG "Run as batch process" batchFlag
	    greyGroupItem meshTetSMbatchGI "Batch options"
		checkItem meshTetSMOnlyVisGeom "Only visible geometry" VisGeomFlag NULL
		checkItem meshTetSMLdTChk "Load mesh after completion" loadFlag NULL
	    greyGroupItem END
	  greyGroup END
	frame END

	exclusiveGroupItem END

    	exclusiveGroupItem meshTetSurf "From existing mesh" M_DelaunayMesh$icon_size2.gif
	    checkItem meshRemeshCenter "Remesh center" remeshCenter NULL
	    checkItem meshRemeshHoles "Fill holes in volume mesh" fillholes NULL
            dropDownEntry meshRemeshMF "Volume Part Name" PartList family FALSE
	    textEntry meshRemeshSF "Mem scaling factor" scalefactor NUM
	    textEntry meshRemeshTF "Expansion factor" tetexpand NUM

	    frame meshRemeshOpts "Options"
#		checkItem meshRemeshVG "Only visible domains" meshvis NULL
#		checkItem meshRemeshPP "Part by Part" meshparts NULL
		checkItem meshRemeshAD "Mesh all domains" meshall NULL
		checkItem meshRemeshFF "Do flood fill after completion" floodfill NULL
		checkItem meshRemeshLM "Load mesh after completion" loadmesh NULL
		checkItem meshRemeshMV "Verbose output" verbose NULL
ifdef TRI2TET_DEBUG
	        textEntry meshRemeshOL "Output level" output NUM
	        textEntry meshRemeshOF "OFF File" OFFfile NUM
endif
ifdef AI_ENV_BETA
		checkItem meshRemeshProximity "Do Proximity Checking" proximity NULL
endif
	    frame END
	exclusiveGroupItem END

    exclusiveGroup END
dataEntryDialog END

#---------------------------------------------------------------------------------------------------

dataEntryDialog meshPrismDEZ "Mesh with Prisms"
#    textButton meshPrismParts "Select Parts for Prism Layer" "aie_prism_select_parts"
    textButton meshPrismParts "Select Parts for Prism Layer" "geo_params_edit_allparts 1"
    frame meshPrismOpts "Smoothing Options"
#	frame meshPrismPreSmoothOpts "Pre-Smooth Options"
	    integerEntry meshPrismNTriSmooth "Number of surface smoothing steps" n_triangle_smoothing_steps 0 100 1 5
	    dropDownEntry meshPrismTriQuality "Triangle quality type" TriQualityList triangle_quality FALSE
	    integerEntry meshPrismNTetSmooth "Number of volume smoothing steps" n_tetra_smoothing_steps 0 100 1 10
#	frame END
	integerEntry meshPrismNsmooth "Max directional smoothing steps" smoothing_steps 1 100 1 12
	integerEntry meshPrismFirstLayNSmooth "First layer smoothing steps" first_layer_smoothing_steps 1 100 1
    frame END
    checkItem meshPrismLM "Load mesh after completion" loadmesh NULL
dataEntryDialog END

#---------------------------------------------------------------------------------------------------

dataEntryDialog meshHexDomDEZ "Mesh Hex Dominant from Quads"
    dropDownEntry meshHexDomPN "Solid mesh part name" PartList family FALSE
dataEntryDialog END

#---------------------------------------------------------------------------------------------------

#---------------------------------------------------------------------------------------------------
###dataEntryDialog smartLoopsDEZ "Smart Groups"
###    entityChooser smartloopSurfPick "Surfaces to group" surfs SURF ANY
###    textEntry smartloopSurfMinEdge "Min edge length" min_edge NUM
###    textEntry smartloopSurfMinArea "Min surface area" min_area NUM
###    textEntry smartloopSurfMaxCurv "Max curvature" max_curv NUM
###    textEntry smartloopSurfMaxAng "Max angle" max_ang NUM
###dataEntryDialog END

#---------------------------------------------------------------------------------------------------


dataEntryDialog meshGlobalDEZ "Global Cartesian Mesher"
dataEntryDialog END

dataEntryDialog exportSpectralElementsDEZ "Spectral Elements"

    greyGroup exportSpectralElements "Selected elements"
        greyGroupItem exportSpectralElementsG " "
            entityChooser convertElemsPick7 "Elements" elemListSpectralElem ELEM ANY
        greyGroupItem END
    greyGroup END

    dialogSpace 1

    integerEntry orderDiag "Order" order 2 500 1

    dialogSpace 1

    dropDownEntry specelDiag "Bunching law" specelDiag_list specelDiag_val FALSE

dataEntryDialog END

#----------------------------------------------------------------------------

dataEntryDialog quadMeshDEZ "Surface Mesh"
	exclusiveGroupItem meshAutoSM "Surface Mesh" M_PatchBased$icon_size2.gif
	    exclusiveGroup meshAutoSMMethod "Mesh boundaries" "Method" 1 DROPDOWN sm_method
		exclusiveGroupItem meshAutoSMSurface "From surfaces"
                    entityChooser meshAutoSMPick "Surfaces" surfSMList SURF ANY
                exclusiveGroupItem END
                exclusiveGroupItem meshAutoSMCurves "From curves"
                    entityChooser meshAutoSMPick2 "Curves" curveSMList CURVE ANY
                exclusiveGroupItem END

                exclusiveGroupItem meshAutoSMLoops  "From loops"
                exclusiveGroupItem END
                exclusiveGroupItem meshAutoSMNative "From native surfaces"
                    entityChooser meshAutoSMPick3 "Surfaces" surfSMList SURF ANY
                exclusiveGroupItem END

		dialogSpace 1
		exclusiveGroup meshAutoTesting "Beta/Testing" "Section" 2 DROPDOWN
		    exclusiveGroupItem meshAutoBetaQuad "Beta"
			checkItem meshAutoFour "Four-quad points" four NULL
			textEntry meshAutoEnn "Estimated number of nodes" enn NUM
		    exclusiveGroupItem END
		    exclusiveGroupItem meshAutoTestingQuad "Testing"
			textEntry meshAutoInner "Preferred inner size" inner NUM
			integerEntry meshAutoIterations "Smoothing" iters 0 20 1
			textEntry meshAutoGeoTol "Looping tolerance" geo_tol NUM
			integerEntry meshAutoPattern "Pattern angle" pattern 0 150 10
			textEntry meshAutoTimeLimit "Time limit" time_max NUM
			textEntry meshAutoElementLimit "Element limit" ele_max NUM
			checkItem meshAutoBoard "Iceboard" board NULL
			integerEntry meshAutoDebug "Debug level" debug -1 5 1
		    exclusiveGroupItem END
		exclusiveGroup END
	    exclusiveGroup END
	exclusiveGroupItem END
dataEntryDialog END

dataEntryDialog meshAutoDEZ "Compute Mesh"
    exclusiveGroup meshAutoWhat "Compute" "Compute" 3 ICON
	exclusiveGroupItem meshAutoSurf "Surface Mesh Only" M_PatchBased$icon_size2.gif
	    frame meshAutoSurfFR "Surface Mesh"
		greyGroup meshSurfSet1GG "Overwrite Surface Preset/Default Mesh Type" set_surfparams_type
		    greyGroupItem meshSurfSet1GI "Overwrite Surface Preset/Default Mesh Type"
			dropDownEntry meshSurfType "Mesh type" surfElemTypeList etype2 FALSE READONLY
		    greyGroupItem END
		 greyGroup END
		 greyGroup meshSurfSet2GG "Overwrite Surface Preset/Default Mesh Method" set_surfparams_method
		     greyGroupItem meshSurfSet2GI "Overwrite Surface Preset/Default Mesh Method"
			dropDownEntry meshSurfMethod "Mesh method" surfElemMethodList emethod2 FALSE READONLY
		    greyGroupItem END
		greyGroup END
	        dialogSpace 1
	        exclusiveGroup meshSurfGeomEG "Input" "Select Geometry" 1 DROPDOWN input
		    exclusiveGroupItem meshSurfGeomAll "All"
		    exclusiveGroupItem END
	        exclusiveGroupItem meshSurfGeomVis "Visible"
		    exclusiveGroupItem END
		    exclusiveGroupItem meshSurfGeomPart "Part by Part"
		        entityChooser meshSurfGeomParts "Parts" geomParts PART ANY
		    exclusiveGroupItem END
		    exclusiveGroupItem meshSurfGeomSelect "From Screen"
		        entityChooser meshSurfGeomSelEnts "Entities" geomEnts GEOMETRY ANY
		    exclusiveGroupItem END
	        exclusiveGroup END
ifdef QUAD_DEBUG
	        dialogSpace 1
	        textEntry meshAutoDebugEnn "Estimated number of nodes" enn NUM
	        textEntry meshAutoDebugInner "Preferred inner size" inner NUM
	        integerEntry meshAutoDebugIterations "Smoothing" iters 0 20 1
	        textEntry meshAutoDebugGeoTol "Looping tolerance" geo_tol NUM
	        integerEntry meshAutoDebugPattern "Pattern angle" pattern 0 150 10
	        textEntry meshAutoDebugTimeLimit "Time limit" time_max NUM
	        textEntry meshAutoDebugElementLimit "Element limit" ele_max NUM
	        integerEntry meshAutoDebugLevel "Debug level" debug -1 5 1
	        checkItem meshQuadBreakpoint "Breakpoint" breakpoint NULL
	        checkItem meshAutoDebugBoard "Iceboard" board NULL
	        checkItem meshAutoDebugFour "Four-quad points" four NULL
endif
	    frame END
	exclusiveGroupItem END

	exclusiveGroupItem meshAutoVolume "Volume Mesh" M_Tetra$icon_size2.gif
	    exclusiveGroup meshVolumeEG "Volume Mesh" "Mesh Type" 1 DROPDOWN volmesh_type
		exclusiveGroupItem meshTetraMixed "Tetra/Mixed"
		    exclusiveGroup meshTetraMixeEG "Tetra/Mixed Mesh" "Mesh Method" 1 DROPDOWN tetra_method
			exclusiveGroupItem meshTetraOct "Robust (Octree)"
ifdef AI_ENV_PRISM
			    checkItem meshTetOctPrism "Create Prism Layers" run_prism NULL
endif
			    checkItem meshTetOctHC "Create Hexa-Core" run_hexacore NULL 
                dialogSpace 1
			    exclusiveGroup meshTetOctGeomEG "Input" "Select Geometry" 1 DROPDOWN tetra_input
				exclusiveGroupItem meshTetOctAll "All"
				    greyGroup meshTetUseExist "Use Existing Mesh Parts"
				    	greyGroupItem meshTetUseExistGI "Select"
					    entityChooser meshTetOctUseMeshParts "Select" useMeshParts SUBPART ANY
					    greyGroupItem END
				    greyGroup END
				exclusiveGroupItem END
				exclusiveGroupItem meshTetOctVis "Visible"
				    greyGroup meshTetUseExist2 "Use Existing Mesh Parts"
				    	greyGroupItem meshTetUseExistGI2 "Select"
					    entityChooser meshTetOctUseMeshParts2 "Select" useMeshParts SUBPART ANY
					    greyGroupItem END
				    greyGroup END
				exclusiveGroupItem END
				exclusiveGroupItem meshTetOctPart "Part by Part"
				    entityChooser meshTetOctParts "Parts" geomParts PART ANY
				exclusiveGroupItem END
				exclusiveGroupItem meshTetOctBatch "From File"
				    fileChooser meshTetOctFile  "Tetin file" tetinFile FALSE "Tetin File, .tin,All Files, .*"
				    checkItem meshTetOctLoad "Load mesh after completion" loadFlag NULL
				exclusiveGroupItem END
			    exclusiveGroup END
			exclusiveGroupItem END

			exclusiveGroupItem meshTetraDel "Quick (Delaunay)"
ifdef AI_ENV_PRISM
			    checkItem meshTetDelPrism "Create Prism Layers" run_prism NULL
endif
			    checkItem meshTetDelHC "Create Hexa-Core" run_hexacore NULL
			    dropDownEntry meshDelRemeshMF "Volume Part Name" PartList family FALSE
                dialogSpace 1
			    exclusiveGroup meshTetDelGeomEG "Input" "Select" 1 DROPDOWN tetra_input
				exclusiveGroupItem meshDelGI "All Geometry"
				exclusiveGroupItem END
				exclusiveGroupItem meshDelExisting "Existing Mesh"
				    checkItem meshDelRemeshLM "Load mesh after completion" loadmesh NULL
				exclusiveGroupItem END
				exclusiveGroupItem meshDelEnclosed "Part by Part"
				    entityChooser meshTetDelParts "Parts" enclosedParts PART ANY
				exclusiveGroupItem END
				exclusiveGroupItem meshDelFile "From File"
				    fileChooser meshTetDelFile  "Mesh file" meshFile FALSE "Mesh File, .uns,All Files, .*"
				    checkItem meshTetDelLoad "Load mesh after completion" loadmesh NULL
				exclusiveGroupItem END
			    exclusiveGroup END

#			    dialogSpace 1
#			    dropDownEntry meshDelRemeshMF "Volume Part Name" PartList family FALSE
ifdef TRI2TET_DEBUG
			    checkItem meshTetDelSD "Single family" singlefamily NULL
			    textEntry meshTetDelOL "Output level" output NUM
			    textEntry meshTetDelOF "OFF File" OFFfile NUM
endif

			exclusiveGroupItem END

			exclusiveGroupItem meshTetraAdv "Smooth (Advancing Front)"
ifdef AI_ENV_PRISM
			    checkItem meshTetAdvPrism "Create Prism Layers" run_prism NULL
endif
			    dropDownEntry meshAdvRemeshMF "Volume Part Name" PartList family FALSE
                dialogSpace 1
			    exclusiveGroup meshTetAdvGeomEG "Input" "Select" 1 DROPDOWN tetra_input
				exclusiveGroupItem meshAdvGI "All Geometry"
				exclusiveGroupItem END
				exclusiveGroupItem meshAdvExisting "Existing Mesh"
				    checkItem meshAdvRemeshLM "Load mesh after completion" loadmesh NULL
				exclusiveGroupItem END
				exclusiveGroupItem meshAdvEnclosed "Part by Part"
				    entityChooser meshTetAdvParts "Parts" enclosedParts PART ANY
				exclusiveGroupItem END
				exclusiveGroupItem meshAdvFile "From File"
				    fileChooser meshTetAdvFile  "Mesh file" meshFile FALSE "Mesh File, .uns,All Files, .*"
				    checkItem meshTetAdvLoad "Load mesh after completion" loadmesh NULL
				exclusiveGroupItem END
			    exclusiveGroup END

			    dialogSpace 1
			    #dropDownEntry meshAdvRemeshMF "Volume Part Name" PartList family FALSE
			exclusiveGroupItem END
			exclusiveGroupItem meshTetraTGrid "Fluent Meshing"
ifdef AI_ENV_PRISM
                checkFrame meshPrismLayers "Create Prism Inflation Layers" run_inflation NULL
                    radioGroup meshPrismLayersPrePost "Inflation Method" 1 run_pre_or_post_inflation pre NULL
                        # run_tgrid_inflation
                        radioItem meshPrismLayersPre "Pre Inflation (Fluent Meshing)" pre
                        # run_prism
                        radioItem meshPrismLayersPost "Post Inflation (ICEM CFD Prism)" post
                    radioGroup END
                checkFrame END
endif
ifndef AI_ENV_PRISM
                checkItem meshPrismLayers "Pre Inflation (Fluent Meshing)" run_tgrid_inflation NULL 
endif

			    checkItem meshTetTGridTGHC "Create Fluent Mesh with Hexa-Core" run_tgrid_hexacore NULL 
			    checkItem meshTetTGridTGIN "Run interactive Fluent Meshing" run_tgrid_interactive NULL 
			    dialogSpace 1
			    dropDownEntry meshTGridRemeshMF "Volume Part Name" PartList family FALSE   
			    entityChooser FluentMeshingVolPartsPick "Frozen volume mesh parts" frozenMeshVolParts PART ANY
			    dialogSpace 1
				exclusiveGroup meshTetTGridGeomEG "Input" "Select" 1 DROPDOWN tetra_input
				    exclusiveGroupItem meshTGridGI "All Geometry"
				    exclusiveGroupItem END
				    exclusiveGroupItem meshTGridExisting "Existing Mesh"
				        checkItem meshTGridRemeshLM "Load mesh after completion" loadmesh NULL
				    exclusiveGroupItem END
				    exclusiveGroupItem meshTGridEnclosed "Part by Part"
				        entityChooser meshTetTGridParts "Parts" enclosedParts PART ANY
				    exclusiveGroupItem END
				    exclusiveGroupItem meshTGridFile "From File"
				        fileChooser meshTetTGridFile  "Mesh file" meshFile FALSE "Mesh File, .uns,All Files, .*"
				        checkItem meshTetTGridLoad "Load mesh after completion" loadmesh NULL
				    exclusiveGroupItem END
			    exclusiveGroup END
			    dialogSpace 1
			exclusiveGroupItem END
		    exclusiveGroup END
ifdef AI_ENV_PRISM
		    textEntry meshPrismLayers2 " " run_tgrid_inflation INVISIBLE
endif
		exclusiveGroupItem END
		exclusiveGroupItem meshHybrid "Hexa-Dominant"
		    exclusiveGroup meshTetHDGeomEG "Input" "Select" 1 DROPDOWN tetra_input
			exclusiveGroupItem meshHDGI "All Geometry"
			exclusiveGroupItem END
			exclusiveGroupItem meshHDExisting "Existing Mesh"
			exclusiveGroupItem END
		    exclusiveGroup END

		    frame meshHexaDomFR "Options"
			dropDownEntry meshHexaDomPart "Volume Part Name" PartList family FALSE
		    frame END
		exclusiveGroupItem END

		exclusiveGroupItem meshCart "Cartesian"
		    exclusiveGroup cartMeshTypeEG "Cartesian Mesh" "Mesh Method" 2 DROPDOWN cart_method
			exclusiveGroupItem meshCartBF "Body-Fitted"			
			    dropDownEntry meshCartBodyFit "Volume Part Name" PartList vol_fam FALSE
				
			    exclusiveGroup bfcartSplitEG "Enforce Split" "Method" 3 DROPDOWN grid_split
				exclusiveGroupItem bfcartSplitNone "None"
				exclusiveGroupItem END
				exclusiveGroupItem bfcartSplitInitial "Initial"
				 	fileChooser meshBFCartFile1  "Cartesian file" gridFile FALSE "Cart File, .crt,All Files, .*"
				exclusiveGroupItem END
				exclusiveGroupItem bfcartSplitFinal "Final"
				 	fileChooser meshBFCartFile2  "Cartesian file" gridFile FALSE "Cart File, .crt,All Files, .*"
				exclusiveGroupItem END
				exclusiveGroupItem bfcartSplitKeyPnts "Key-Points"
				textEntry bfcartKPtTol "Tolerance" kpt_tol NUM
				exclusiveGroupItem END
			    exclusiveGroup END

			    exclusiveGroup bfcartInfEG "Inflation" "Inflate Parts" 3 DROPDOWN inf_method
				exclusiveGroupItem inflateBF1 "Defined"			
				exclusiveGroupItem END
				exclusiveGroupItem inflateBF2 "All"			
				exclusiveGroupItem END
				exclusiveGroupItem inflateBF3 "None"			
				exclusiveGroupItem END
			   exclusiveGroup END
			exclusiveGroupItem END
			
ifdef AI_ENV_BETA
			exclusiveGroupItem meshCartGlobal  "Staircase (Global)"
	    		exclusiveGroup globalCartRefEG "Refinement" "Method" 2 DROPDOWN RefMethod
				exclusiveGroupItem globalCartUns "Unstructured"
				    dropDownEntry globalInitDD "Initialize Grid By" initMethodList InitMethod FALSE
				    dropDownEntry globalEditDD "Edit Grid" editList EditMethod FALSE
    			exclusiveGroupItem END
				exclusiveGroupItem globalCartPure "Pure Cartesian"
				    dropDownEntry globalInit2DD "Initialize Grid By" initMethodList2 InitMethod FALSE
				    dropDownEntry globalEdit2DD "Edit Grid" editList EditMethod FALSE
				    checkItem globalSaveUns "Save as Unstruct Mesh" save_uns aie_update_cart_preview
				    frame mxzGlobalCartPreview "Pre-View"
					textEntry previewCartX "X-Cutplanes" xcut TEXT
					textEntry previewCartY "Y-Cutplanes" ycut TEXT
					textEntry previewCartZ "Z-Cutplanes" zcut TEXT
				    frame END				   
				exclusiveGroupItem END								
			    exclusiveGroup END
			exclusiveGroupItem END
endif
		    exclusiveGroup END
		exclusiveGroupItem END
	    exclusiveGroup END

	exclusiveGroupItem END

#ifdef AI_ENV_CFD
#ifdef AI_ENV_PRISM
	exclusiveGroupItem meshAutoPrism "Prism Mesh" M_ExtrudePrism$icon_size2.gif
	    frame meshAutoPrismFR "Prism Mesh"
	 	exclusiveGroup meshPrismInputEG "Input" "Select Mesh" 1 DROPDOWN prism_input
		    exclusiveGroupItem meshPrismLoaded "Existing Mesh"
		    exclusiveGroupItem END
		    exclusiveGroupItem meshPrismFromFile "From File"
			    fileChooser meshPrismFile  "Mesh file" meshFile FALSE "Mesh File, .uns,All Files, .*"
		    exclusiveGroupItem END
		exclusiveGroup END
		textButton meshPrismParts1 "Select Parts for Prism Layer" "aie_part_table_create prism 1"
		dialogSpace 1
        radioGroup meshPrismLayersPrePost2 "Inflation Method" 1 run_pre_or_post_inflation pre NULL
            # run_tgrid_inflation
            radioItem meshPrismLayersPre2 "Pre Inflation (Fluent Meshing)" pre
            # run_prism
            radioItem meshPrismLayersPost2 "Post Inflation (ICEM CFD Prism)" post
        radioGroup END
        checkItem meshPrismTGridTGHC "Create Fluent Mesh with Hexa-Core" run_tgrid_hexacore NULL 
        checkItem meshPrismTGridTGIN "Run interactive Fluent Meshing" run_tgrid_interactive NULL 
        dropDownEntry meshPrismTGridRemeshMF "Volume Part Name" PartList family FALSE   
        entityChooser PrismFluentMeshingVolPartsPick "Frozen volume mesh parts" frozenMeshVolParts PART ANY
        dialogSpace 1
		checkItem meshPrismLM1 "Load mesh after completion" loadmesh NULL
	    frame END

	exclusiveGroupItem END
#endif
#endif

    exclusiveGroup END
dataEntryDialog END

dataEntryDialog meshVolFromSurfDEZ "Volume From Surface Mesh"
	exclusiveGroup meshVFSMethod "Tetra Mesh" "Mesh Method" 1 DROPDOWN tetra_method
	    exclusiveGroupItem meshVFSDel "Delaunay"
		textEntry meshVFSDelSF "Scale Factor" scalefactor NUM
		checkItem meshVFSDelBM "Use Background Mesh" bgmesh NULL
                textEntry meshVFSDelBF "BG Mesh File" bgfile TEXT
ifdef TRI2TET_DEBUG
		textEntry meshVFSDelOL "Output level" output NUM
		textEntry meshVFSDelOF "OFF File" OFFfile NUM
endif
	    exclusiveGroupItem END
	    exclusiveGroupItem meshVFSAF "Advancing Front"
		checkItem meshVFSAFProx "Do Proximity Checking" proximity NULL
	    exclusiveGroupItem END
	    exclusiveGroupItem meshVFSTG "Tgrid"
		checkItem meshVFSTGBM "Force Background Mesh" bgmesh NULL
        textEntry meshVFSTGBF "BG Mesh File" bgfile TEXT
	    exclusiveGroupItem END

            frame meshVFSOpts "Options"
		textEntry meshVFSOptsGS "Global Spacing" global_spacing NUM
		textEntry meshVFSOptsEX "Expansion Rate" tetexpand NUM
		dropDownEntry meshVFSOptsMF "Volume Part Name" PartList family FALSE
		checkItem meshVFSOptsHoles "Fill holes in volume mesh" fillholes NULL
		checkItem meshVFSOptsAD "Mesh all domains" meshall NULL
		checkItem meshVFSOptsFF "Do flood fill after completion" floodfill NULL
		checkItem meshVFSOptsLM "Load mesh after completion" loadmesh NULL
		checkItem meshVFSOptsMV "Verbose output" verbose NULL
	    frame END

	exclusiveGroup END
dataEntryDialog END

ifdef AFMESH_BIN
dataEntryDialog meshAdvFrontDEZ "Advancing Front Mesher"
    checkItem meshAdvFrontVerbose "Verbose Output" VerboseFlag NULL
    checkItem meshAdvFrontKeepTmp "Keep Temporary Files" KeepFlag NULL
    checkItem meshAdvFrontDelaunay "Delaunay Surface Mesh" DelaunayFlag NULL
    checkItem meshAdvFrontSurf "Surface mesh only" SurfOnlyFlag NULL
    checkItem meshAdvFrontInflate "Do Inflation" InflateFlag NULL
    checkItem meshAdvFrontProximity "Do Proximity Checking" ProximityFlag NULL
    checkItem meshAdvFrontTopo "Force Topology Rebuild" RebuildTopoFlag NULL
#   checkItem meshAdvFrontJoin "Merge Surfaces" MergeSurfFlag NULL
    textEntry meshAdvFrontTol "Topology Tolerance" TopoTolerance NUM
    textEntry meshAdvFrontExpand "Expansion Factor" ExpansionFactor NUM
    checkItem meshAdvFrontLoad "Load mesh after completion" LoadFlag NULL
dataEntryDialog END
endif




