proc set_traceMode {} { global traceMode prompt set w [toplevel .set_TraceMode -borderwidth 10] wm geometry $w +500+500 set prompt(result) "" set b [frame $w.buttons] set ef1 [frame $w.ef1] pack $w.ef1 -side top -pady 10 pack $w.buttons -side top -pady 10 label $w.label1 -text "MSC Node Number:" -width 20 entry $w.entry1 -textvariable prompt(result) -width 4 pack $w.label1 -side left -in $w.ef1 pack $w.entry1 -side left -in $w.ef1 proc Disable1 {} { uplevel 1 {$w.entry1 configure -state disabled} } radiobutton $w.buttons.lab -text "Lab Mode" -variable traceMode -value LAB radiobutton $w.buttons.field -text "Field Mode" -variable traceMode -value FIELD -command { Disable1 } $w.buttons.field select button $w.buttons.read -text OK -command {set prompt(ok) 1} pack $w.buttons.read $w.buttons.lab $w.buttons.field -side bottom -in $w.buttons # Now read the user input. bind $w {set prompt(ok) 0} raise $w.entry1 focus $w.entry1 grab $w while {1} { tkwait variable prompt(ok) if {$prompt(ok) == 1} { if { $prompt(result) <= 0 || $prompt(result) == "" } { tk_messageBox -icon info -message "MSC Node # Must be >0" focus $w.entry1 } else { set retVal $prompt(result) break } } else { set retVal {} break } } $w.entry1 delete 0 end destroy $w return $retVal }