perlfangkuai.pl (1) - Linux Manuals
perlfangkuai.pl: A tetris game
NAME
tetris - A tetris game
SYNOPSIS
perl tetris.plCONFIGURATION
The configuration file should be the file with name ``.tetris'' under HOME directory. Another option is using Tetris/Config.pm in any directory of @INC.
Here is an example of configuration:
The key specification can get from this script:
Code to run after the GUI setup, add to code ref $after_load_function.
push @$shapes, shape_from_string(<<SHAPE);
0 0 9 0 0 0 0 0 0 0 0 0 0 0 9 0
0 0 9 9 0 0 9 9 0 9 9 0 0 9 9 0
0 0 0 0 0 0 9 0 0 0 9 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
SHAPE
use Gtk2::Gdk::Keysyms;
use Glib qw/TRUE FALSE/;
use Gtk2 -init;
my $window = Gtk2::Window->new ('toplevel');
$window->signal_connect (delete_event => sub { Gtk2->main_quit });
$window->signal_connect('key-press-event' => \&show_key);
my $label = Gtk2::Label->new();
$label->set_markup("<span foreground=\"blue\" size=\"x-large\">Type something on the keyboard!</span>");
$window->add ($label);
$window->show_all;
$window->set_position ('center-always');
Gtk2->main;
sub show_key {
my ($widget,$event,$parameter)= @_;
my $key_nr = $event->keyval();
foreach my $key (keys %Gtk2::Gdk::Keysyms) {
my $key_compare = $Gtk2::Gdk::Keysyms{$key};
if ($key_compare == $key_nr) {
print "'$key' => $key_nr,\n";
}
}
return FALSE;
}