summaryrefslogtreecommitdiff
path: root/gtk/gtkmenu.h
diff options
context:
space:
mode:
authorPavel Holejsovsky <pholejs@src.gnome.org>2011-01-15 14:51:11 +0100
committerPavel Holejsovsky <pholejs@src.gnome.org>2011-01-17 15:27:04 +0100
commit4dab3a601d2075e29fa328879c6118c378c5a38f (patch)
treea792e7304ba4df9a00eb58257db8062ad33d772f /gtk/gtkmenu.h
parent2bd38dc7f5fe6aa4a555764343469cd22e219575 (diff)
downloadgtk+-4dab3a601d2075e29fa328879c6118c378c5a38f.tar.gz
Move GtkMenu docs inline
Diffstat (limited to 'gtk/gtkmenu.h')
-rw-r--r--gtk/gtkmenu.h39
1 files changed, 38 insertions, 1 deletions
diff --git a/gtk/gtkmenu.h b/gtk/gtkmenu.h
index 1c00338334..5f49dfbb47 100644
--- a/gtk/gtkmenu.h
+++ b/gtk/gtkmenu.h
@@ -50,11 +50,48 @@ typedef struct _GtkMenu GtkMenu;
typedef struct _GtkMenuClass GtkMenuClass;
typedef struct _GtkMenuPrivate GtkMenuPrivate;
+/**
+ * GtkMenuPositionFunc:
+ * @menu: a #GtkMenu.
+ * @x: (out): address of the #gint representing the horizontal
+ * position where the menu shall be drawn.
+ * @y: (out): address of the #gint representing the vertical position
+ * where the menu shall be drawn. This is an output parameter.
+ * @push_in: (inout): This parameter controls how menus placed outside
+ * the monitor are handled. If this is set to %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: the data supplied by the user in the gtk_menu_popup()
+ * @data parameter.
+ *
+ * A user function supplied when calling gtk_menu_popup() 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, gtk_menu_set_monitor() must be
+ * called.
+ */
typedef void (*GtkMenuPositionFunc) (GtkMenu *menu,
gint *x,
gint *y,
gboolean *push_in,
gpointer user_data);
+
+/**
+ * GtkMenuDetachFunc:
+ * @attach_widget: the #GtkWidget that the menu is being detached from.
+ * @menu: the #GtkMenu being detached.
+ *
+ * A user function supplied when calling gtk_menu_attach_to_widget() which
+ * will be called when the menu is later detached from the widget.
+ */
typedef void (*GtkMenuDetachFunc) (GtkWidget *attach_widget,
GtkMenu *menu);
@@ -111,7 +148,7 @@ void gtk_menu_popdown (GtkMenu *menu);
*/
GtkWidget* gtk_menu_get_active (GtkMenu *menu);
void gtk_menu_set_active (GtkMenu *menu,
- guint index_);
+ guint index);
/* set/get the accelerator group that holds global accelerators (should
* be added to the corresponding toplevel with gtk_window_add_accel_group().