AAC-Pvoice
view release on metacpan - search on metacpan
view release on metacpan or search on metacpan
lib/AAC/Pvoice.pm view on Meta::CPAN
use vars qw ($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
$VERSION = 0.91;
@ISA = qw (Exporter);
@EXPORT = qw (MessageBox);
@EXPORT_OK = qw ();
%EXPORT_TAGS = ();
}
sub MessageBox
{
my ($message, $caption, $style, $parent, $x, $y) = @_;
$caption ||= 'Message';
$style ||= wxOK;
$x ||= -1;
$y ||= -1;
$Text::Wrap::columns = 25;
$message = wrap('','',$message)."\n";
my $width = 0;
$width = 25 if $style & wxOK;
lib/AAC/Pvoice/Bitmap.pm view on Meta::CPAN
BEGIN
{
Wx::InitAllImageHandlers;
$cache = File::Cache->new({namespace => 'images'});
}
#----------------------------------------------------------------------
sub new
{
my $class = shift;
my ($file, $MAX_X, $MAX_Y, $caption, $background, $blowup, $parent_background) = @_;
$caption||='';
$parent_background=Wx::Colour->new(220,220,220) if not defined $parent_background;
my $config = Wx::ConfigBase::Get;
$caption = $config->ReadInt('Caption')?$caption:'';
# return ReadImage($file, $MAX_X, $MAX_Y, $caption, $background, $blowup, $parent_background) if $file;
return ReadImageMagick($file, $MAX_X, $MAX_Y, $caption, $background, $blowup, $parent_background) if $file;
return DrawCaption($MAX_X, $MAX_Y, $caption, $background, $parent_background);
}
sub ReadImage
{
my $file = shift;
my ($x, $y, $caption, $background, $blowup, $parent_background) = @_;
return DrawCaption($x, $y, '?', $background, $parent_background) unless -r $file;
confess "MaxX and MaxY should be positive" if $x < 1 || $y < 1;
my $newbmp;
$caption ||='';
$blowup ||=0;
$background = $parent_background unless defined $background;
my $ibg = wxColor2hex($background) if (ref($background) eq 'Wx::Colour');
my $pbg = wxColor2hex($parent_background) if (ref($parent_background) eq 'Wx::Colour');
my $stat = stat($file);
my $mtime = $stat->mtime();
my $image = $cache->get("$file-$x-$y-$caption-$ibg-$blowup-$pbg-$mtime");
if (!$image)
{
my $capdc = Wx::MemoryDC->new();
my $cpt = 10;
my ($cfont, $cw, $ch) = (wxNullFont, 0, 0);
if ($caption)
lib/AAC/Pvoice/Dialog.pm view on Meta::CPAN
my $self = $class->SUPER::new(@_);
my ($x, $y) = ($self->GetClientSize->GetWidth,
$self->GetClientSize->GetHeight);
$self->{margin} = 10;
$self->{ITEMSPACING} = 4;
$self->{selectionborder} = 3;
$self->{backgroundcolour} = Wx::Colour->new(220,220,220);
$self->SetBackgroundColour(wxWHITE);
$self->{panel} = AAC::Pvoice::Panel->new( $self, # parent
-1, # id
[$self->{margin},
$self->{margin}], # position
[$x-2*$self->{margin},
$y-2*$self->{margin}],# size
wxNO_3D|wxWANTS_CHARS, # style
1, # disabletextrow
$self->{ITEMSPACING}, # rowspacing
$self->{selectionborder}, # selectionborderwidth
1); # disabletitle
lib/AAC/Pvoice/Panel.pm view on Meta::CPAN
sub new
{
my $class = shift;
$_[2] ||= wxDefaultPosition;
$_[3] ||= wxDefaultSize;
$_[4] ||= wxTAB_TRAVERSAL;
my $self = $class->SUPER::new(@_[0..4]);
$self->SetBackgroundColour(wxWHITE);
$self->{parent} = $_[0];
$self->{position} = $_[2];
$self->{size} = $_[3];
$self->{disabletextrow} = $_[5] || 0;
$self->{itemspacing} = $_[6] || 0;
$self->{selectionborder}= $_[7] || int($self->{itemspacing}/2)||1;
$self->{disabletitle} = $_[8] || 0;
$self->{tls} = Wx::FlexGridSizer->new(0,1);
$self->{totalrows} = 0;
$self->{lastrow} = 0;
$self->{currentpage} = 0;
$self->{unfinished} = 1;
$self->RoundCornerRadius(10);
my ($x, $y);
# to get the right dimensions for the items, we maximize the
# frame, show it, get the dimensions, and hide it again
if (ref($self->{parent}) =~ /Frame/)
{
if ($self->{parent}->IsMaximized)
{
($x, $y) = @{$self->{size}};
}
else
{
$self->{parent}->Maximize(1);
$self->{parent}->Show(1);
($x, $y) = ( $self->GetSize()->GetWidth(),
$self->GetSize()->GetHeight() );
$self->{parent}->Show(0);
}
}
else
{
# if our parent isn't a frame, we're not able to maximize
# it, so we just get the dimensions of the parent
($x, $y) = @{$self->{size}};
}
$self->{realx} = $x;
$self->{realy} = $y;
$self->xsize($x);
$self->ysize($y);
unless ($self->{disabletitle})
{
# to be able to calculate the useable y-size, we need to add the
# title and get its height. Since we don't know what the title
view all matches for this distributionview release on metacpan - search on metacpan
( run in 0.918 second using v1.00-cache-2.02-grep-82fe00e-cpan-72ae3ad1e6da )