Tk-GBARR
view release on metacpan or search on metacpan
alpha/Tk/MenuEntry.pm view on Meta::CPAN
package Tk::MenuEntry;
use Tk qw(Ev);
use strict;
use vars qw(@ISA $VERSION);
@ISA = qw(Tk::Derived Tk::Frame);
$VERSION = "0.02";
Construct Tk::Widget 'MenuEntry';
my $BITMAP;
sub ClassInit {
my($class,$mw) = @_;
unless(defined($BITMAP)) {
$BITMAP = __PACKAGE__ . "::downarrow";
my $bits = pack("b12"x5,".1111111111.",
"..11111111..",
"...111111...",
"....1111....",
".....11.....");
$mw->DefineBitmap($BITMAP => 12,5, $bits);
}
}
sub Populate {
my($me,$args) = @_;
$me->SUPER::Populate($args);
my $sf = $me->Frame;
my $b = $sf->Button(
-bitmap => $BITMAP,
-anchor => 'center',
-highlightthickness => 0,
)->pack(-fill => 'both', -expand => 1);
$me->Advertise(Button => $b);
$sf->packPropagate(0);
$sf->GeometryRequest($b->ReqWidth + 2,1);
$sf->pack(-side => 'right', -fill => 'y');
my $e = $me->Entry(
-borderwidth => 0,
-highlightthickness => 0,
)->pack(
-side => 'left',
-fill => 'both',
-expand => 1
);
# popup shell for listbox with values.
my $c = $me->Toplevel(-bd => 2,-relief => "raised");
$c->overrideredirect(1);
$c->withdraw;
my $sl = $c->ScrlListbox(
-scrollbars => 'oe',
-selectmode => "browse",
-exportselection => 0,
-bd => 0,
-width => 0,
( run in 0.887 second using v1.01-cache-2.11-cpan-5511b514fd6 )