You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
164 lines
5.1 KiB
Plaintext
164 lines
5.1 KiB
Plaintext
15 years ago
|
# ----------------------------------------------------------------------
|
||
|
# 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
|
||
|
|
||
|
|
||
|
|