Wx::Perl::SplashFast.3pm

Langue: en

Version: 2006-07-30 (openSuse - 09/10/07)

Section: 3 (Bibliothèques de fonctions)

NAME

Wx::Perl::SplashFast - Fast splash screen for the Wx module.

SYNOPSIS


  use Wx::Perl::SplashFast ('/path/to/logo.jpg',3000);

  # timeout in milliseconds




  package myApp ;

  # subclass Wx::App ...




  package myFrame;

  # subclass Wx::Frame ...




  package main;




  my $myApp = myApp->new();

  my $frame = myFrame->new();




  $myApp->MainLoop();



DESCRIPTION

Using Wx::SplashScreen from Wx::App::OnInit may cause a high delay before the splash screen is shown on low end machines.

This module works around this limitation; you just need to follow the example.

USAGE

Just put the code inside the 'BEGIN {}' of your main app, like:

  sub BEGIN {

    use Wx::Perl::SplashFast ;

    Wx::Perl::SplashFast->new("./logo.jpg",5000);

  }



or load the module before any other:


  use Wx::Perl::SplashFast ("./logo.jpg",5000) ;

  use Wx ;

  ...



import ( IMG_FILE, SPLASH_TIMEOUT )

IMG_FILE
Path of the image file to show.
SPLASH_TIMEOUT
Timeout of the splash screen in milliseconds.

If you "use Wx::Perl::SplashFast './logo.jpg', 1000;" this has the same affetc as.


  BEGIN {

    require Wx::Perl::SplashFast;

    Wx::Perl::SplashFast->new( './logo.jpg', 1000 );

  }



new ( IMG_FILE , SPLASH_TIMEOUT )

Show the splash screen.
IMG_FILE
Path of the image file to show.
SPLASH_TIMEOUT
Timeout of the splash screen in milliseconds.

EXAMPLE


  use Wx::Perl::SplashFast ("./logo.jpg",5000) ;

  # Don't forget to put your own image in the same path. Duh




  package myApp ;

  use base 'Wx::App';

  sub OnInit { return(@_[0]) ;}




  package myFrame ;

  use base 'Wx::Frame';

  use Wx qw( wxDEFAULT_FRAME_STYLE );




  sub new {

    my $app = shift ;

    my( $frame ) = $app->SUPER::new( @_[0] , -1, 'wxPerl Test' ,

                                     [0,0] , [400,300] ) ;

    return( $frame ) ;

  }




  package main ;

  use Wx ;




  my $myApp = myApp->new() ;




  print "window\n" ;

  my $win = myFrame->new() ;

  $win->Show(1) ;




  $myApp->SetTopWindow( $win ) ;

  $myApp->MainLoop();



SEE ALSO

Wx, <Wx:SplashScreen>

AUTHOR

Graciliano M. P. <gm@virtuasites.com.br> Thanks to wxWidgets people and Mattia Barbon for wxPerl! :P This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.