global dtmloc
global object_id
global trisolation_id
proc getObjectsTrisolationsForMultipleDTMS {dtm_loc object_num trisolation_num} {
set fileloc "[$dtm_loc getCurrentValue]"
set convfileloc "[string tolower $fileloc]"
set location ""
if { [string first ".dtm" $convfileloc ] == -1 } {
append location  $fileloc ".dtm"
} else {
set location $fileloc
}
if { [string length $location] > 4 } {
get_triobject_trisolation_details_for_multipleDTMs1 $location $object_num $trisolation_num
}
}
proc isNumeric {x} {
set a [expr ![catch {expr $x*1}]]
return $a
}
proc validateAutoExpansionParameters {paramName paramValue} {
global overallSlopeAngle
set status 1
set errorMessage [GuidoMessage translate BM_UNDEFINED_LABEL]
if {"$paramValue" == ""} {
GuidoMessage warning APP_BLANK_ERR "[GuidoMessage translate $paramName]"
$overallSlopeAngle setCurrentValue "<html><strong><font size=2.5 color=red<em>$errorMessage</em></font></strong></html>"
set status 0
} elseif {![isNumeric "$paramValue"]} {
GuidoMessage warning APP_NOT_NUMERIC "[GuidoMessage translate $paramName]"
$overallSlopeAngle setCurrentValue "<html><strong><font size=2.5 color=red<em>$errorMessage</em></font></strong></html>"
set status 0
}
return $status
}
proc getOverallSlopeAngle {} {
global auto_berm_width
global auto_berm_frequency
global auto_bench_height
global auto_slope_angle
global overallSlopeAngle
set bermWidth [$auto_berm_width getCurrentValue]
set bermFrequency [$auto_berm_frequency getCurrentValue]
set benchHeight [$auto_bench_height getCurrentValue]
set slopeAngle [$auto_slope_angle getCurrentValue]
if {![validateAutoExpansionParameters "[$auto_berm_width getLabelText]" "$bermWidth"]} {
return
}
if {![validateAutoExpansionParameters "[$auto_berm_frequency getLabelText]" "$bermFrequency"]} {
return
}
if {![validateAutoExpansionParameters "[$auto_bench_height getLabelText]" "$benchHeight"]} {
return
}
if {![validateAutoExpansionParameters "[$auto_slope_angle getLabelText]" "$slopeAngle"]} {
return
}
if {$bermFrequency == 0 || $slopeAngle == 0.0} {
set overall_slope_angle $slopeAngle
} else {
set overall_slope_angle [expr atan((abs($benchHeight) * $bermFrequency) / ($bermWidth + abs($benchHeight) * $bermFrequency / tan($slopeAngle * 3.1415927 / 180.0))) * 180.0 / 3.1415927]
}
set val [format %.1f $overall_slope_angle]
$overallSlopeAngle setCurrentValue $val
}
proc get_triobject_trisolation_details_for_multipleDTMs1 {location object_num trisolation_num } {
if { [string length $location] > 0 } {
set currentObjectId [$object_num getCurrentValue]
set currentTrisolId [$trisolation_num getCurrentValue]
set buffer [GuidoExecServer GetObjectsTrisolationsForMultipleDTMS [subst {FileName = "$location" CurrentObjectId = "$currentObjectId" CurrentTrisolId = "$currentTrisolId"}]]
set status [GuidoGetParamBufferValue $buffer status]
if {$status >= 0} {
set num_triobject [GuidoGetParamBufferValue $buffer "num_triobject"]
set num_trisolation [GuidoGetParamBufferValue $buffer "num_trisolation"]
set formRedisplayed [GuidoGetParamBufferValue $buffer "form_redisplayed"]
set objvalues ""
set trisolvalues ""
$object_num removeAllItems
$trisolation_num removeAllItems
if {"$formRedisplayed" == "false"} {
set triobject_id [GuidoGetParamBufferValue $buffer "triobject_id"]
set trisolation_id [GuidoGetParamBufferValue $buffer "trisolation_id"]
for {set i 0} {$i < $num_triobject} {incr i} {
set objid [lindex $triobject_id $i]
lappend objvalues $objid
}
$object_num setNullAllowed false
$object_num setExclusive true
eval [concat {$object_num} {setValues} $objvalues ]
$object_num setCurrentValue [$object_num getItemAt 0]
for {set i 0} {$i < $num_trisolation} {incr i} {
set trisolid [lindex $trisolation_id $i]
lappend trisolvalues $trisolid
}
$trisolation_num setNullAllowed false
$trisolation_num setExclusive true
eval [concat {$trisolation_num} {setValues} $trisolvalues ]
$trisolation_num setCurrentValue [$trisolation_num getItemAt 0]
} else {
set old_triobject_id [GuidoGetParamBufferValue $buffer "old_triobject_id"]
set old_trisolation_id [GuidoGetParamBufferValue $buffer "old_trisolation_id"]
for {set i 0} {$i < $num_triobject} {incr i} {
set objid [lindex $old_triobject_id $i]
lappend objvalues $objid
}
$object_num setNullAllowed false
$object_num setExclusive true
eval [concat {$object_num} {setValues} $objvalues ]
$object_num setCurrentValue $currentObjectId
for {set i 0} {$i < $num_trisolation} {incr i} {
set trisolid [lindex $old_trisolation_id $i]
lappend trisolvalues $trisolid
}
$trisolation_num setNullAllowed false
$trisolation_num setExclusive true
eval [concat {$trisolation_num} {setValues} $trisolvalues ]
$trisolation_num setCurrentValue $currentTrisolId
}
}
} else {
$object_num removeAllItems
$trisolation_num removeAllItems
$object_num setExclusive false
$object_num setCurrentValue ""
$trisolation_num setExclusive false
$trisolation_num setCurrentValue ""
}
}
proc triobjectChanged { dtm_loc objectId trisolationId } {
set location [ $dtm_loc getCurrentValue ]
set convfileloc "[string tolower $location]"
if { [string first ".dtm" $convfileloc ] == -1 } {
append filename $location ".dtm"
} else {
set filename $location
}
if { [string length $filename] > 4 } {
getTriobjectChanged $filename $objectId $trisolationId
}
}
proc getTriobjectChanged { dtm_loc objectId trisolationId } {
set obj_num [$objectId getCurrentValue]
set filename $dtm_loc
set buffer [GuidoExecServer TriobjectChanged [subst {FileName = "$filename" CurrentTriobject = "$obj_num" }]]
set status [GuidoGetParamBufferValue $buffer status]
if {$status >= 0} {
set trisolation_id [GuidoGetParamBufferValue $buffer "trisolation_id"]
set num_trisolation [GuidoGetParamBufferValue $buffer "num_trisolation"]
set trisolvalues ""
$trisolationId removeAllItems
for {set i 0} {$i < $num_trisolation} {incr i} {
set trisolid [lindex $trisolation_id $i]
lappend trisolvalues $trisolid
}
$trisolationId setNullAllowed false
$trisolationId setExclusive true
eval [concat {$trisolationId} {setValues} $trisolvalues ]
$trisolationId setCurrentValue [$trisolationId getItemAt 0]
$objectId setNullAllowed false
}
}
proc slopeAngleValueCallback {} {
global benchlist
global slope_angle
global slope_method
global berm_width
global berm
if {![info exists benchlist]} {
return
}
set numberOfRows [$benchlist getRowCount]
for {set row 0} {$row < $numberOfRows} {incr row} {
if {"[$slope_method getCurrentValue]" == "block model"} {
$slope_angle setInputAllowed $row false
$berm_width setInputAllowed $row false
} elseif {"[$slope_method getCurrentValue]" == "fixed values"} {
$slope_angle setInputAllowed $row true
$berm_width setInputAllowed $row true
}
}
}
proc bermWidthCallback {benchlist slope_method berm_width} {
global berm
global slope_angle
if {![info exists berm]} {
return
}
set currRow [$benchlist getEditingRow]
if {"[$slope_method getCurrentValue]" == "block model"} {
$berm_width setInputAllowed $currRow false
$slope_angle setInputAllowed $currRow false
} elseif {"[$slope_method getCurrentValue]" == "fixed values" && "[$berm getCurrentValue $currRow]" == "N"} {
$berm_width setInputAllowed $currRow false
}
}
proc slopeAngleCallback {benchlist slope_method} {
global slope_angle
if {![info exists slope_angle]} {
return
}
set currRow [$benchlist getEditingRow]
if {"[$slope_method getCurrentValue]" == "block model"} {
$slope_angle setInputAllowed $currRow false
} elseif {"[$slope_method getCurrentValue]" == "fixed values"} {
$slope_angle setInputAllowed $currRow true
}
}
proc validateParameters {} {
global bench_height
global expand_method
global benchlist
global target_elevation
global design_method
global max_z
set blankHeights ""
set blankElevations ""
set noOfRows [$benchlist getRowCount]
if {"[$design_method getCurrentValue]" != "Detailed bench list"} {
return true
}
for {set i 0} {$i < $noOfRows} {incr i} {
set expansionMethod [$expand_method getCurrentValue $i]
set benchHeight [$bench_height getCurrentValue $i]
if {"$expansionMethod" == "by height" && ("$benchHeight" == "" || $benchHeight == 0)} {
if {[string length $blankHeights] != 0} {
append blankHeights ","
}
set benchNumber [expr $i + 1]
append blankHeights $benchNumber
}
}
if {"$blankHeights" != ""} {
GuidoMessage warning BLANK_BENCH_HEIGHTS $blankHeights
return false;
}
for {set i 0} {$i < $noOfRows} {incr i} {
set expansionMethod [$expand_method getCurrentValue $i]
set targetElevation [$target_elevation getCurrentValue $i]
if {"$expansionMethod" == "to elevation" && "$targetElevation" == ""} {
if {[string length $blankElevations] != 0} {
append blankElevations ","
}
set benchNumber [expr $i + 1]
append blankElevations $benchNumber
}
}
if {"$blankElevations" != ""} {
GuidoMessage warning BLANK_TARGET_ELEVATIONS $blankElevations
return false;
}
set firstIsPositive false
set benchHeight [$bench_height getCurrentValue 0]
if {$benchHeight > 0.0} {
set firstIsPositive true
}
for {set i 1} {$i < $noOfRows} {incr i} {
set benchHeight [$bench_height getCurrentValue $i]
if {$benchHeight != ""} {
if {($firstIsPositive == "true" && $benchHeight < 0.0) || ($firstIsPositive == "false" && $benchHeight > 0.0)} {
GuidoMessage warning BENCH_HEIGHTS_CONSISTENCY_ERR
return false
}
}
}
set lastZ [$max_z getCurrentValue]
set firstIsPositive false
set targetElevation [$target_elevation getCurrentValue 0]
set benchHeight [expr $targetElevation - $lastZ]
if {$benchHeight > 0.0} {
set firstIsPositive true
}
set lastZ $targetElevation
for {set i 1} {$i < $noOfRows} {incr i} {
set targetElevation [$target_elevation getCurrentValue $i]
if {$targetElevation != ""} {
set benchHeight [expr $targetElevation - $lastZ]
set lastZ $targetElevation
if {($firstIsPositive == "true" && $benchHeight < 0.0) || ($firstIsPositive == "false" && $benchHeight > 0.0)} {
GuidoMessage warning BENCH_ELEVATION_CONSISTENCY_ERR
return false
}
}
}
return true
}
proc populateBenchListDetails {filename} {
global benchlist
global expand_method
global slope_angle
global bench_height
global target_elevation
global dtmloc
global object_id
global trisolation_id
global berm
global berm_width
global bench_creation_method
global berm_z_limit
global delta_z_limit
global horizontal_direction
global slope_method
global slope_attribute
global berm_attribute
global bench_gradient
set fileName [$filename getCurrentValue]
if {"$fileName" != ""} {
set buffer [ GuidoExecServer populateBenchListDetails [subst {file = "$fileName" }] ]
set status [GuidoGetParamBufferValue $buffer status]
if {$status >= 0} {
set field [ GuidoGetParamBufferValue $buffer "horiz_direction" ]
$horizontal_direction setCurrentValue $field
set field [ GuidoGetParamBufferValue $buffer "slope_method" ]
$slope_method setCurrentValue $field
set field [ GuidoGetParamBufferValue $buffer "slope_attribute" ]
$slope_attribute setCurrentValue $field
set field [ GuidoGetParamBufferValue $buffer "berm_attribute" ]
$berm_attribute setCurrentValue $field
set field [ GuidoGetParamBufferValue $buffer "bench_gradient" ]
$bench_gradient setCurrentValue $field
set numberOfRows [ GuidoGetParamBufferValue $buffer "BenchCount" ]
$benchlist setInitialRows $numberOfRows 1 50
for {set row 0} {$row < $numberOfRows} {incr row} {
set field [ GuidoGetParamBufferValue $buffer "expand_method($row)" ]
$expand_method setCurrentValue $row $field
set field [ GuidoGetParamBufferValue $buffer "slope_angle($row)" ]
$slope_angle setCurrentValue $row $field
set field [ GuidoGetParamBufferValue $buffer "bench_height($row)" ]
$bench_height setCurrentValue $row $field
set field [ GuidoGetParamBufferValue $buffer "target_elevation($row)" ]
$target_elevation setCurrentValue $row $field
set field [ GuidoGetParamBufferValue $buffer "dtmloc($row)" ]
$dtmloc setCurrentValue $row $field
set field [ GuidoGetParamBufferValue $buffer "object_id($row)" ]
$object_id setCurrentValue $row $field
set field [ GuidoGetParamBufferValue $buffer "trisolation_id($row)" ]
$trisolation_id setCurrentValue $row $field
set field [ GuidoGetParamBufferValue $buffer "berm($row)" ]
$berm setCurrentValue $row $field
set field [ GuidoGetParamBufferValue $buffer "berm_width($row)" ]
$berm_width setCurrentValue $row $field
set field [ GuidoGetParamBufferValue $buffer "bench_creation_method($row)" ]
$bench_creation_method setCurrentValue $row $field
set field [ GuidoGetParamBufferValue $buffer "berm_z_limit($row)" ]
$berm_z_limit setCurrentValue $row $field
set field [ GuidoGetParamBufferValue $buffer "delta_z_limit($row)" ]
$delta_z_limit setCurrentValue $row $field
}
}
} else {
GuidoMessage warning BLANK_FILE_NAME
return false
}
}
proc validateAutoBenchHeight {auto_bench_height } {
set value [$auto_bench_height getCurrentValue]
if {$value == 0.0} {
GuidoMessage warning ZERO_NOT_ALLOWED
return false
}
}
GuidoForm MultiBenchDesign {
proc ssiforminitialisedvalue { } {
global ssiforminitialised
return $ssiforminitialised
}
set ssiforminitialised 0
-action initial {[getObjectsTrisolationsForMultipleDTMS $dtmloc $object_id $trisolation_id]}
-default_buttons
-label "Multi bench design"
-layout BoxLayout Y_AXIS
-tip "MBD_TIP_001"
GuidoPanel frmmbd_1 {
-layout BoxLayout X_AXIS
-border etched true
GuidoPanel frmmbd_2 {
-layout BoxLayout Y_AXIS
GuidoLabel frmmbd_3 {
-label String
}
GuidoLabel frmmbd_4 {
-label Segment
}
GuidoLabel frmmbd_5 {
-label "Minimum Z value"
}
GuidoLabel frmmbd_6 {
-label "Maximum Z value"
}
}
GuidoFiller frmmbd_7 {
-width 1
}
GuidoPanel frmmbd_8 {
-layout BoxLayout Y_AXIS
GuidoLabel string {
-width 5
}
GuidoLabel segment {
-width 5
}
GuidoLabel min_z {
-width 5
}
GuidoLabel max_z {
-width 5
}
}
GuidoFiller frmmbd_9 {
-height 1
}
GuidoPanel frmmbd_10 {
-layout CentreLineLayout
GuidoComboBox design_method {
-display_length 13
-format none
-default "Detailed bench list"
-label "Design method"
-max_length 30
-null false
-value_in "Detailed bench list" "Auto expand by height" "Auto expand to elevation" "Auto expand to DTM"
-translate lower
}
GuidoButtonGroupPanel horizontal_direction {
-label "Horizontal direction"
-layout BoxLayout Y_AXIS
-tip "05009_TIP_006"
GuidoRadioButton expand {
-caption Expand
-selected_value expand
}
GuidoRadioButton contract {
-caption Contract
-selected_value contract
}
}
}
GuidoFiller frmmbd_11 {
-width 2
}
GuidoPanel frmmbd_12 {
-layout CentreLineLayout
GuidoButtonGroupPanel slope_method {
-layout BoxLayout Y_AXIS
-label "Define slope & berm method"
-tip "MBD_TIP_002"
-action valueChanged {[slopeAngleValueCallback]}
-action initial {[slopeAngleValueCallback]}
GuidoRadioButton fixedValues {
-caption "Fixed values"
-selected_value "fixed values"
}
GuidoRadioButton blockModel {
-caption "Block model"
-selected_value "block model"
}
}
GuidoField bench_gradient {
-display_length 15
-format double
-label "Berm gradient (%)"
-max_length 10
-tip "MBD_TIP_004"
-translate upper
}
}
GuidoFiller frmmbd_13 {
-width 2
}
GuidoPanel frmmbd_14 {
-border etched true
-label "Define attributes for slope angle & berm width"
-layout CentreLineLayout
GuidoComboBox slope_attribute {
-display_length 12
-tip 05004_TIP_1
-format none
-label "Slope angle attribute"
-max_length BM_MAX_ATT_NAME_LEN
-null false
-dependency {"[$slope_method getCurrentValue]" == "block model"}
-no_mlt
-exclusive true
-translate lower
}
GuidoComboBox berm_attribute {
-display_length 12
-tip 05004_TIP_2
-format none
-label "Berm width attribute"
-max_length BM_MAX_ATT_NAME_LEN
-null false
-dependency {"[$slope_method getCurrentValue]" == "block model"}
-exclusive true
-translate lower
}
}
}
GuidoFiller frmmbd_15 {
-height 0.5
}
GuidoPanel overlay_panel {
-layout OverlayLayout
GuidoPanel frmmbd_16 {
-layout BoxLayout Y_AXIS
-label "Bench list details"
-border etched true
-dependency {"[$design_method getCurrentValue]" == "Detailed bench list"}
GuidoScrollPane frmmbd_17 {
-height 15
GuidoTable benchlist {
-instances 1 1 50
-interactive true
-action valueChanged {[slopeAngleValueCallback]}
-action initial {[slopeAngleValueCallback]}
GuidoComboBox expand_method {
-action focusGained {[
set ssiforminitialised 1
]}
-default "by height"
-display_length 6
-format none
-label "Expand method"
-validation {[validateParameters]}
-action initial {[if {[string length [$expand_method getCurrentValueRelative -1]] > 0 && [ssiforminitialisedvalue]} { $expand_method setCurrentValue [$expand_method getCurrentValueRelative -1] }]}
-max_length 2
-null false
-value_in "by height" "to elevation" "to DTM"
-tip "MBD_TIP_005"
}
GuidoField slope_angle {
-action focusGained {[
set ssiforminitialised 1
]}
-action initial {[slopeAngleCallback $benchlist $slope_method]}
-action initial {[if {[string length [$slope_angle getCurrentValueRelative -1]] > 0 && [ssiforminitialisedvalue]} { $slope_angle setCurrentValue [$slope_angle getCurrentValueRelative -1] }]}
-display_length 5
-default 0.2
-format double
-label "Slope angle"
-low_bound 0.2
-high_bound 89.9
-max_length 32
-translate none
-tip "MBD_TIP_006"
}
GuidoField bench_height {
-action focusGained {[
set ssiforminitialised 1
]}
-action initial {[if {[string length [$bench_height getCurrentValueRelative -1]] > 0 && [ssiforminitialisedvalue]} { $bench_height setCurrentValue [$bench_height getCurrentValueRelative -1] }]}
-display_length 5
-format double
-label "Bench height"
-max_length 32
-translate none
-tip "MBD_TIP_009"
}
GuidoField target_elevation {
-action focusGained {[
set ssiforminitialised 1
]}
-display_length 5
-format double
-action initial {[if {[string length [$target_elevation getCurrentValueRelative -1]] > 0 && [ssiforminitialisedvalue]} { $target_elevation setCurrentValue [$target_elevation getCurrentValueRelative -1] }]}
-label "Target Z"
-max_length 32
-translate none
-tip "MBD_TIP_010"
}
GuidoFileBrowserField dtmloc {
-dependency {"[ $expand_method getCurrentValue]" == "to DTM"}
-action valueChanged { [ getObjectsTrisolationsForMultipleDTMS $dtmloc $object_id $trisolation_id]}
-action initial {[if {[string length [$dtmloc getCurrentValueRelative -1]] > 0 && [ssiforminitialisedvalue]} { $dtmloc setCurrentValue [$dtmloc getCurrentValueRelative -1] }]}
-display_length 15
-label "DTM filename"
-file_mask *.dtm
-format none
-max_length 252
-tip "MBD_TIP_007"
-translate none
-next_focus object_id
-null false
}
GuidoComboBox object_id {
-dependency {"[ $expand_method getCurrentValue]" == "to DTM"}
-action valueChanged {[triobjectChanged $dtmloc $object_id $trisolation_id]}
-action initial {[if {[string length [$object_id getCurrentValueRelative -1]] > 0 && [ssiforminitialisedvalue]} { $object_id setCurrentValue [$object_id getCurrentValueRelative -1] }]}
-display_length 4
-label Object
-format integer
-default 1
-max_length 32
-translate none
-tip "04949_TIP_1"
}
GuidoComboBox trisolation_id {
-dependency {"[ $expand_method getCurrentValue]" == "to DTM"}
-display_length 4
-action initial {[if {[string length [$trisolation_id getCurrentValueRelative -1]] > 0 && [ssiforminitialisedvalue]} { $trisolation_id setCurrentValue [$trisolation_id getCurrentValueRelative -1] }]}
-label Trisolation
-format integer
-default 1
-max_length 32
-translate none
-tip "04949_TIP_2"
}
GuidoCheckBox berm {
-action focusGained {[
set ssiforminitialised 1
]}
-action valueChanged {[bermWidthCallback $benchlist $slope_method $berm_width]}
-action initial {[bermWidthCallback $benchlist $slope_method $berm_width]}
-action initial {[if {[string length [$berm getCurrentValueRelative -1]] > 0 && [ssiforminitialisedvalue]} { $berm setCurrentValue [$berm getCurrentValueRelative -1] }]}
-default "N"
-label Berm
-selected_value Y
-tip "MBD_TIP_008"
-unselected_value N
}
GuidoField berm_width {
-dependency {"[ $berm getCurrentValue]" == "Y"}
-default 5
-action initial {[if {[string length [$berm_width getCurrentValueRelative -1]] > 0 && [ssiforminitialisedvalue]} { $berm_width setCurrentValue [$berm_width getCurrentValueRelative -1] }]}
-display_length 5
-format double
-label "Berm width"
-low_bound 0.1
-max_length 10
-tip "05007_TIP_005"
-translate upper
}
GuidoComboBox bench_creation_method {
-dependency {"[ $berm getCurrentValue]" == "Y"}
-display_length 13
-action initial {[if {[string length [$bench_creation_method getCurrentValueRelative -1]] > 0 && [ssiforminitialisedvalue]} { $bench_creation_method setCurrentValue [$bench_creation_method getCurrentValueRelative -1] }]}
-format none
-label "Berm creation method"
-max_length 28
-null false
-tip "05008_TIP_002"
-value_in always "delta z to elevation >=" "delta z up to elevation >=" "delta z down to elevation >=" "delta z to elevation <=" "delta z up to elevation <=" "delta z down to elevation <=" "delta z to dtm >=" "delta z up to dtm >=" "delta z down to dtm >=" "delta z to dtm <=" "delta z up to dtm <=" "delta z down to dtm <="
}
GuidoField berm_z_limit {
-dependency {"[ $berm getCurrentValue]" == "Y"}
-default 0
-action initial {[if {[string length [$berm_z_limit getCurrentValueRelative -1]] > 0 && [ssiforminitialisedvalue]} { $berm_z_limit setCurrentValue [$berm_z_limit getCurrentValueRelative -1] }]}
-display_length 6
-format double
-label "Berm Z limit"
-max_length 16
-null false
-tip "05008_TIP_003"
-translate upper
}
GuidoField delta_z_limit {
-default 0
-dependency {"[ $bench_creation_method getCurrentValue]" != "always"}
-display_length 6
-action initial {[if {[string length [$delta_z_limit getCurrentValueRelative -1]] > 0 && [ssiforminitialisedvalue]} { $delta_z_limit setCurrentValue [$delta_z_limit getCurrentValueRelative -1] }]}
-format double
-label "Delta Z limit"
-low_bound 0.000000
-max_length 10
-null false
-tip "05008_TIP_008"
-translate upper
}
}
}
GuidoFiller frmmbd_18 {
-height 0.2
}
GuidoPanel frmmbd_19 {
-layout BoxLayout X_AXIS
GuidoPanel frmmbd_20 {
-layout CentreLineLayout
GuidoFileBrowserField filename {
-display_length 32
-file_mask *.bls
-format none
-label "Bench list filename"
-max_length FIO_MAX_LOCATION_LENGTH
-tip "MBD_TIP_011"
-translate none
}
}
GuidoFiller frmmbd_21 {
-width 1
}
GuidoPanel frmmbd_22 {
-layout CentreLineLayout
GuidoButton load {
-caption Load
-selected_value load
-visible true
-action valueChanged {[populateBenchListDetails $filename]}
}
}
GuidoFiller frmmbd_23 {
-width 1
}
GuidoPanel frmmbd_24 {
-layout CentreLineLayout
GuidoButton save {
-caption Save
-legacy_button
-selected_value save
-visible true
}
}
}
}
GuidoFiller frmmbd_25 {
-height 1
}
GuidoPanel frmmbd_26 {
-border etched true
-label "Auto expand parameters"
-dependency {"[ $design_method getCurrentValue]" != "Detailed bench list"}
-layout BoxLayout X_AXIS
GuidoPanel frmmbd_27 {
-layout CentreLineLayout
GuidoField number_of_benches {
-dependency {"[ $design_method getCurrentValue]" == "Auto expand by height"}
-display_length 32
-low_bound 1
-high_bound 50
-format integer
-label "Number of benches"
-max_length 32
-translate none
-tip "MBD_NUM_BENCHES_TIP"
}
GuidoFiller filler {
-height 0.5
}
GuidoFiller filler {
-height 0.5
}
GuidoField auto_elevation {
-dependency {"[ $design_method getCurrentValue]" == "Auto expand to elevation"}
-display_length 32
-format double
-decimals 3
-label "Target Z"
-max_length 32
-translate none
-tip "MBD_AUTO_ELEVATION_TIP"
}
GuidoFiller filler {
-height 0.5
}
GuidoFiller filler {
-height 0.5
}
GuidoField auto_slope_angle {
-dependency {"[ $slope_method getCurrentValue]" == "fixed values" && "[ $design_method getCurrentValue]" != "Detailed bench list"}
-display_length 32
-default 0
-format double
-null false
-label "Slope angle"
-low_bound 0.2
-high_bound 89.9
-action valueChanged {[getOverallSlopeAngle]}
-action initial {[getOverallSlopeAngle]}
-max_length 32
-translate none
-tip "MBD_TIP_006"
}
GuidoFiller filler {
-height 0.5
}
GuidoFiller filler {
-height 0.5
}
GuidoField auto_bench_height {
-validation {[validateAutoBenchHeight $auto_bench_height]}
-display_length 32
-default 1
-format double
-label "Bench height"
-action valueChanged {[getOverallSlopeAngle]}
-max_length 32
-null false
-translate none
-tip "MBD_BENCH_HEIGHT_TIP"
}
GuidoFiller filler {
-height 0.5
}
GuidoFiller filler {
-height 0.5
}
GuidoField auto_berm_frequency {
-default 1
-display_length 32
-format integer
-label "Berm frequency"
-null false
-action valueChanged {[getOverallSlopeAngle]}
-low_bound 0
-high_bound 10
-max_length 32
-tip "MBD_BERM_FREQUENCY_TIP"
}
GuidoFiller filler {
-height 0.5
}
GuidoFiller filler {
-height 0.5
}
GuidoField auto_berm_width {
-dependency {"[ $slope_method getCurrentValue]" == "fixed values" && "[ $design_method getCurrentValue]" != "Detailed bench list"}
-default 5
-display_length 32
-format double
-label "Berm width"
-null false
-low_bound 0.1
-action valueChanged {[getOverallSlopeAngle]}
-max_length 10
-tip "MBD_BERM_WIDTH_TIP"
-translate none
}
GuidoFiller filler11 {
-height 0.5
}
GuidoFiller filler12 {
-height 0.5
}
GuidoFiller filler13 {
-width 10
}
GuidoPanel overallSlopeAnglePanel {
-layout BoxLayout X_AXIS
-border etched true
-dependency {"[ $slope_method getCurrentValue]" == "fixed values"}
GuidoLabel overallSlopeAngleLabel {
-label "Overall slope angle"
-font_style bold
}
GuidoFiller filler14 {
-width 0.5
}
GuidoLabel overallSlopeAngle {
-font_style bold
}
GuidoFiller filler15 {
-width 0.5
}
GuidoLabel overallSlopeAngleUnitLabel {
-label "Degree"
-font_style bold
}
}
}
GuidoFiller filler1 {
-width 2
}
GuidoPanel frmmbd_28 {
-layout CentreLineLayout
GuidoFileBrowserField auto_dtmloc {
-dependency {"[$design_method getCurrentValue]" == "Auto expand to DTM"}
-action valueChanged {[getObjectsTrisolationsForMultipleDTMS $auto_dtmloc $auto_object_id $auto_trisolation_id]}
-display_length 15
-label "DTM filename"
-file_mask *.dtm
-format none
-max_length 252
-tip "MBD_TIP_007"
-translate none
-next_focus object_id
-null false
}
GuidoFiller filler2 {
-height 0.5
}
GuidoFiller filler3 {
-height 0.5
}
GuidoComboBox auto_object_id {
-dependency {"[$design_method getCurrentValue]" == "Auto expand to DTM"}
-action valueChanged {[triobjectChanged $auto_dtmloc $auto_object_id $auto_trisolation_id]}
-display_length 4
-label Object
-format integer
-default 1
-exclusive false
-max_length 32
-translate none
-tip "04949_TIP_1"
}
GuidoFiller filler4 {
-height 0.5
}
GuidoFiller filler5 {
-height 0.5
}
GuidoComboBox auto_trisolation_id {
-dependency {"[$design_method getCurrentValue]" == "Auto expand to DTM"}
-display_length 4
-label Trisolation
-exclusive false
-format integer
-default 1
-max_length 32
-translate none
-tip "04949_TIP_2"
}
}
}
}
}
