1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
|
#
# $Header: /cvsroot/gtk2-perl/gtk2-perl-xs/Gtk2/t/GtkAction.t,v 1.10 2006/08/07 18:36:03 kaffeetisch Exp $
#
use Gtk2::TestHelper
at_least_version => [2, 4, 0, "Action-based menus are new in 2.4"],
tests => 17, noinit => 0;
my $action = Gtk2::Action->new (name => 'Open',
label => '_Open',
tooltip => 'Open Something',
stock_id => 'gtk-open');
is ($action->is_sensitive, 1);
is ($action->get_sensitive, 1);
is ($action->is_visible, 1);
is ($action->get_visible, 1);
isa_ok ($action, 'Gtk2::Action');
is ($action->get_name, 'Open');
$action->signal_connect (activate => sub { ok (TRUE) });
$action->activate;
# most of these are for action implementations
my $icon_widget = $action->create_icon ('large-toolbar');
isa_ok ($icon_widget, 'Gtk2::Image');
my $group = Gtk2::ActionGroup->new ('dummy');
$group->add_action ($action);
my $widget = $action->create_menu_item;
isa_ok ($widget, 'Gtk2::MenuItem');
$widget = $action->create_tool_item;
isa_ok ($widget, 'Gtk2::ToolItem');
my @proxies = $action->get_proxies;
is (@proxies, 1);
my $proxy = Gtk2::Statusbar->new;
$action->connect_proxy ($proxy);
@proxies = $action->get_proxies;
is (@proxies, 2);
$action->disconnect_proxy ($proxy);
@proxies = $action->get_proxies;
is (@proxies, 1);
$action->connect_accelerator;
$action->disconnect_accelerator;
## /* protected ... for use by child actions */
$action->block_activate_from ($proxy);
$action->unblock_activate_from ($proxy);
## /* protected ... for use by action groups */
$action->set_accel_path ('<Action>/');
$action->set_accel_group (undef);
$action->set_accel_group (Gtk2::AccelGroup->new);
SKIP: {
skip "new 2.6 stuff", 3
unless Gtk2->CHECK_VERSION (2, 6, 0);
$action->set_sensitive(FALSE);
is ($action->is_sensitive, FALSE);
$action->set_visible(FALSE);
is ($action->is_visible, FALSE);
ok (defined $action->get_accel_path);
}
SKIP: {
skip "new 2.10 stuff", 1
unless Gtk2->CHECK_VERSION (2, 10, 0);
isa_ok ($widget->get_action, 'Gtk2::Action');
}
__END__
Copyright (C) 2003-2006 by the gtk2-perl team (see the file AUTHORS for the
full list). See LICENSE for more information.
|