NAME
Tickit::Widget::Menu
- display a menu of choices
SYNOPSIS
use Tickit;
use Tickit::Widget::Menu;
use Tickit::Widget::Menu::Item;
my $tickit = Tickit->new;
my $menu = Tickit::Widget::Menu->new(
items => [
Tickit::Widget::Menu::Item->new(
name => "Exit",
on_activate => sub { $tickit->stop }
),
],
);
$menu->popup( $tickit->rootwin, 5, 5 );
$tickit->run;
DESCRIPTION
This widget class acts as a display container for a list of items representing individual choices. It can be displayed as a floating window using the popup
method, or attached to a Tickit::Widget::MenuBar or as a child menu within another Tickit::Widget::Menu
.
This widget is intended to be displayed transiently, either as a pop-up menu over some other widget, or as a child menu of another menu or an instance of a menu bar. Specifically, such objects should not be directly added to container widgets.
CONSTRUCTOR
$menu = Tickit::Widget::Menu->new( %args )
Constructs a new Tickit::Widget::Menu
object.
Takes the following named arguments:
- name => STRING
-
Optional. If present, gives the name of the menu item for a submenu. Not used in a top-level menu.
- items => ARRAY
-
Optional. If present, contains a list of
Tickit::Widget::Menu::Item
orTickit::Widget::Menu
objects to add to the menu. Equivalent to psasing each to thepush_item
method after construction.
METHODS
$name = $menu->name
Returns the string name for the menu.
@items = $menu->items
Returns the list of items currently stored.
$menu->push_item( $item )
Adds another item.
$menu->popup( $win, $line, $col )
Makes the menu appear at the given position relative to the given window. Note that as $win->make_popup
is called, the menu is always displayed in a popup window, floating over the root window. Passed window is used simply as the origin for the given line and column position.
$menu->dismiss
Hides a menu previously displayed using popup
.
AUTHOR
Paul Evans <leonerd@leonerd.org.uk>