#!/usr/bin/perl -w
use
Gtk
;
use
strict
;
set_locale Gtk;
init Gtk;
my
$false = 0;
my
$true = 1;
my
$window;
my
$button;
my
$box;
# Создаем окно приложения
$window = new Gtk::Window( "toplevel" );
$window->set_title( "Arrow Buttons" );
$window->signal_connect( "destroy",
sub
{ Gtk->
exit
( 0 ); } );
$window->border_width( 10 );
# Создаем контейнер для стрелок-кнопок
$box = new Gtk::HBox( $false, 0 );
$box->border_width( 2 );
$window->add( $box );
# упаковываем и показываем наши виджеты
$box->show();
$button = create_arrow_button( 'up', 'in' );
$box->pack_start( $button, $false, $false, 3 );
$button = create_arrow_button( 'down', 'out' );
$box->pack_start( $button, $false, $false, 3 );
$button = create_arrow_button( 'left', 'in' );
$box->pack_start( $button, $false, $false, 3 );
$button = create_arrow_button( 'right', 'out' );
$box->pack_start( $button, $false, $false, 3 );
$window->show();
main Gtk;
exit
( 0 );
### Функции
# Создаем виджет стрелок с указанными параметрами и упаковываем
# его в кнопку. Первый параметр - направление стрелки, второй -
# тип тени.
sub
create_arrow_button
{
my
( $arrow_type, $shadow_type ) = @_;
my
$button;
my
$arrow;
$button = new Gtk::Button();
$arrow = new Gtk::Arrow( $arrow_type, $shadow_type );
$button->add( $arrow );
$button->show();
$arrow->show();
return
( $button );
}
# Конец примера
|