| # ---------------------------------------------------------------------- |
| # DEMO: mainwindow in [incr Widgets] |
| # ---------------------------------------------------------------------- |
| package require Iwidgets 4.0 |
| |
| 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 |
| |
| |
| |