| /* | |
| * Copyright © 2011 Canonical Ltd. | |
| * | |
| * SPDX-License-Identifier: LGPL-2.1-or-later | |
| * | |
| * This library is free software; you can redistribute it and/or | |
| * modify it under the terms of the GNU Lesser General Public | |
| * License as published by the Free Software Foundation; either | |
| * version 2.1 of the License, or (at your option) any later version. | |
| * | |
| * This library is distributed in the hope that it will be useful, but | |
| * WITHOUT ANY WARRANTY; without even the implied warranty of | |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
| * Lesser General Public License for more details. | |
| * | |
| * You should have received a copy of the GNU Lesser General Public | |
| * License along with this library; if not, see <http://www.gnu.org/licenses/>. | |
| * | |
| * Author: Ryan Lortie <desrt@desrt.ca> | |
| */ | |
| #ifndef __G_MENU_H__ | |
| #define __G_MENU_H__ | |
| #include <gio/gmenumodel.h> | |
| G_BEGIN_DECLS | |
| #define G_TYPE_MENU (g_menu_get_type ()) | |
| #define G_MENU(inst) (G_TYPE_CHECK_INSTANCE_CAST ((inst), \ | |
| G_TYPE_MENU, GMenu)) | |
| #define G_IS_MENU(inst) (G_TYPE_CHECK_INSTANCE_TYPE ((inst), \ | |
| G_TYPE_MENU)) | |
| #define G_TYPE_MENU_ITEM (g_menu_item_get_type ()) | |
| #define G_MENU_ITEM(inst) (G_TYPE_CHECK_INSTANCE_CAST ((inst), \ | |
| G_TYPE_MENU_ITEM, GMenuItem)) | |
| #define G_IS_MENU_ITEM(inst) (G_TYPE_CHECK_INSTANCE_TYPE ((inst), \ | |
| G_TYPE_MENU_ITEM)) | |
| typedef struct _GMenuItem GMenuItem; | |
| typedef struct _GMenu GMenu; | |
| GIO_AVAILABLE_IN_2_32 | |
| GType g_menu_get_type (void) G_GNUC_CONST; | |
| GIO_AVAILABLE_IN_2_32 | |
| GMenu * g_menu_new (void); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_freeze (GMenu *menu); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_insert_item (GMenu *menu, | |
| gint position, | |
| GMenuItem *item); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_prepend_item (GMenu *menu, | |
| GMenuItem *item); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_append_item (GMenu *menu, | |
| GMenuItem *item); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_remove (GMenu *menu, | |
| gint position); | |
| GIO_AVAILABLE_IN_2_38 | |
| void g_menu_remove_all (GMenu *menu); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_insert (GMenu *menu, | |
| gint position, | |
| const gchar *label, | |
| const gchar *detailed_action); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_prepend (GMenu *menu, | |
| const gchar *label, | |
| const gchar *detailed_action); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_append (GMenu *menu, | |
| const gchar *label, | |
| const gchar *detailed_action); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_insert_section (GMenu *menu, | |
| gint position, | |
| const gchar *label, | |
| GMenuModel *section); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_prepend_section (GMenu *menu, | |
| const gchar *label, | |
| GMenuModel *section); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_append_section (GMenu *menu, | |
| const gchar *label, | |
| GMenuModel *section); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_insert_submenu (GMenu *menu, | |
| gint position, | |
| const gchar *label, | |
| GMenuModel *submenu); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_prepend_submenu (GMenu *menu, | |
| const gchar *label, | |
| GMenuModel *submenu); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_append_submenu (GMenu *menu, | |
| const gchar *label, | |
| GMenuModel *submenu); | |
| GIO_AVAILABLE_IN_2_32 | |
| GType g_menu_item_get_type (void) G_GNUC_CONST; | |
| GIO_AVAILABLE_IN_2_32 | |
| GMenuItem * g_menu_item_new (const gchar *label, | |
| const gchar *detailed_action); | |
| GIO_AVAILABLE_IN_2_34 | |
| GMenuItem * g_menu_item_new_from_model (GMenuModel *model, | |
| gint item_index); | |
| GIO_AVAILABLE_IN_2_32 | |
| GMenuItem * g_menu_item_new_submenu (const gchar *label, | |
| GMenuModel *submenu); | |
| GIO_AVAILABLE_IN_2_32 | |
| GMenuItem * g_menu_item_new_section (const gchar *label, | |
| GMenuModel *section); | |
| GIO_AVAILABLE_IN_2_34 | |
| GVariant * g_menu_item_get_attribute_value (GMenuItem *menu_item, | |
| const gchar *attribute, | |
| const GVariantType *expected_type); | |
| GIO_AVAILABLE_IN_2_34 | |
| gboolean g_menu_item_get_attribute (GMenuItem *menu_item, | |
| const gchar *attribute, | |
| const gchar *format_string, | |
| ...); | |
| GIO_AVAILABLE_IN_2_34 | |
| GMenuModel *g_menu_item_get_link (GMenuItem *menu_item, | |
| const gchar *link); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_item_set_attribute_value (GMenuItem *menu_item, | |
| const gchar *attribute, | |
| GVariant *value); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_item_set_attribute (GMenuItem *menu_item, | |
| const gchar *attribute, | |
| const gchar *format_string, | |
| ...); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_item_set_link (GMenuItem *menu_item, | |
| const gchar *link, | |
| GMenuModel *model); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_item_set_label (GMenuItem *menu_item, | |
| const gchar *label); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_item_set_submenu (GMenuItem *menu_item, | |
| GMenuModel *submenu); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_item_set_section (GMenuItem *menu_item, | |
| GMenuModel *section); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_item_set_action_and_target_value (GMenuItem *menu_item, | |
| const gchar *action, | |
| GVariant *target_value); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_item_set_action_and_target (GMenuItem *menu_item, | |
| const gchar *action, | |
| const gchar *format_string, | |
| ...); | |
| GIO_AVAILABLE_IN_2_32 | |
| void g_menu_item_set_detailed_action (GMenuItem *menu_item, | |
| const gchar *detailed_action); | |
| GIO_AVAILABLE_IN_2_38 | |
| void g_menu_item_set_icon (GMenuItem *menu_item, | |
| GIcon *icon); | |
| G_END_DECLS | |
| #endif /* __G_MENU_H__ */ |