mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-12-27 06:00:22 +00:00
popover: Make gtk_popover_bind_model() public
This is needed for the C++ bindings. https://bugzilla.gnome.org/show_bug.cgi?id=724503
This commit is contained in:
parent
c37df8ad83
commit
f3c9f86d14
@ -2048,7 +2048,50 @@ back_to_main (GtkWidget *popover)
|
||||
gtk_stack_set_visible_child_name (GTK_STACK (stack), "main");
|
||||
}
|
||||
|
||||
static void
|
||||
/**
|
||||
* gtk_popover_bind_model:
|
||||
* @popover: a #GtkPopover
|
||||
* @model: (allow-none): the #GMenuModel to bind to or %NULL to remove
|
||||
* binding
|
||||
* @action_namespace: (allow-none): the namespace for actions in @model
|
||||
* @with_separators: %TRUE if toplevel items in @popover should have
|
||||
* separators between them
|
||||
*
|
||||
* Establishes a binding between a #GtkPopover and a #GMenuModel.
|
||||
*
|
||||
* The contents of @popover are removed and then refilled with menu items
|
||||
* according to @model. When @model changes, @popover is updated.
|
||||
* Calling this function twice on @popover with different @model will
|
||||
* cause the first binding to be replaced with a binding to the new
|
||||
* model. If @model is %NULL then any previous binding is undone and
|
||||
* all children are removed.
|
||||
*
|
||||
* Individual items in @model are represented by #GtkModelButton widgets,
|
||||
* while submenus are represented by #GtkStack widgets.
|
||||
*
|
||||
* @with_separators determines if toplevel items (eg: sections) have
|
||||
* separators inserted between them. This is typically desired for
|
||||
* menus but doesn’t make sense for menubars.
|
||||
*
|
||||
* If @action_namespace is non-%NULL then the effect is as if all
|
||||
* actions mentioned in the @model have their names prefixed with the
|
||||
* namespace, plus a dot. For example, if the action “quit” is
|
||||
* mentioned and @action_namespace is “app” then the effective action
|
||||
* name is “app.quit”.
|
||||
*
|
||||
* This function uses #GtkActionable to define the action name and
|
||||
* target values on the created menu items. If you want to use an
|
||||
* action group other than “app” and “win”, or if you want to use a
|
||||
* #GtkMenuShell outside of a #GtkApplicationWindow, then you will need
|
||||
* to attach your own action group to the widget hierarchy using
|
||||
* gtk_widget_insert_action_group(). As an example, if you created a
|
||||
* group with a “quit” action and inserted it with the name “mygroup”
|
||||
* then you would use the action name “mygroup.quit” in your
|
||||
* #GMenuModel.
|
||||
*
|
||||
* Since: 3.12
|
||||
*/
|
||||
void
|
||||
gtk_popover_bind_model (GtkPopover *popover,
|
||||
GMenuModel *model,
|
||||
const gchar *action_namespace,
|
||||
|
@ -92,6 +92,12 @@ void gtk_popover_set_modal (GtkPopover *popover,
|
||||
GDK_AVAILABLE_IN_3_12
|
||||
gboolean gtk_popover_get_modal (GtkPopover *popover);
|
||||
|
||||
GDK_AVAILABLE_IN_3_12
|
||||
void gtk_popover_bind_model (GtkPopover *popover,
|
||||
GMenuModel *model,
|
||||
const gchar *action_namespace,
|
||||
gboolean with_separators);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __GTK_POPOVER_H__ */
|
||||
|
Loading…
Reference in New Issue
Block a user