diff options
author | Joseph Hunkeler <jhunkeler@gmail.com> | 2015-07-08 20:46:52 -0400 |
---|---|---|
committer | Joseph Hunkeler <jhunkeler@gmail.com> | 2015-07-08 20:46:52 -0400 |
commit | fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 (patch) | |
tree | bdda434976bc09c864f2e4fa6f16ba1952b1e555 /vendor/x11iraf/guidemo/panel2.gui | |
download | iraf-linux-fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4.tar.gz |
Initial commit
Diffstat (limited to 'vendor/x11iraf/guidemo/panel2.gui')
-rw-r--r-- | vendor/x11iraf/guidemo/panel2.gui | 820 |
1 files changed, 820 insertions, 0 deletions
diff --git a/vendor/x11iraf/guidemo/panel2.gui b/vendor/x11iraf/guidemo/panel2.gui new file mode 100644 index 00000000..a4c997c3 --- /dev/null +++ b/vendor/x11iraf/guidemo/panel2.gui @@ -0,0 +1,820 @@ +# PANEL.GUI -- Test GUI for the frame and layout widgets. +# This gui can be run as "cl> hello gui=panel.gui". + +reset-server + +appInitialize panel2 Panel2 { + *objects:\ + toplevel Layout panel \ + panel Group viewBox \ + panel Group enhancementBox \ + panel Group blinkBox \ + panel Group optionsBox \ + panel Frame controlBox \ +\ + viewBox Layout view \ + view Group frameSelect \ + frameSelect Layout frame \ + frame TextToggle frame1 \ + frame TextToggle frame2 \ + frame TextToggle frame3 \ + frame TextToggle frame4 \ + frame Command prevFrame \ + frame Command nextFrame \ + view Frame frameDataBox \ + frameDataBox TextBox frameData \ + view Group zoomBox \ + zoomBox Layout zoom \ + zoom TextButton toggleZoom \ + zoom TextButton zoomIn \ + zoom Command x1 \ + zoom Command z2 \ + zoom Command z3 \ + zoom Command z4 \ + zoom Command z5 \ + zoom Command z8 \ + zoom TextButton zoomOut \ + zoom TextButton centerFrame \ + zoom Command d2 \ + zoom Command d3 \ + zoom Command d4 \ + zoom Command d5 \ + zoom Command d8 \ + view Layout viewButtons \ + viewButtons Command clearFrame \ + viewButtons Command flipX \ + viewButtons Command flipY \ + viewButtons Command flipXY \ + viewButtons Command fitFrame \ +\ + enhancementBox Layout enhancement \ + enhancement Scrollbar2 colorlistScroll \ + enhancement Frame colorlistFrame \ + colorlistFrame Porthole colorlistPort \ + colorlistPort MultiList colorlist \ + enhancement Frame colordataFrame \ + colordataFrame TextBox colordata \ + enhancement Label contrastLabel \ + enhancement Slider2d contrastSlider \ + enhancement Label brightnessLabel \ + enhancement Slider2d brightnessSlider \ + enhancement Command invertButton \ + enhancement Command optimizeButton \ +\ + blinkBox Layout blink \ + blink Label blinkFramesLabel \ + blink Command blinkFrame1 \ + blink Command blinkFrame2 \ + blink Command blinkFrame3 \ + blink Command blinkFrame4 \ + blink Command blinkReset \ + blink Label blinkRateLabel \ + blink Frame BRframe \ + BRframe Layout BRlayout \ + BRlayout Arrow BRdecrease \ + BRlayout TextBox BRtext \ + BRlayout Arrow BRincrease \ + blink Command registerButton \ + blink Command matchButton \ + blink Toggle blinkButton \ +\ + optionsBox TextToggle pannerButton \ + optionsBox TextToggle coordsBoxButton \ + optionsBox TextToggle autoscaleButton \ + optionsBox TextToggle antialiasButton \ + optionsBox TextToggle tileFramesButton \ + optionsBox TextToggle warningsButton \ +\ + controlBox Layout control \ + control Command initializeButton \ + control Command normalizeButton \ + control Command doneButton \ +\ + toplevel TransientShell warning \ + warning Layout warn \ + warn Frame warnFrame \ + warnFrame Layout WFlayout \ + WFlayout Icon warnIcon \ + WFlayout TextBox warnText \ + warn TextButton warnOk \ + warn TextButton warnCancel \ + warn TextButton warnHelp + + *background: gray + *foreground: black + *TextBox.background: gray60 + *internalWidth: 0 + *borderWidth: 0 + *Command.highlightThickness: 0 + + *TextBox.font: 7x13bold + *TextToggle.font: -adobe-times-medium-r-normal-*-12-*-*-*-*-*-iso8859-1 + *Command.font: -adobe-times-medium-r-normal-*-12-*-*-*-*-*-iso8859-1 + *Toggle.font: -adobe-times-medium-r-normal-*-12-*-*-*-*-*-iso8859-1 + *Label.font: -*-helvetica-medium-r-normal-*-12-*-iso8859-1 + *MultiList.font: -adobe-times-medium-r-normal-*-12-*-*-*-*-*-iso8859-1 + *toggleZoom.font: -*-helvetica-medium-r-normal-*-12-*-iso8859-1 + *centerFrame.font: -*-helvetica-medium-r-normal-*-12-*-iso8859-1 + *zoom*Command.font: 7x13bold + *blinkFrame1.font: 7x13bold + *blinkFrame2.font: 7x13bold + *blinkFrame3.font: 7x13bold + *blinkFrame4.font: 7x13bold + + *panel.debug: False + *panel.layout: vertical { \ + 5 < -5 > \ + horizontal { \ + -1 \ + viewBox < +inf -inf * > \ + -1 \ + } \ + 5 < -5 > \ + horizontal { \ + -1 \ + enhancementBox < +inf -inf * +inf -inf > \ + -1 \ + vertical { \ + -1 \ + blinkBox < * +inf -inf > \ + -1 \ + optionsBox < * +inf -inf > \ + -1 \ + } \ + -1 \ + } \ + controlBox < +inf * > \ + } + + ! VIEW + ! ------------------ + *viewBox.label: View + *viewBox.location: 0 0 400 0 + *viewBox.shrinkToFit: True + *viewBox.outerOffset: 5 + + *view.debug: False + *view.layout: vertical { \ + 5 < +inf -5 > \ + horizontal { \ + -1 \ + frameSelect \ + -1 \ + vertical { \ + 5 < -5 > \ + frameDataBox < +inff -100% * +inff -100% > \ + 5 < -5 > \ + } \ + -1 \ + zoomBox \ + -1 \ + } \ + 1 < +inf > \ + viewButtons < +inf -inf * +inf -inf > \ + 5 < +inf -5 > \ + } + + *frameDataBox.frameType: sunken + *frameDataBox.frameWidth: 2 + *frameData.width: 130 + *frameData.height: 50 + *frameData.label:\ + -- Frame 1 --\nX center: 123.45\nY center: 345.67\nX scale: 4\nY scale: 4 + + *frameSelect.location: 0 0 72 0 + *frameSelect.shrinkToFit: True + *frameSelect.outerOffset: 5 + *frameSelect.innerOffset: 5 + *frameSelect.frameWidth: 2 + *frameSelect*offIcon: diamond0s + *frameSelect*onIcon: diamond1s + *frameSelect*highlightColor: blue + *frameSelect.label: Frame: + + *frame.debug: False + *frame.layout: vertical { \ + frame1 < +inf * > \ + frame2 < +inf * > \ + frame3 < +inf * > \ + frame4 < +inf * > \ + 10 < +inf -10 > \ + horizontal { \ + -1 \ + prevFrame \ + 10 < +inf -5 > \ + nextFrame \ + -1 \ + } \ + -1 \ + } + + *frame*location: 0 0 10 20 + *frame*alignment: left + *frame*frameWidth: 0 + *frame*highlightThickness: 0 + *frame*frame1.label: \ 1\ \ + *frame*frame2.label: \ 2\ \ + *frame*frame3.label: \ 3\ \ + *frame*frame4.label: \ 4\ \ + *frame*Command.width: 24 + *frame*prevFrame.label: xx + *frame*nextFrame.label: xx + + *zoomBox.label: Zoom: + *zoomBox.location: 0 0 160 127 + *zoomBox.outerOffset: 5 + *zoomBox.shrinkToFit: True + + *zoom.debug: False + *zoom*internalWidth: 4 + *zoom.layout: vertical { \ + space = ((50% of width zoom) - (50% of width z5)) \ + 1 < +inf > \ + horizontal { \ + vertical { \ + toggleZoom < +inf * +inf > \ + 2 \ + } \ + 2 \ + vertical { \ + 2 < +inf > \ + z5 \ + 1 < +inf > \ + z3 \ + 0 < +inf > \ + } \ + 2 \ + vertical { \ + zoomIn < +inf * +inf > \ + 2 \ + } \ + } \ + 1 < +inf > \ + horizontal { \ + 2 < +inf > \ + d8 d4 d2 x1 z2 z4 z8 \ + 2 < +inf > \ + } \ + 1 < +inf > \ + horizontal { \ + vertical { \ + 2 \ + zoomOut < +inf * +inf > \ + } \ + 2 \ + vertical { \ + 0 < +inf > \ + d3 \ + 1 < +inf > \ + d5 \ + 2 < +inf > \ + } \ + 2 \ + vertical { \ + 2 \ + centerFrame < +inf * +inf > \ + } \ + } \ + 1 < +inf > \ + } + + *toggleZoom.label: Toggle\nZoom + *toggleZoom.outerOffset: 0 + *toggleZoom.width: 30 + *toggleZoom.height: 25 + + *zoomIn.label: Zoom\nIn + *zoomIn.outerOffset: 0 + *zoomIn.width: 30 + *zoomIn.height: 25 + + *x1.label: 1 + *z2.label: 2 + *z3.label: 3 + *z4.label: 4 + *z5.label: 5 + *z8.label: 8 + + *zoomIn.foreground: royalBlue3 + *z4.foreground: royalBlue3 + *z5.foreground: royalBlue3 + *z8.foreground: royalBlue3 + *z2.foreground: royalBlue3 + *z3.foreground: royalBlue3 + + *zoomOut.label: Zoom\nOut + *zoomOut.outerOffset: 0 + *zoomOut.width: 30 + *zoomOut.height: 25 + + *centerFrame.label: Center + *centerFrame.outerOffset: 0 + *centerFrame.width: 30 + *centerFrame.height: 25 + + *d2.label: 2 + *d3.label: 3 + *d4.label: 4 + *d5.label: 5 + *d8.label: 8 + + *zoomOut.foreground: mediumVioletRed + *d2.foreground: mediumVioletRed + *d3.foreground: mediumVioletRed + *d4.foreground: mediumVioletRed + *d5.foreground: mediumVioletRed + *d8.foreground: mediumVioletRed + + *viewButtons.location: 0 0 100 80 + *viewButtons.debug: False + *viewButtons.layout: horizontal { \ + 5 < -2 > \ + flipX < +inf * > \ + 5 < -2 > \ + flipY < +inf * > \ + 5 < -2 > \ + flipXY < +inf * > \ + 5 < -2 > \ + clearFrame < +inf * > \ + 5 < -2 > \ + fitFrame < +inf * > \ + 5 < -2 > \ + } + + *nextFrame.label: Next Frame + *prevFrame.label: Previous Frame + *fitFrame.label: Fit Frame + *clearFrame.label: Clear Frame + *flipX.label: Flip X + *flipY.label: Flip Y + *flipXY.label: Flip XY + + + ! ENHANCEMENT + ! ------------------ + *enhancementBox.label: Enhancement + *enhancementBox.location: 0 0 100 0 + *enhancementBox.shrinkToFit: True + *enhancementBox.outerOffset: 5 + + *enhancement.debug: False + *enhancement.layout: vertical { \ + 3 < -3 > \ + horizontal { \ + 2 < -2 > \ + colorlistScroll < * +inf -inf > \ + -1 \ + colorlistFrame < +inf -inf * +inf -inf > \ + 2 < -2 > \ + } \ + -1 \ + horizontal { \ + 2 < -2 > \ + colordataFrame < +inf -inf * +inf -inf > \ + 2 < -2 > \ + } \ + 5 < -5 > \ + horizontal { \ + 2 < -2 > \ + vertical { \ + -1 \ + contrastLabel \ + 3 < -3 > \ + brightnessLabel \ + -1 \ + } \ + 3 < -3 > \ + vertical { \ + -1 \ + contrastSlider < +inf -inf * > \ + 3 < -3 > \ + brightnessSlider < +inf -inf * > \ + -1 \ + } \ + 2 < -2 > \ + } \ + 5 < -5 > \ + horizontal { \ + 3 < -3 > \ + invertButton < +inf -inf * > \ + 5 < -5 > \ + optimizeButton < +inf -inf * > \ + 3 < -3 > \ + } \ + 3 < -3 > \ + } + + *enhancement*Minsize: 20 + *enhancement*FrameType: sunken + *enhancement*FrameWidth: 2 + *enhancement*BorderWidth: 0 + *enhancement*Label.ShadowWidth: 0 + *enhancement*thumbColor: gray + + *colorlistScroll.location: 0 0 20 10 + *colorlistScroll.vertical: True + *colorlist.width: 100 + *colorlist.height: 78 + *colordata.width: 100 + *colordata.height: 45 + *enhancement*colordata.frameWidth: 0 + *contrastLabel.label: x + *contrastSlider.location: 0 0 100 20 + *brightnessLabel.label: x + *brightnessSlider.location: 0 0 100 20 + *invertButton.label: Invert + *optimizeButton.label: Optimize + + ! BLINK + ! --------------------- + *blinkBox.label: Blink + *blinkBox.location: 0 0 230 0 + *blinkBox.shrinkToFit: False + *blinkBox.outerOffset: 5 + + + *blink.debug: False + *blink.layout: vertical { \ + space = (width blinkFramesLabel - width blinkRateLabel) \ + 3 < -3 > \ + horizontal { \ + 0 \ + blinkFramesLabel \ + 3 < +inf > \ + blinkFrame1 < -50% * > \ + blinkFrame2 < -50% * > \ + blinkFrame3 < -50% * > \ + blinkFrame4 < -50% * > \ + 4 < +inf > \ + blinkReset \ + 2 \ + } \ + 5 < -5 > \ + horizontal { \ + $space \ + blinkRateLabel \ + 2 \ + BRframe < +inf * > \ + } \ + 10 < +inf -100% > \ + horizontal { \ + 3 \ + registerButton < +inf * > \ + 5 < -5 > \ + matchButton < +inf * > \ + 5 < -5 > \ + blinkButton < +inf * > \ + 2 \ + } \ + 3 < -3 > \ + } + + *BRlayout.layout: horizontal { \ + BRdecrease \ + BRtext < +inf -100% * > \ + BRincrease \ + } + + *blink.Label.borderWidth: 0 + *blink.Label.shadowWidth: 0 + *blink*internalWidth: 4 + *blink*Arrow.background: gray60 + *blink*Arrow.foreground: gray + *blink*Arrow.width: 16 + *blink*Arrow.height: 25 + + *blinkFramesLabel.label: Blink Frames: + *blinkFrame1.label: 1 + *blinkFrame2.label: 2 + *blinkFrame3.label: 3 + *blinkFrame4.label: 4 + *blinkReset.label: Reset + + *blinkRateLabel.label: Blink Rate: + *BRframe.frameType: sunken + *BRframe.frameWidth: 2 + *BRtext.width: 40 + *BRtext.height: 25 + *BRdecrease.direction: left + *BRincrease.direction: right + *registerButton.label: Register + *matchButton.label: Match LUTs + *blinkButton.label: Blink + + ! OPTIONS + ! --------------------- + *optionsBox.label: Options + *optionsBox.location: 0 0 220 0 + *optionsBox.shrinkToFit: False + *optionsBox.outerOffset: 5 + *optionsBox*offIcon: square0s + *optionsBox*onIcon: square1s + *optionsBox*selectionStyle: multi + *optionsBox*highlightColor: yellow + *optionsBox.TextToggle.location: 0 0 102 25 + *optionsBox.TextToggle.frameWidth: 0 + *optionsBox*alignment: left + + *pannerButton.label: Panner + *coordsBoxButton.label: Coords Box + *autoscaleButton.label: Autoscale + *antialiasButton.label: Antialias + *tileFramesButton.label: Tile Frames + *warningsButton.label: Warnings + + ! CONTROL + ! ---------------------- + *controlBox.frameType: chiseled + *controlBox.frameWidth: 2 + *controlBox.outerOffset: 5 + *controlBox.innerOffset: 5 + *controlBox.height: 30 + + *control.debug: False + *control.layout: horizontal { \ + 1 \ + initializeButton < +inf * > \ + 5 < -5 > \ + normalizeButton < +inf * > \ + 80 < +inf -100% > \ + doneButton < +inf * > \ + 1 \ + } + + *initializeButton.label: Initialize + *normalizeButton.label: Normalize + *doneButton.label: Done + + ! WARNING dialog. + ! --------------------- + *warning.geometry: +400+300 + *warning*Layout.debug: False + *warning*TextBox.frameWidth: 0 + *warning*TextBox.background: gray + *warning*TextButton.frameWidth: 2 + *warning*TextButton.width: 40 + *warning*TextButton.height: 25 + + *warn.layout: vertical { \ + 5 < -5 > \ + horizontal { \ + 5 < -5 > \ + warnFrame < +inf * +inf > \ + 5 < -5 > \ + } \ + 1 < -1 > \ + horizontal { \ + 5 < -5 > \ + warnOk < +inf * > \ + 5 < +inf -5 > \ + warnCancel < +inf * > \ + 5 < +inf -5 > \ + warnHelp < +inf * > \ + 5 < -5 > \ + } \ + 1 < -1 > \ + } + + *WFlayout.layout: horizontal { \ + 5 < -5 > \ + vertical { \ + 5 < +inf -5 > \ + warnIcon \ + 5 < +inf -5 > \ + } \ + 5 < -5 > \ + warnText < +inf -inf * +inf -inf > \ + 5 < -5 > \ + } + + *warnLabel.label: Warning + *warnLabel.width: 280 + *warnLabel.height: 20 + *warnFrame.frameType: sunken + *warnFrame.frameWidth: 2 + *warnIcon.location: 0 0 40 40 + *warnIcon.image: WARNING + *warnText.label: generic warning text + *warnText.width: 250 + *warnText.height: 60 + *warnOk.label: OK + *warnCancel.label: Cancel + *warnHelp.label: Help + *warnHelp.sensitive: False + + *allowShellResize: true + *beNiceToColormap: False +} + +# Start up the GUI. +createObjects +activate + +proc quit args { send client gkey q; deactivate unmap } +send doneButton addCallback quit + +# Initialize icons. +createBitmap larrow 16 16 { + 0x00, 0x00, 0x00, 0x03, 0x80, 0x03, 0xc0, 0x03, 0xe0, 0x1e, 0x70, 0x1e, + 0x38, 0x18, 0x1c, 0x18, 0x1c, 0x18, 0x38, 0x18, 0x70, 0x1e, 0xe0, 0x1e, + 0xc0, 0x03, 0x80, 0x03, 0x00, 0x03, 0x00, 0x00}; + +createBitmap rarrow 16 16 { + 0x00, 0x00, 0xc0, 0x00, 0xc0, 0x01, 0xc0, 0x03, 0x78, 0x07, 0x78, 0x0e, + 0x18, 0x1c, 0x18, 0x38, 0x18, 0x38, 0x18, 0x1c, 0x78, 0x0e, 0x78, 0x07, + 0xc0, 0x03, 0xc0, 0x01, 0xc0, 0x00, 0x00, 0x00}; + +createBitmap brightness 15 15 { + 0x00, 0x00, 0x80, 0x00, 0x84, 0x10, 0xe8, 0x0b, 0x10, 0x04, 0x08, 0x08, + 0x08, 0x08, 0x0e, 0x38, 0x08, 0x08, 0x08, 0x08, 0x10, 0x04, 0xe8, 0x0b, + 0x84, 0x10, 0x80, 0x00, 0x00, 0x00}; + +createBitmap contrast 15 15 { + 0x00, 0x00, 0x00, 0x00, 0xc0, 0x01, 0x30, 0x07, 0x08, 0x0f, 0x08, 0x0f, + 0x04, 0x1f, 0x04, 0x1f, 0x04, 0x1f, 0x08, 0x0f, 0x08, 0x0f, 0x30, 0x07, + 0xc0, 0x01, 0x00, 0x00, 0x00, 0x00}; + +send prevFrame set bitmap larrow +send nextFrame set bitmap rarrow +send contrastLabel set bitmap contrast +send brightnessLabel set bitmap brightness + +# Initialize sliders. +send contrastSlider resizeThumb 0.1 1.0 +send brightnessSlider resizeThumb 0.1 1.0 +send colorlistScroll setScrollbar 0.5 0.1 + + +# The following code doesn't do anything useful, but helps demonstrate the +# GUI and tests various callbacks and other capabilities. + +# Frame selection. +set frame 1 + +proc setFrame {widget args} { + global frame + send frame$frame set on 0 + set frame [expr [send $widget get label] + 1 - 1] + send frame$frame set on 1 +} +proc nextFrame args { + global frame + send frame$frame set on 0 + incr frame; if {$frame > 4} {set frame 1} + send frame$frame set on 1 +} +proc prevFrame args { + global frame + send frame$frame set on 0 + set frame [expr $frame - 1] + if {$frame < 1} {set frame 4} + send frame$frame set on 1 +} + +proc clearFrame args { + global warnings + if {$warnings} { + send warnText set label \ + "Clearing the frame will destroy\n\ + all data in the frame" + send warning map + } +} +proc warnDone args { + send warning unmap +} + +send prevFrame addCallback prevFrame +send nextFrame addCallback nextFrame +send clearFrame addCallback clearFrame +foreach w {warnOk warnCancel} { send $w addCallback warnDone } +foreach i {1 2 3 4} { send frame$i addCallback setFrame } +send frame1 set on 1 + + +# Enhancement stuff. +set scrollHeight 0 +set colortable Grayscale +set contrast 0 +set brightness 0 + +proc resizeScrollbar {widget cbtype flags x y w h cw ch} { + global scrollHeight + set newHeight [expr $ch - $h] + if {$newHeight != $scrollHeight} { + send colorlistScroll setScrollbar 0.0 [expr double($h) / $ch] + set scrollHeight $newHeight + } +}; send colorlistPort addCallback resizeScrollbar + +proc scrollColorlist {widget cbtype pos} { + global scrollHeight + send colorlist set y [expr -int($scrollHeight * $pos)] +}; send colorlistScroll addCallback scrollColorlist scroll + +proc selectColor {widget cbtype selections indices} { + global colortable + foreach selection $selections { + set colortable $selection; updateColordata + } +}; send colorlist addCallback selectColor + +proc scrollContrast {widget cbtype x y} { + global contrast; set contrast $x; updateColordata +}; send contrastSlider addCallback scrollContrast + +proc scrollBrightness {widget cbtype x y} { + global brightness; set brightness $x; updateColordata +}; send brightnessSlider addCallback scrollBrightness + +proc updateColordata args { + global colortable contrast brightness + send colordata set label [format "-- %s --\nCon %4.2f Brt %4.2f" \ + $colortable $contrast $brightness] +} + +set colortables { + "Grayscale" + "Heat" + "Halley" + "Spectrum" + "Random" + "Ramp1" + "Ramp2" +} +send colorlist setList $colortables resize +updateColordata + + +# Blink stuff. +set blinkRate 2.0 + +proc setBlinkRate {widget args} { + global blinkRate + if {$widget == "BRincrease"} { + if {$blinkRate < 0.01} { + set blinkRate 0.125 + } else { + set blinkRate [expr $blinkRate * 2.0] + } + } else { + set blinkRate [expr $blinkRate / 2.0] + if {$blinkRate < 0.01} { + set blinkRate 0 + } + } + send BRtext set label $blinkRate +} +foreach widget {BRincrease BRdecrease} { + send $widget addCallback setBlinkRate +} + +proc setBlinkFrame {widget args} { + set frame [send $widget get label] + if {$frame == " "} { + set frame 1 + } else { + incr frame + if {$frame > 4} { + set frame " " + } + } + send $widget set label $frame +} +foreach i {1 2 3 4} { + send blinkFrame$i addCallback setBlinkFrame +} + +proc toggleBlink {widget args} { + global blinkRate + if {$blinkRate < 0.01} { + send $widget set state 0 + } +} + +proc resetBlink args { + global blinkRate + foreach i {1 2 3 4} { + send blinkFrame$i set label " " + } + set blinkRate 2.0 + send BRtext set label $blinkRate +} + +send blinkButton addCallback toggleBlink +send blinkReset addCallback resetBlink +send BRtext set label 2.0 + + +# Options stuff. +set warnings 1 + +proc setWarnings args { + global warnings + set warnings [send warningsButton get on] +} + +send warningsButton addCallback setWarnings +send warningsButton set on 1 +send coordsBoxButton set on 1 +send autoscaleButton set on 1 |