--- ray/src/util/trad.wsh 1994/10/27 15:56:13 2.1 +++ ray/src/util/trad.wsh 1994/11/28 12:15:18 2.8 @@ -46,13 +46,13 @@ Do you wish to save it now?" 2 { return 0 } } if $readonly { - .file invoke set curmess {Rename file or uncheck read-only to save.} + .file invoke return 0 - } else { - catch {unset oldradvar} - save_vars $rifname - } + } elseif {[save_vars $rifname]} { + gotfile 1 + return 1 + } else { return 0 } } else { return 1 } } @@ -73,19 +73,28 @@ trace variable rifname w setrname # Make main window frames -frame .upper -geometry 830x410 +set smallscrn [expr [winfo screenwidth .] < 830] + +message .mess -relief ridge -font fixed -textvariable curmess -anchor nw +if $smallscrn { + frame .upper -geometry 640x410 + frame .upper.right -geometry 120x410 + .mess configure -width 640 +} else { + frame .upper -geometry 830x410 + frame .upper.right -geometry 130x410 + .mess configure -width 830 +} pack .upper -side top -frame .upper.right -geometry 130x410 -place .upper.right -x 700 -y 0 -message .mess -relief ridge -font fixed -textvariable curmess \ - -width 830 -anchor nw +place .upper.right -relx .98 -rely 0 -anchor ne pack .mess -side top -expand yes -fill both helplink .mess trad trad messages +. configure -cursor top_left_arrow # Make mode buttons proc changescreen {} { # switch screen according to curmode - global curscreen curmode curmess + global curscreen curmode curmess smallscrn if [info exists curscreen] { if {"$curmode" == "$curscreen"} {return} destroy .upper.left @@ -94,7 +103,11 @@ proc changescreen {} { # switch screen according to c } set curscreen $curmode do_$curscreen .upper.left - .upper.left configure -geometry 700x410 + if $smallscrn { + .upper.left configure -geometry 520x410 + } else { + .upper.left configure -geometry 700x410 + } place .upper.left -x 0 -y 0 } @@ -127,7 +140,13 @@ button .upper.right.quit -text QUIT \ pack .upper.right.quit -side top -pady 10 -anchor se helplink .upper.right.quit trad trad quit -wm minsize . 830 460 +if $smallscrn { + wm minsize . 640 460 + wm maxsize . 640 512 +} else { + wm minsize . 830 460 + wm maxsize . 830 512 +} wm iconbitmap . @$radlib/trad.icon proc gotfile {{o 1}} { # set file possession state @@ -140,6 +159,7 @@ proc gotfile {{o 1}} { # set file possession state } } else { set mode disabled + .file invoke } foreach b {scene zone views options action results} { .$b configure -state $mode @@ -149,14 +169,13 @@ proc gotfile {{o 1}} { # set file possession state # Decide where to go and start if {[llength $argv] == 0} { - gotfile 0 set curmess "Choose a Radiance project file." - .file invoke + gotfile 0 } elseif {[llength $argv] == 1} { cd [file dirname $argv] set curfile [file tail $argv] if {! [file exists $curfile]} { - newnew $argv + newnew $curfile .scene invoke } elseif {[newload $curfile]} { if $alldone {