Audio-MikMod
view release on metacpan or search on metacpan
demo/player-gtk-thread view on Meta::CPAN
#!/usr/bin/perl -w
# $Id: player-gtk-thread,v 1.1 1999/07/29 18:43:42 daniel Exp $
use strict;
use ExtUtils::testlib;
use Audio::MikMod qw(:MikMod :Player);
use Gtk;
use Pixmaps;
use Thread;
use Time::HiRes qw(usleep);
use constant TRUE => 1;
use constant FALSE => 0;
my ($song_loaded,$song_playing,$song_paused,$update) = (0,0,0,1);
my ($songfile,$songpath,$player_busy);
my ($filelabel,$songlabel);
my $url = 'http://electricrain.com/';
my $subs = {
'exit' => \&_exit,
'back' => \&_back,
'play' => \&_play,
'pause' => \&_pause,
'stop' => \&_stop,
'forward' => \&_forward,
'open' => \&_open_fw,
};
##############
# Here we go..
Gtk->init;
_init();
my $thr = Thread->new(\&_update);
my $window = Gtk::Widget->new('Gtk::Window','type' => '-toplevel' );
$window->set_usize(300, 200);
$window->set_title('Foo!');
$window->signal_connect('delete_event' => \&_exit);
$window->realize;
init_ui($window);
_open($ARGV[0]) if defined $ARGV[0];
Gtk->main;
exit;
############
# Gtk setup.
sub init_ui ($) {
my $window = shift;
my $mask = '';
my $style = $window->get_style;
my $vbox = Gtk::VBox->new(FALSE, 1);
$window->add($vbox);
$vbox->show;
# Draw the logo..
( run in 0.754 second using v1.01-cache-2.11-cpan-e1769b4cff6 )