Tk-GBARR
view release on metacpan or search on metacpan
NumEntry.pm view on Meta::CPAN
# $Id: NumEntry.pm,v 2.6 2006/05/23 21:08:08 eserte Exp $
package Tk::NumEntry;
use Tk ();
use Tk::Frame;
use Tk::Derived;
use strict;
use vars qw(@ISA $VERSION);
@ISA = qw(Tk::Derived Tk::Frame);
$VERSION = sprintf("%d.%02d", q$Revision: 2.6 $ =~ /(\d+)\.(\d+)/);
Construct Tk::Widget 'NumEntry';
{ my $foo = $Tk::FireButton::INCBITMAP;
$foo = $Tk::FireButton::DECBITMAP; # peacify -w
}
sub Populate {
my($f,$args) = @_;
require Tk::FireButton;
require Tk::NumEntryPlain;
my $orient = delete $args->{-orient} || "vertical";
my $readonly = delete $args->{-readonly};
my $e = $f->Component( $f->NumEntryPlainWidget => 'entry',
-borderwidth => 0,
-highlightthickness => 0,
);
if ($readonly) {
$e->bindtags([]);
}
my $binc = $f->Component( $f->IncFireButtonWidget() => 'inc',
-command => sub { $e->incdec($e->cget(-increment)) },
-takefocus => 0,
-highlightthickness => 0,
-anchor => 'center',
);
$binc->configure(-bitmap => ($orient =~ /^vert/
? $binc->INCBITMAP
: $binc->HORIZINCBITMAP
)
);
my $bdec = $f->Component( $f->DecFireButtonWidget() => 'dec',
-command => sub { $e->incdec(- $e->cget(-increment)) },
-takefocus => 0,
-highlightthickness => 0,
-anchor => 'center',
);
$bdec->configure(-bitmap => ($orient =~ /^vert/
? $bdec->DECBITMAP
: $bdec->HORIZDECBITMAP
)
);
$f->gridColumnconfigure(0, -weight => 1);
$f->gridColumnconfigure(1, -weight => 0);
$f->gridRowconfigure(0, -weight => 1);
$f->gridRowconfigure(1, -weight => 1);
if ($orient eq 'vertical') {
$binc->grid(-row => 0, -column => 1, -sticky => 'news');
$bdec->grid(-row => 1, -column => 1, -sticky => 'news');
} else {
( run in 0.448 second using v1.01-cache-2.11-cpan-71847e10f99 )