App-PLab
view release on metacpan or search on metacpan
lib/App/PLab/ImageApp.pm view on Meta::CPAN
$self-> color( defined $color ? cl::LightRed : cl::Fore);
$self-> set(
text => $text,
raise => 1,
);
$self-> update_view;
$self-> { timer} = $self-> insert( Timer =>
onTick => sub {
$_[0]-> stop;
$_[0]-> owner-> set(
text => '',
raise => 0,
);
},
) unless $self-> { timer};
$self-> { timer}-> stop;
$self-> { timer}-> timeout( $w-> {ini}-> {statusDelay} * 1000);
$self-> { timer}-> start;
}
# SB_END
sub profile_default
{
my $def = $_[ 0]-> SUPER::profile_default;
my %prf = (
name => 'MainWindow',
size => [ 531, 594],
text => $::application-> name,
widgetClass=> wc::Dialog,
);
@$def{keys %prf} = values %prf;
return $def;
}
sub init
{
my $self = shift;
my %profile = $self-> SUPER::init(@_);
my $w = $self;
my ($x, $y) = $w-> size;
my $scale = $::application-> uiScaling;
$scale = 1 if $scale < 1;
$w-> insert( "Panel",
text => "",
name => "ToolBar",
origin => [ 2, $y - 2 - 38 * $scale],
size => [ $x - 4, 38 * $scale],
raise => 1,
image => App::PLab::ImageAppGlyphs::image( bga::tile_m),
growMode => gm::GrowHiX | gm::GrowLoY,
);
my %btn_profile = (
glyphs => 2,
text => "",
selectable => 0,
transparent => 1,
flat => 1,
size => [ map { $_ * $scale } 36, 36],
borderWidth => 1,
);
$w-> ToolBar-> insert(
[ SpeedButton =>
origin => [1, 1],
image => App::PLab::ButtonGlyphs::icon( bg::fldropen),
hint => 'Open file',
onClick => sub { $w-> win_openfile; },
%btn_profile,
],
[ SpeedButton =>
name => "PrevImage",
origin => [42 * $scale, 1],
image => App::PLab::ImageAppGlyphs::icon( bga::prev),
enabled => 0,
hint => 'Previous image',
onClick => sub { $w-> win_prevfile; },
%btn_profile,
],
[ SpeedButton =>
name => "NextImage",
origin => [78 * $scale, 1],
image => App::PLab::ImageAppGlyphs::icon( bga::next),
enabled => 0,
hint => 'Next image',
onClick => sub { $w-> win_nextfile; },
%btn_profile,
],
);
$w-> insert( "Panel",
text => "",
name => "StatusBar",
rect => [0, 0, $w-> width, 22],
indent => 2,
raise => 0,
buffered => 1,
growMode => gm::GrowHiX,
font => { name => "System VIO", height => 18,},
);
$w-> insert( 'App::PLab::TrImageViewer' =>
name => "IV",
rect => [ 2, $w-> StatusBar-> height + 2, $x - 2, $y - $w-> ToolBar-> height - 8],
hScroll => 1,
vScroll => 1,
growMode => gm::Client,
delegations => [qw(Size MouseUp MouseDown MouseMove Paint)],
widgetClass => wc::Window,
);
return %profile;
}
1;
=pod
( run in 2.918 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )