gtkMenuNew(show = TRUE)
gtkMenuSetScreen(object, screen = NULL)
gtkMenuReorderChild(object, child, position)
gtkMenuAttach(object, child, left.attach, right.attach, top.attach, bottom.attach)
gtkMenuPopup(object, parent.menu.shell = NULL, parent.menu.item = NULL, func = NULL, data = NULL, button, activate.time)
gtkMenuSetAccelGroup(object, accel.group)
gtkMenuGetAccelGroup(object)
gtkMenuSetAccelPath(object, accel.path)
gtkMenuGetAccelPath(object)
gtkMenuSetTitle(object, title)
gtkMenuGetTitle(object)
gtkMenuSetMonitor(object, monitor.num)
gtkMenuGetMonitor(object)
gtkMenuGetTearoffState(object)
gtkMenuSetReserveToggleSize(object, reserve.toggle.size)
gtkMenuGetReserveToggleSize(object)
gtkMenuPopdown(object)
gtkMenuReposition(object)
gtkMenuGetActive(object)
gtkMenuSetActive(object, index)
gtkMenuSetTearoffState(object, torn.off)
gtkMenuAttachToWidget(object, attach.widget)
gtkMenuDetach(object)
gtkMenuGetAttachWidget(object)
gtkMenuGetForAttachWidget(object)
gtkMenu(show = TRUE)
GObject +----GInitiallyUnowned +----GtkObject +----GtkWidget +----GtkContainer +----GtkMenuShell +----GtkMenu +----GtkRecentChooserMenu
GtkBuildable
.GtkMenu
is a GtkMenuShell
that implements a drop down menu consisting of
a list of GtkMenuItem
objects which can be navigated and activated by the
user to perform application functions. A GtkMenu
is most commonly dropped down by activating a GtkMenuItem
in a
GtkMenuBar
or popped up by activating a GtkMenuItem
in another GtkMenu
. A GtkMenu
can also be popped up by activating a GtkOptionMenu
.
Other composite widgets such as the GtkNotebook
can pop up a GtkMenu
as well. Applications can display a GtkMenu
as a popup menu by calling the
gtkMenuPopup
function. The example below shows how an application
can pop up a menu when the 3rd mouse button is pressed. Connecting the popup signal handler.
## connect our handler which will popup the menu gSignalConnect(window, "button_press_event", my_popup_handler, menu, user.data.first=TRUE)Signal handler which displays a popup menu.
# The popup handler my_popup_handler <- function(widget, event) { stopifnot(widget != NULL) checkPtrType(widget, "GtkMenu") stopifnot(event != NULL) ## The "widget" is the menu that was supplied when ## gSignalConnect() was called. menu <- widget if (event[["type"]] == "button-press") { if (event[["button"]] == 3) { menu$popup(button=event[["button"]], activate.time=event[["time"]]) return(TRUE) } } return(FALSE) }
gtkMenu
is the equivalent of gtkMenuNew
.GtkMenuPositionFunc(menu, x, y, push.in, user.data)
gtkMenuPopup
which controls the
positioning of the menu when it is displayed. The function sets the x
and y
parameters to the coordinates where the menu is to be drawn.
To make the menu appear on a different monitor than the mouse pointer,
gtkMenuSetMonitor
must be called. menu
GtkMenu
.x
integer
representing the horizontal position where the
menu shall be drawn. This is an output parameter.y
integer
representing the vertical position where the
menu shall be drawn. This is an output parameter.push.in
TRUE
and part of the menu is outside the monitor then
GTK+ pushes the window into the visible area, effectively modifying the
popup position.
Note that moving and possibly resizing the menu around will alter the
scroll position to keep the menu items "in place", i.e. at the same monitor
position they would have been without resizing.
In practice, this behavior is only useful for combobox popups or option
menus and cannot be used to simply confine a menu to monitor boundaries.
In that case, changing the scroll offset is not desirable.user.data
gtkMenuPopup
data
parameter.GtkMenuDetachFunc(attach.widget, menu)
gtkMenuAttachToWidget
which
will be called when the menu is later detached from the widget. accel-group
[GtkAccelGroup
: * : Read / Write]accel-path
[character : * : Read / Write]active
[integer : Read / Write]attach-widget
[GtkWidget
: * : Read / Write]GtkMenuDetachFunc
. If you need to use a detacher,
use gtkMenuAttachToWidget
directly.
Since 2.14 monitor
[integer : Read / Write]reserve-toggle-size
[logical : Read / Write]tearoff-state
[logical : Read / Write]tearoff-title
[character : * : Read / Write]arrow-placement
[GtkArrowPlacement : Read]arrow-scaling
[numeric : Read]double-arrows
[logical : Read]horizontal-offset
[integer : Read]horizontal-padding
[integer : Read]vertical-offset
[integer : Read]vertical-padding
[integer : Read]