Viewing file: icon.pl (2.15 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
# icon.pl
use vars qw/$TOP/;
sub icon {
# Create a top-level window that displays a bunch of iconic buttons.
my($demo) = @_; $TOP = $MW->WidgetDemo( -name => $demo, -text => ['This window shows three ways of using bitmaps or images in radiobuttons and checkbuttons. On the left are two radiobuttons, each of which displays a bitmap and an indicator. In the middle is a checkbutton that displays a different image depending on whether it is selected or not. On the right is a checkbutton that displays a single bitmap but changes its background color to indicate whether or not it is selected.', qw/-wraplength 5i/], -title => 'Iconic Button Demonstration', -iconname => 'icon', );
$TOP->Bitmap('flagup', -file => Tk->findINC('demos/images/flagup'), -maskfile => Tk->findINC('demos/images/flagup'), ); $TOP->Bitmap('flagdown', -file => Tk->findINC('demos/images/flagdown'), -maskfile => Tk->findINC('demos/images/flagdown'), );
my $frame = $TOP->Frame(qw/-borderwidth 10/); $frame->pack(qw/-side top/);
my(@pl) = qw/-side left -expand yes -padx 5m/; my $frame_left = $frame->Frame; $frame_left->pack(@pl);
my $frame_b1 = $frame->Checkbutton( -image => 'flagdown', -selectimage => 'flagup', -indicatoron => 0, ); $frame_b1->pack(@pl); $frame_b1->configure(-selectcolor => $frame_b1->cget(-background)); my $frame_b2 = $frame->Checkbutton( -bitmap => '@' . Tk->findINC('demos/images/letters'), -indicatoron => 0, -selectcolor => 'SeaGreen1', ); $frame_b2->pack(@pl);
my $letters = ''; @pl = qw/-side top -expand yes/; my $frame_left_b3 = $frame_left->Radiobutton( -bitmap => '@' . Tk->findINC('demos/images/letters'), -variable => \$letters, -value => 'full', ); $frame_left_b3->pack(@pl); my $frame_left_b4 = $frame_left->Radiobutton( -bitmap => '@' . Tk->findINC('demos/images/noletters'), -variable => \$letters, -value => 'empty', ); $frame_left_b4->pack(@pl);
} # end icon
1;
|