$offset [expr {$offset+$maxchars-1}]]
}
+#---------- print to postscript ----------
+
+proc print-to-postscript {} {
+ global canvas ocean
+ set postscript_fontmap(fixed) {Courier 12}
+ manyset [$canvas bbox all] xmin ymin xmax ymax
+ set file where-vessels.$ocean.ps
+ $canvas postscript -file $file -rotate 1 \
+ -width [expr {$xmax-$xmin}] \
+ -height [expr {$ymax-$ymin}] \
+ -fontmap postscript_fontmap
+ .printed.info configure -text "Printed to $file
+
+Usually, the next thing would be something like"
+ set text "epsffit 0 0 595.276 841.89 <$file >t.ps"
+ .printed.rune configure -state normal
+ .printed.rune delete 1.0 end
+ .printed.rune insert end $text
+ .printed.rune configure -width [string length $text] -state disabled
+ update idletasks
+ wm deiconify .printed
+}
+
#---------- main user interface ----------
proc widgets-setup {} {
if {![have-notes]} {
.cp.ctrl.notes.do configure -state disabled
- }
+ }
+
+ button .cp.ctrl.print -text {Print to file} -command print-to-postscript
+ pack .cp.ctrl.print -side top
+ #----- message saying we've printed -----
+
+ info-toplevel-create .printed "printed"
+
+ label .printed.info
+ text .printed.rune -state disabled -height 1 -borderwidth 0
+ pack .printed.info -side top
+ pack .printed.rune -side top
+
#----- island name count and copy -----
label .islands.count