|
NAMECurses::UI::Menubar - Create and manipulate menubar widgetsCLASS HIERARCHYCurses::UI::Widget | +----Curses::UI::Container | +----Curses::UI::Window | +----Curses::UI::Menubar SYNOPSISuse Curses::UI; my $cui = new Curses::UI; # define the menu datastructure. my $menu_data = [....]; my $menu = $cui->add( 'menu', 'Menubar', -menu => $menu_data ); $menu->focus(); DESCRIPTIONThis class can be used to add a menubar to Curses::UI. This menubar can contain a complete submenu hierarchy. It looks (remotely :-) like this:------------------------------------- menu1 | menu2 | menu3 | .... ------------------------------------- +-------------+ |menuitem 1 | |menuitem 2 |+--------------+ |menuitem 3 >>||submenuitem 1 | |menuitem 4 ||submenuitem 2 | +-------------+|submenuitem 3 | |submenuitem 4 | |submenuitem 5 | +--------------+ See exampes/demo-Curses::UI::Menubar in the distribution for a short demo. STANDARD OPTIONSThis class does not use any of the standard options that are provided by Curses::UI::Widget.WIDGET-SPECIFIC OPTIONSThere is only one option: -menu. The value for this option is an ARRAYREF. This ARRAYREF behaves exactly like the one that is described in Curses::UI::MenuListbox. The difference is that for the top-level menu, you will only use -submenu's. Example data structure:my $menu1 = [ { -label => 'option 1', -value => '1-1' }, { -label => 'option 2', -value => '1-2' }, { -label => 'option 3', -value => '1-3' }, ]; my $menu2 = [ { -label => 'option 1', -value => \&sel1 }, { -label => 'option 2', -value => \&sel2 }, { -label => 'option 3', -value => \&sel3 }, ]; my $submenu = [ { -label => 'suboption 1', -value => '3-3-1' }, { -label => 'suboption 2', -callback=> \&do_it }, ]; my $menu3 = [ { -label => 'option 1', -value => \&sel2 }, { -label => 'option 2', -value => \&sel3 }, { -label => 'submenu 1', -submenu => $submenu }, ]; my $menu = [ { -label => 'menu 1', -submenu => $menu1 }, { -label => 'menu 2', -submenu => $menu2 } { -label => 'menu 3', -submenu => $menu3 } ]; METHODS
DEFAULT BINDINGS
SEE ALSOCurses::UI, Curses::UI::MenuListbox, Curses::UI::ListboxAUTHORCopyright (c) 2001-2002 Maurice Makaay. All rights reserved.Maintained by Marcus Thiesen (marcus@cpan.thiesenweb.de) This package is free software and is provided "as is" without express or implied warranty. It may be used, redistributed and/or modified under the same terms as perl itself.
Visit the GSP FreeBSD Man Page Interface. |