Gtk2::Menu3pm
Wrapper for gtkmenu
Hierarchy
Glib::Object+----Glib::InitiallyUnowned+----Gtk2::Object+----Gtk2::Widget+----Gtk2::Container+----Gtk2::MenuShell+----Gtk2::Menu
Interfaces
Glib::Object::_Unregistered::AtkImplementorIfaceGtk2::Buildable
Methods
widget = Gtk2::Menu->new
accelgroup = $menu->get_accel_group
$menu->set_accel_group ($accel_group)
- •
-
$accel_group(Gtk2::AccelGroup)
string = $menu->get_accel_path
Since: gtk+ 2.14
$menu->set_accel_path ($accel_path)
- •
-
$accel_path(string)
widget = $menu->get_active
$menu->set_active ($index)
- •
-
$index(integer)
$menu->attach ($child, $left_attach, $right_attach, $top_attach, $bottom_attach)
•
|
|
|---|---|
•
|
|
•
|
|
•
|
|
•
|
|
Since: gtk+ 2.4
$menu->attach_to_widget ($attach_widget, $detach_func)
•
|
|
|---|---|
•
|
|
Attach $menu to $attach_widget. $menu must not be currently attached to any other widget, including not a submenu of a "Gtk2::MenuItem".
If $menu is later detached from the widget with "$menu->detach" then the $detach_func is called as
&$detach_func ($attach_widget, $menu)
widget = $menu->get_attach_widget
$menu->detach
list = Gtk2::Menu->get_for_attach_widget ($widget)
- •
-
$widget(Gtk2::Widget)
Since: gtk+ 2.6
integer = $menu->get_monitor
Since: gtk+ 2.14
$menu->set_monitor ($monitor_num)
- •
-
$monitor_num(integer)
Since: gtk+ 2.4
$menu->popdown
$menu->popup ($parent_menu_shell, $parent_menu_item, $menu_pos_func, $data, $button, $activate_time)
•
|
|
|---|---|
•
|
|
•
|
|
•
|
|
•
|
|
•
|
|
If $menu_pos_func is not "undef" it's called as
($x, $y, $push_in) = &$menu_pos_func ($menu, $x, $y, $data)
$x,$y inputs are a proposed position based on the mouse pointer (not actually documented in the Gtk manuals). The return should be a desired $x,$y, and an optional $push_in flag. If $push_in is true then Gtk will adjust $x,$y if necessary so the menu is fully visible in the screen width and height.
$menu_pos_func and $data are stored in $menu and may be called again later for a "$menu->reposition" or some obscure things like a changed "set_screen" while torn-off. A further "$menu->popup" call replaces $menu_pos_func and $data.
$menu->reorder_child ($child, $position)
•
|
|
|---|---|
•
|
|
$menu->reposition
boolean = $menu->get_reserve_toggle_size
Since: gtk+ 2.18
$menu->set_reserve_toggle_size ($reserve_toggle_size)
- •
-
$reserve_toggle_size(boolean)
Since: gtk+ 2.18
$menu->set_screen ($screen)
- •
-
$screen(Gtk2::Gdk::Screen or undef)
Since: gtk+ 2.2
boolean = $menu->get_tearoff_state
$menu->set_tearoff_state ($torn_off)
- •
-
$torn_off(boolean)
string = $menu->get_title
$menu->set_title ($title)
- •
-
$title(string)
Properties
'accel-group' (Gtk2::AccelGroup : default undef : readable / writable / private)
|
The accel group holding accelerators for the menu |
|---|---|
'accel-path' (string : default undef : readable / writable / private)
|
An accel path used to conveniently construct accel paths of child items |
'active' (integer : default -1 : readable / writable / private)
|
The currently selected menu item |
'attach-widget' (Gtk2::Widget : default undef : readable / writable / private)
|
The widget the menu is attached to |
'monitor' (integer : default -1 : readable / writable / private)
|
The monitor the menu will be popped up on |
'reserve-toggle-size' (boolean : default true : readable / writable / private)
|
A boolean that indicates whether the menu reserves space for toggles and icons |
'tearoff-state' (boolean : default false : readable / writable / private)
|
A boolean that indicates whether the menu is torn-off |
'tearoff-title' (string : default undef : readable / writable / private)
|
A title that may be displayed by the window manager when this menu is torn-off |
Child properties
'bottom-attach' (integer : default -1 : readable / writable / private)
|
The row number to attach the bottom of the child to |
|---|---|
'left-attach' (integer : default -1 : readable / writable / private)
|
The column number to attach the left side of the child to |
'right-attach' (integer : default -1 : readable / writable / private)
|
The column number to attach the right side of the child to |
'top-attach' (integer : default -1 : readable / writable / private)
|
The row number to attach the top of the child to |
Style properties
- 'arrow-placement' (Gtk2::ArrowPlacement : default "both" : readable / private)
-
Indicates where scroll arrows should be placed
- 'arrow-scaling' (float : default 0.7 : readable / private)
-
Arbitrary constant to scale down the size of the scroll arrow
- 'double-arrows' (boolean : default true : readable / private)
-
When scrolling, always show both arrows.
- 'horizontal-offset' (integer : default -2 : readable / private)
-
When the menu is a submenu, position it this number of pixels offset horizontally
- 'horizontal-padding' (integer : default 0 : readable / private)
-
Extra space at the left and right edges of the menu
- 'vertical-offset' (integer : default 0 : readable / private)
-
When the menu is a submenu, position it this number of pixels offset vertically
- 'vertical-padding' (integer : default 1 : readable / private)
-
Extra space at the top and bottom of the menu
Signals
move-scroll(Gtk2::Menu, Gtk2::ScrollType)
Enums and flags
enum Gtk2::ScrollType
•
|
'none' / 'GTK_SCROLL_NONE' |
|---|---|
•
|
'jump' / 'GTK_SCROLL_JUMP' |
•
|
'step-backward' / 'GTK_SCROLL_STEP_BACKWARD' |
•
|
'step-forward' / 'GTK_SCROLL_STEP_FORWARD' |
•
|
'page-backward' / 'GTK_SCROLL_PAGE_BACKWARD' |
•
|
'page-forward' / 'GTK_SCROLL_PAGE_FORWARD' |
•
|
'step-up' / 'GTK_SCROLL_STEP_UP' |
•
|
'step-down' / 'GTK_SCROLL_STEP_DOWN' |
•
|
'page-up' / 'GTK_SCROLL_PAGE_UP' |
•
|
'page-down' / 'GTK_SCROLL_PAGE_DOWN' |
•
|
'step-left' / 'GTK_SCROLL_STEP_LEFT' |
•
|
'step-right' / 'GTK_SCROLL_STEP_RIGHT' |
•
|
'page-left' / 'GTK_SCROLL_PAGE_LEFT' |
•
|
'page-right' / 'GTK_SCROLL_PAGE_RIGHT' |
•
|
'start' / 'GTK_SCROLL_START' |
•
|
'end' / 'GTK_SCROLL_END' |
Releases
7 releases since Debian 3.1 (Sarge); the text changed 6 times.