#!/bin/sh # ---------------------------------------------------------------------- # DEMO: mainwindow in [incr Widgets] # ---------------------------------------------------------------------- #\ exec itkwish "$0" ${1+"$@"} package require Iwidgets 3.0 # # Demo script for the Mainwindow class # wm withdraw . iwidgets::mainwindow .mw set imagedir [file join ${iwidgets::library} demos images] # # Add a File menubutton # .mw menubar add menubutton file -text "File" -underline 0 -padx 8 -pady 2 \ -menu {options -tearoff no command new -label "New" -underline 0 \ -helpstr "Create a new file" command open -label "Open ..." -underline 0 \ -helpstr "Open an existing file" command save -label "Save" -underline 0 \ -helpstr "Save the current file" command saveas -label "Save As ..." -underline 5 \ -helpstr "Save the file as a differnet name" command print -label "Print" -underline 0 \ -helpstr "Print the file" separator sep1 command close -label "Close" -underline 0 \ -helpstr "Close the file" separator sep2 command exit -label "Exit" -underline 1 \ -helpstr "Exit this application" } # # Add the Edit menubutton. # .mw menubar add menubutton edit -text "Edit" -underline 0 -padx 8 -pady 2 \ -menu {options -tearoff no command cut -label "Cut" -underline 2 \ -helpstr "Cut the selection into the clipboard" command copy -label "Copy" -underline 0 \ -helpstr "Copy the selection to the clipboard" command paste -label "Paste" -underline 0 \ -helpstr "Paste the clipboard to the current point" separator sep3 command find -label "Find" -underline 2 \ -helpstr "Search the text" separator sep4 command clear -label "Clear" -underline 2 \ -helpstr "Clear the selection" } # # Add the Help menubutton. # .mw menubar add menubutton help -text "Help" -underline 0 -padx 8 -pady 2 \ -menu {options -tearoff no command onwindow -label "On Window" -underline 3 \ -helpstr "Obtain help on the window" command onkeys -label "On Keys" -underline 3 \ -helpstr "Obtain help on the keys" command index -label "Index" -underline 0 \ -helpstr "View the help index" command onhelp -label "On Help" -underline 2 \ -helpstr "Obtain help on help" command onversion -label "On Version" -underline 2 \ -helpstr "View the version information" } # # Add items to the toolbar. # .mw toolbar add frame filler1 -width 108 -relief raised -borderwidth 2 .mw toolbar add button new \ -image [image create photo -file [file join $imagedir new.gif]] \ -helpstr "Create a new file" \ -balloonstr "New" .mw toolbar add button open \ -image [image create photo -file [file join $imagedir open.gif]] \ -helpstr "Open an existing file" \ -balloonstr "Open" .mw toolbar add button close \ -image [image create photo -file [file join $imagedir close.gif]] \ -helpstr "Close the file" \ -balloonstr "Close" .mw toolbar add frame filler2 -width 20 -relief raised -borderwidth 2 .mw toolbar add button cut \ -image [image create photo -file [file join $imagedir cut.gif]] \ -helpstr "Cut the selection into the cut buffer" \ -balloonstr "Cut" .mw toolbar add button copy \ -image [image create photo -file [file join $imagedir copy.gif]] \ -helpstr "Copy the selection to the cut buffer" \ -balloonstr "Copy" .mw toolbar add button paste \ -image [image create photo -file [file join $imagedir paste.gif]] \ -helpstr "Paste the cut buffer to the current point" \ -balloonstr "Paste" .mw toolbar add button clear \ -image [image create photo -file [file join $imagedir clear.gif]] \ -helpstr "Clear the selection" \ -balloonstr "Clear" .mw toolbar add frame filler3 -relief raised -borderwidth 2 # # Add items to the menubar. # .mw mousebar add button save \ -image [image create photo -file [file join $imagedir save.gif]] \ -helpstr "Save the current file" .mw mousebar add button print \ -image [image create photo -file [file join $imagedir print.gif]] \ -helpstr "Print the file" .mw mousebar add button find \ -image [image create photo -file [file join $imagedir find.gif]] \ -helpstr "Search the text" .mw mousebar add frame filler1 -height 20 -relief raised -borderwidth 2 .mw mousebar add button help \ -image [image create photo -file [file join $imagedir help.gif]] \ -helpstr "Obtain help for this window" .mw mousebar add frame filler2 -relief raised -borderwidth 2 .mw mousebar add button exit \ -image [image create photo -file [file join $imagedir exit.gif]] \ -helpstr "Exit this application" .mw mousebar add frame filler3 -height 5 # # Change the packing of the last fillers in the tool and mouse bar # so that it expands across and down the rest of the mainwindow. # pack [.mw toolbar component filler3] -expand yes -fill both pack [.mw mousebar component filler2] -expand yes -fill both # # Install a scrolledtext widget in the childsite. # iwidgets::scrolledtext [.mw childsite].st -visibleitems 40x8 pack [.mw childsite].st -fill both -expand yes # # Activate the main window. # .mw activate