=for comment based on iup-3.5 =head1 NAME IUP::Menu - [GUI element] menu which can group 3 types of elements: item, submenu, separator =head1 DESCRIPTION Creates a menu element, which groups 3 types of interface elements: item, submenu and separator. Any other interface element defined inside a menu will be an error. =begin HTML

GTK Motif Windows Classic Windows w/ Style
RADIO=YES RADIO=YES RADIO=YES RADIO=YES

=end HTML =head1 USAGE =head2 CREATION - new() method $menu = IUP::Menu->new(Ihandle *child, ...); #standard way my $menu = IUP::Menu->new( child=>[$elem1, $elem2], ANYATTRIBUTE=>'any value' ); #or with just a single child my $menu = IUP::Menu->new( child=>$elem, ANYATTRIBUTE=>'any value' ); #or with just 1 parameter (arrayref) my $menu = IUP::Menu->new( [$elem1, $elem2] ); #or with just 1 parameter (reference to child elements) my $menu = IUP::Menu->new( $elem ); B (named parameter) List of the references to elements (or just a single element) that will be grouped by the menu. B the identifier of the created element, or C if an error occurs. NOTE: You can pass to C other C'value'> or C\&func> pairs relevant to this element - see L. =head2 ATTRIBUTES For more info about concept of attributes (setting/getting values etc.) see L. Attributes specific to this element: =over =item * L The background color of the menu, affects all items in the menu. =item * BRADIO> (non inheritable) Enables the automatic toggle of one child item. When a child item is selected the other item is automatically deselected. The menu acts like a L for its children. Submenus and their children are not affected. =item * L (non inheritable) In Windows, returns the HMENU of the menu. =back =head2 CALLBACKS For more info about concept of callbacks (setting callback handlers etc.) see L. Callbacks specific to this element: =over =item L Called just before the menu is opened. =item L Called just after the menu is closed. =back The following L are also accepted: =over =item * L, L =back =head1 NOTES A menu can be a menu bar of a dialog, defined by the dialog's MENU attribute, or a popup menu. A popup menu is displayed for the user using the L function (usually on the mouse position) and disappears when an item is selected. L should be called only for popup menus. Menu bars associated with dialogs are automatically destroyed when the dialog is destroyed. But if you change the menu of a dialog for another menu, the previous one should be destroyed using L. If you replace a menu bar of a dialog, the previous menu is unmapped. Any item inside a menu bar can retrieve attributes from the dialog using L. It is not necessary to call L. The menu can be created with no elements and be dynamic filled using L or L. =head1 EXAMPLES The element B is used in the following sample scripts: =over =item * L<0-basic/dialog2.pl|http://cpansearch.perl.org/src/KMX/IUP-0.002_08/examples/0-basic/dialog2.pl> - IUP::Dialog example =item * L<0-basic/item.pl|http://cpansearch.perl.org/src/KMX/IUP-0.002_08/examples/0-basic/item.pl> - IUP::Item Example =item * L<0-basic/layoutdialog.pl|http://cpansearch.perl.org/src/KMX/IUP-0.002_08/examples/0-basic/layoutdialog.pl> - IUP::LayoutDialog example =item * L<0-basic/menu.pl|http://cpansearch.perl.org/src/KMX/IUP-0.002_08/examples/0-basic/menu.pl> - IUP::Menu example =item * L<0-basic/separator.pl|http://cpansearch.perl.org/src/KMX/IUP-0.002_08/examples/0-basic/separator.pl> - IUP::Separator example =item * L<0-basic/submenu.pl|http://cpansearch.perl.org/src/KMX/IUP-0.002_08/examples/0-basic/submenu.pl> - IUP::Submenu example =item * L<0-basic/tray.pl|http://cpansearch.perl.org/src/KMX/IUP-0.002_08/examples/0-basic/tray.pl> - IUP::Dialog + TRAY / TRAYTIP / TRAYIMAGE example =item * L<1-apps/app-mdi.pl|http://cpansearch.perl.org/src/KMX/IUP-0.002_08/examples/1-apps/app-mdi.pl> - IUP app example =item * L<1-apps/app-sample1.pl|http://cpansearch.perl.org/src/KMX/IUP-0.002_08/examples/1-apps/app-sample1.pl> - example used for screenshot - IUP.pod =item * L<1-apps/app-sample2.pl|http://cpansearch.perl.org/src/KMX/IUP-0.002_08/examples/1-apps/app-sample2.pl> - example based on the original sample.c =item * L<1-apps/app-simple-demo.pl|http://cpansearch.perl.org/src/KMX/IUP-0.002_08/examples/1-apps/app-simple-demo.pl> - example used for screenshot - IUP.pod =back =head1 SEE ALSO L, L, L, L, L, L The original doc: L =cut