diff options
Diffstat (limited to 'vendor/x11iraf/ximtool/gui.bak/global.tcl')
-rw-r--r-- | vendor/x11iraf/ximtool/gui.bak/global.tcl | 147 |
1 files changed, 147 insertions, 0 deletions
diff --git a/vendor/x11iraf/ximtool/gui.bak/global.tcl b/vendor/x11iraf/ximtool/gui.bak/global.tcl new file mode 100644 index 00000000..4908e752 --- /dev/null +++ b/vendor/x11iraf/ximtool/gui.bak/global.tcl @@ -0,0 +1,147 @@ + + +############################################################################## +# Utility Procedures. +############################################################################## + +# Utility procedure to test True/False strings in resources. +proc true {v} {expr {$v == "true" || $v == "True" || $v == "TRUE"}} + +# Utility functions. +proc min {a b} { expr {($a < $b) ? $a : $b} } +proc max {a b} { expr {($a > $b) ? $a : $b} } + +# Global variables. +set version "NOAO/IRAF XImtool Version 1.3EXPORT" + +set winWidth [send imagewin get width ] ;# display window width +set winHeight [send imagewin get height] ;# display window height +set appWidth [send display get width ] ;# application window width +set appHeight [send display get height] ;# application window height +set marker none ;# selected marker +set markno 0 ;# used to name new markers +set ruler none ;# selected ruler +set ruleno 0 ;# used to name new rulers +set blinkFrames "1 2" ;# list of blink frames +set auto_reg 0 + +set panel_up 0 ;# control panel mapped +set help_up 0 ;# help panel mapped +set ism_enable 0 ;# ISM is running +set ism_capable 1 ;# Client is ISM capable +set frameCache(0) "" ;# ISM frame cache + +set ctype "equatorial" ;# default coord type +set eqtype "fk5" ;# default equatorial type + +# Global constants. +set MAX_FRAMES 16 ;# max frame buffers + +# TCL constants +set tcl_precision 8 + + + +# Window resize callbacks. +proc winResize {w width height} { + global winWidth winHeight + + if {$width <= 1 || $height <= 1} \ + return + + set winWidth $width + set winHeight $height +} ; send imagewin addCallback winResize resize + +proc appResize {w width height} \ +{ + global doHcut doVcut cutXPos cutYPos + global appWidth appHeight + + set appWidth $width + set appHeight $height + + catch { + if {$doHcut} { + send hcutPlot clearScreen + hcutInit + send hcutAxes1 redraw ; send hcutAxes2 redraw + cutPlots $cutXPos $cutYPos + } + if {$doVcut} { + send vcutPlot clearScreen + vcutInit + send vcutAxes1 redraw ; send vcutAxes2 redraw + cutPlots $cutXPos $cutYPos + } + } +} ; #send imagewin addCallback appResize resize + + + +# Additional global variables, taking default values from resources. +getResources { + { zoomfactors } + { displayCoords } + { displayPanner } + { displayMagnifier } + { blinkRate } + { pannerArea } + { pannerGeom } + { magnifierArea } + { magnifierGeom } + { wcsboxGeom } + { maxContrast } + { showToolBar } + { showPanelBar } + { warnings } + { centerBoxSize } + { peakCentroid } + { highlight } +} + +set warnings [true $warnings] +set defaultBlinkRate $blinkRate + +# Client state variables (UI parameter objects). Certain of these parameters +# we mirror in Tcl variables here, updating the values with a callback when +# the parameter value changes. Others require special callbacks. + +set frame 1 ;# current display frame +set nframes 0 ;# number of frame buffers +set frames {1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16} ;# list of image frames +set frameWidth 0 ;# frame buffer width, pixels +set frameHeight 0 ;# frame buffer height, pixels +set frameDepth 8 ;# frame buffer pixel size, bits +set cursorMode 0 ;# true when cursor read pending + +foreach i $frames { + set frameZoomX($i) 0 ;# X zoom factor + set frameZoomY($i) 0 ;# Y zoom factor + set frameCenterX($i) 0 ;# X center of field + set frameCenterY($i) 0 ;# Y center of field + set frameScaleX($i) 0 ;# X scale factor + set frameScaleY($i) 0 ;# Y scale factor + set frameOffsetX($i) 0 ;# X register offset + set frameOffsetY($i) 0 ;# Y register offset + set enhancement($i) none ;# colortable enhancement +} + + +#trace variable frameOffsetX w debug_pvar ;# Debug stuff +#trace variable frameOffsetY w debug_pvar +#trace variable frameZoomX w debug_pvar +#trace variable frameZoomY w debug_pvar +#trace variable frameScaleX w debug_pvar +#trace variable frameScaleY w debug_pvar + +proc debug_pvar { name element op } \ +{ + if {$element != ""} { + set name ${name}($element) + } + upvar $name x + puts "Variable $name set to $x" +} + + |