/* * Copyright © 2011 Canonical Ltd. * * 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_MODEL_H__ #define __G_MENU_MODEL_H__ #include <glib-object.h> #include <gio/giotypes.h> G_BEGIN_DECLS /** * G_MENU_ATTRIBUTE_ACTION: * * The menu item attribute which holds the action name of the item. Action * names are namespaced with an identifier for the action group in which the * action resides. For example, "win." for window-specific actions and "app." * for application-wide actions. * * See also g_menu_model_get_item_attribute() and g_menu_item_set_attribute(). * * Since: 2.32 **/ #define G_MENU_ATTRIBUTE_ACTION "action" /** * G_MENU_ATTRIBUTE_ACTION_NAMESPACE: * * The menu item attribute that holds the namespace for all action names in * menus that are linked from this item. * * Since: 2.36 **/ #define G_MENU_ATTRIBUTE_ACTION_NAMESPACE "action-namespace" /** * G_MENU_ATTRIBUTE_TARGET: * * The menu item attribute which holds the target with which the item's action * will be activated. * * See also g_menu_item_set_action_and_target() * * Since: 2.32 **/ #define G_MENU_ATTRIBUTE_TARGET "target" /** * G_MENU_ATTRIBUTE_LABEL: * * The menu item attribute which holds the label of the item. * * Since: 2.32 **/ #define G_MENU_ATTRIBUTE_LABEL "label" /** * G_MENU_ATTRIBUTE_ICON: * * The menu item attribute which holds the icon of the item. * * The icon is stored in the format returned by g_icon_serialize(). * * This attribute is intended only to represent 'noun' icons such as * favicons for a webpage, or application icons. It should not be used * for 'verbs' (ie: stock icons). * * Since: 2.38 **/ #define G_MENU_ATTRIBUTE_ICON "icon" /** * G_MENU_LINK_SUBMENU: * * The name of the link that associates a menu item with a submenu. * * See also g_menu_item_set_link(). * * Since: 2.32 **/ #define G_MENU_LINK_SUBMENU "submenu" /** * G_MENU_LINK_SECTION: * * The name of the link that associates a menu item with a section. The linked * menu will usually be shown in place of the menu item, using the item's label * as a header. * * See also g_menu_item_set_link(). * * Since: 2.32 **/ #define G_MENU_LINK_SECTION "section" #define G_TYPE_MENU_MODEL (g_menu_model_get_type ()) #define G_MENU_MODEL(inst) (G_TYPE_CHECK_INSTANCE_CAST ((inst), \ G_TYPE_MENU_MODEL, GMenuModel)) #define G_MENU_MODEL_CLASS(class) (G_TYPE_CHECK_CLASS_CAST ((class), \ G_TYPE_MENU_MODEL, GMenuModelClass)) #define G_IS_MENU_MODEL(inst) (G_TYPE_CHECK_INSTANCE_TYPE ((inst), \ G_TYPE_MENU_MODEL)) #define G_IS_MENU_MODEL_CLASS(class) (G_TYPE_CHECK_CLASS_TYPE ((class), \ G_TYPE_MENU_MODEL)) #define G_MENU_MODEL_GET_CLASS(inst) (G_TYPE_INSTANCE_GET_CLASS ((inst), \ G_TYPE_MENU_MODEL, GMenuModelClass)) typedef struct _GMenuModelPrivate GMenuModelPrivate; typedef struct _GMenuModelClass GMenuModelClass; typedef struct _GMenuAttributeIterPrivate GMenuAttributeIterPrivate; typedef struct _GMenuAttributeIterClass GMenuAttributeIterClass; typedef struct _GMenuAttributeIter GMenuAttributeIter; typedef struct _GMenuLinkIterPrivate GMenuLinkIterPrivate; typedef struct _GMenuLinkIterClass GMenuLinkIterClass; typedef struct _GMenuLinkIter GMenuLinkIter; struct _GMenuModel { GObject parent_instance; GMenuModelPrivate *priv; }; /** * GMenuModelClass::get_item_attributes: * @model: the #GMenuModel to query * @item_index: The #GMenuItem to query * @attributes: (out) (element-type utf8 GLib.Variant): Attributes on the item * * Gets all the attributes associated with the item in the menu model. */ /** * GMenuModelClass::get_item_links: * @model: the #GMenuModel to query * @item_index: The #GMenuItem to query * @links: (out) (element-type utf8 Gio.MenuModel): Links from the item * * Gets all the links associated with the item in the menu model. */ struct _GMenuModelClass { GObjectClass parent_class; gboolean (*is_mutable) (GMenuModel *model); gint (*get_n_items) (GMenuModel *model); void (*get_item_attributes) (GMenuModel *model, gint item_index, GHashTable **attributes); GMenuAttributeIter * (*iterate_item_attributes) (GMenuModel *model, gint item_index); GVariant * (*get_item_attribute_value) (GMenuModel *model, gint item_index, const gchar *attribute, const GVariantType *expected_type); void (*get_item_links) (GMenuModel *model, gint item_index, GHashTable **links); GMenuLinkIter * (*iterate_item_links) (GMenuModel *model, gint item_index); GMenuModel * (*get_item_link) (GMenuModel *model, gint item_index, const gchar *link); }; GLIB_AVAILABLE_IN_2_32 GType g_menu_model_get_type (void) G_GNUC_CONST; GLIB_AVAILABLE_IN_2_32 gboolean g_menu_model_is_mutable (GMenuModel *model); GLIB_AVAILABLE_IN_2_32 gint g_menu_model_get_n_items (GMenuModel *model); GLIB_AVAILABLE_IN_2_32 GMenuAttributeIter * g_menu_model_iterate_item_attributes (GMenuModel *model, gint item_index); GLIB_AVAILABLE_IN_2_32 GVariant * g_menu_model_get_item_attribute_value (GMenuModel *model, gint item_index, const gchar *attribute, const GVariantType *expected_type); GLIB_AVAILABLE_IN_2_32 gboolean g_menu_model_get_item_attribute (GMenuModel *model, gint item_index, const gchar *attribute, const gchar *format_string, ...); GLIB_AVAILABLE_IN_2_32 GMenuLinkIter * g_menu_model_iterate_item_links (GMenuModel *model, gint item_index); GLIB_AVAILABLE_IN_2_32 GMenuModel * g_menu_model_get_item_link (GMenuModel *model, gint item_index, const gchar *link); GLIB_AVAILABLE_IN_2_32 void g_menu_model_items_changed (GMenuModel *model, gint position, gint removed, gint added); #define G_TYPE_MENU_ATTRIBUTE_ITER (g_menu_attribute_iter_get_type ()) #define G_MENU_ATTRIBUTE_ITER(inst) (G_TYPE_CHECK_INSTANCE_CAST ((inst), \ G_TYPE_MENU_ATTRIBUTE_ITER, GMenuAttributeIter)) #define G_MENU_ATTRIBUTE_ITER_CLASS(class) (G_TYPE_CHECK_CLASS_CAST ((class), \ G_TYPE_MENU_ATTRIBUTE_ITER, GMenuAttributeIterClass)) #define G_IS_MENU_ATTRIBUTE_ITER(inst) (G_TYPE_CHECK_INSTANCE_TYPE ((inst), \ G_TYPE_MENU_ATTRIBUTE_ITER)) #define G_IS_MENU_ATTRIBUTE_ITER_CLASS(class) (G_TYPE_CHECK_CLASS_TYPE ((class), \ G_TYPE_MENU_ATTRIBUTE_ITER)) #define G_MENU_ATTRIBUTE_ITER_GET_CLASS(inst) (G_TYPE_INSTANCE_GET_CLASS ((inst), \ G_TYPE_MENU_ATTRIBUTE_ITER, GMenuAttributeIterClass)) struct _GMenuAttributeIter { GObject parent_instance; GMenuAttributeIterPrivate *priv; }; struct _GMenuAttributeIterClass { GObjectClass parent_class; gboolean (*get_next) (GMenuAttributeIter *iter, const gchar **out_name, GVariant **value); }; GLIB_AVAILABLE_IN_2_32 GType g_menu_attribute_iter_get_type (void) G_GNUC_CONST; GLIB_AVAILABLE_IN_2_32 gboolean g_menu_attribute_iter_get_next (GMenuAttributeIter *iter, const gchar **out_name, GVariant **value); GLIB_AVAILABLE_IN_2_32 gboolean g_menu_attribute_iter_next (GMenuAttributeIter *iter); GLIB_AVAILABLE_IN_2_32 const gchar * g_menu_attribute_iter_get_name (GMenuAttributeIter *iter); GLIB_AVAILABLE_IN_2_32 GVariant * g_menu_attribute_iter_get_value (GMenuAttributeIter *iter); #define G_TYPE_MENU_LINK_ITER (g_menu_link_iter_get_type ()) #define G_MENU_LINK_ITER(inst) (G_TYPE_CHECK_INSTANCE_CAST ((inst), \ G_TYPE_MENU_LINK_ITER, GMenuLinkIter)) #define G_MENU_LINK_ITER_CLASS(class) (G_TYPE_CHECK_CLASS_CAST ((class), \ G_TYPE_MENU_LINK_ITER, GMenuLinkIterClass)) #define G_IS_MENU_LINK_ITER(inst) (G_TYPE_CHECK_INSTANCE_TYPE ((inst), \ G_TYPE_MENU_LINK_ITER)) #define G_IS_MENU_LINK_ITER_CLASS(class) (G_TYPE_CHECK_CLASS_TYPE ((class), \ G_TYPE_MENU_LINK_ITER)) #define G_MENU_LINK_ITER_GET_CLASS(inst) (G_TYPE_INSTANCE_GET_CLASS ((inst), \ G_TYPE_MENU_LINK_ITER, GMenuLinkIterClass)) struct _GMenuLinkIter { GObject parent_instance; GMenuLinkIterPrivate *priv; }; struct _GMenuLinkIterClass { GObjectClass parent_class; gboolean (*get_next) (GMenuLinkIter *iter, const gchar **out_link, GMenuModel **value); }; GLIB_AVAILABLE_IN_2_32 GType g_menu_link_iter_get_type (void) G_GNUC_CONST; GLIB_AVAILABLE_IN_2_32 gboolean g_menu_link_iter_get_next (GMenuLinkIter *iter, const gchar **out_link, GMenuModel **value); GLIB_AVAILABLE_IN_2_32 gboolean g_menu_link_iter_next (GMenuLinkIter *iter); GLIB_AVAILABLE_IN_2_32 const gchar * g_menu_link_iter_get_name (GMenuLinkIter *iter); GLIB_AVAILABLE_IN_2_32 GMenuModel * g_menu_link_iter_get_value (GMenuLinkIter *iter); G_END_DECLS #endif /* __G_MENU_MODEL_H__ */
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
gaction.h | File | 4.5 KB | 0644 |
|
gactiongroup.h | File | 8.95 KB | 0644 |
|
gactiongroupexporter.h | File | 1.73 KB | 0644 |
|
gactionmap.h | File | 3.9 KB | 0644 |
|
gappinfo.h | File | 16.99 KB | 0644 |
|
gapplication.h | File | 14.12 KB | 0644 |
|
gapplicationcommandline.h | File | 6.02 KB | 0644 |
|
gasyncinitable.h | File | 4.25 KB | 0644 |
|
gasyncresult.h | File | 2.75 KB | 0644 |
|
gbufferedinputstream.h | File | 5.11 KB | 0644 |
|
gbufferedoutputstream.h | File | 3.26 KB | 0644 |
|
gbytesicon.h | File | 1.61 KB | 0644 |
|
gcancellable.h | File | 3.96 KB | 0644 |
|
gcharsetconverter.h | File | 2.46 KB | 0644 |
|
gcontenttype.h | File | 2.65 KB | 0644 |
|
gconverter.h | File | 2.82 KB | 0644 |
|
gconverterinputstream.h | File | 2.94 KB | 0644 |
|
gconverteroutputstream.h | File | 2.98 KB | 0644 |
|
gcredentials.h | File | 3.33 KB | 0644 |
|
gdatagrambased.h | File | 6.5 KB | 0644 |
|
gdatainputstream.h | File | 10.88 KB | 0644 |
|
gdataoutputstream.h | File | 4.81 KB | 0644 |
|
gdbusactiongroup.h | File | 2.67 KB | 0644 |
|
gdbusaddress.h | File | 2.61 KB | 0644 |
|
gdbusauthobserver.h | File | 2.08 KB | 0644 |
|
gdbusconnection.h | File | 37.86 KB | 0644 |
|
gdbuserror.h | File | 4.21 KB | 0644 |
|
gdbusinterface.h | File | 3 KB | 0644 |
|
gdbusinterfaceskeleton.h | File | 5.91 KB | 0644 |
|
gdbusintrospection.h | File | 12.1 KB | 0644 |
|
gdbusmenumodel.h | File | 1.69 KB | 0644 |
|
gdbusmessage.h | File | 11.12 KB | 0644 |
|
gdbusmethodinvocation.h | File | 5.67 KB | 0644 |
|
gdbusnameowning.h | File | 4.76 KB | 0644 |
|
gdbusnamewatching.h | File | 4.41 KB | 0644 |
|
gdbusobject.h | File | 2.87 KB | 0644 |
|
gdbusobjectmanager.h | File | 4.37 KB | 0644 |
|
gdbusobjectmanagerclient.h | File | 9.57 KB | 0644 |
|
gdbusobjectmanagerserver.h | File | 4.02 KB | 0644 |
|
gdbusobjectproxy.h | File | 2.57 KB | 0644 |
|
gdbusobjectskeleton.h | File | 3.86 KB | 0644 |
|
gdbusproxy.h | File | 11.8 KB | 0644 |
|
gdbusserver.h | File | 2.47 KB | 0644 |
|
gdbusutils.h | File | 1.74 KB | 0644 |
|
gdrive.h | File | 13.96 KB | 0644 |
|
gdtlsclientconnection.h | File | 3.12 KB | 0644 |
|
gdtlsconnection.h | File | 10.44 KB | 0644 |
|
gdtlsserverconnection.h | File | 2.39 KB | 0644 |
|
gemblem.h | File | 2.1 KB | 0644 |
|
gemblemedicon.h | File | 2.72 KB | 0644 |
|
gfile.h | File | 77.08 KB | 0644 |
|
gfileattribute.h | File | 2.74 KB | 0644 |
|
gfileenumerator.h | File | 6.24 KB | 0644 |
|
gfileicon.h | File | 1.91 KB | 0644 |
|
gfileinfo.h | File | 41.46 KB | 0644 |
|
gfileinputstream.h | File | 4.55 KB | 0644 |
|
gfileiostream.h | File | 4.92 KB | 0644 |
|
gfilemonitor.h | File | 3.2 KB | 0644 |
|
gfilenamecompleter.h | File | 3.02 KB | 0644 |
|
gfileoutputstream.h | File | 5.21 KB | 0644 |
|
gfilterinputstream.h | File | 2.77 KB | 0644 |
|
gfilteroutputstream.h | File | 2.81 KB | 0644 |
|
gicon.h | File | 3.35 KB | 0644 |
|
ginetaddress.h | File | 4.42 KB | 0644 |
|
ginetaddressmask.h | File | 3.05 KB | 0644 |
|
ginetsocketaddress.h | File | 3.04 KB | 0644 |
|
ginitable.h | File | 2.84 KB | 0644 |
|
ginputstream.h | File | 8.97 KB | 0644 |
|
gio-autocleanups.h | File | 8.64 KB | 0644 |
|
gio.h | File | 5.45 KB | 0644 |
|
gioenums.h | File | 70.63 KB | 0644 |
|
gioenumtypes.h | File | 11.71 KB | 0644 |
|
gioerror.h | File | 1.52 KB | 0644 |
|
giomodule.h | File | 7.88 KB | 0644 |
|
gioscheduler.h | File | 1.95 KB | 0644 |
|
giostream.h | File | 4.75 KB | 0644 |
|
giotypes.h | File | 24.11 KB | 0644 |
|
glistmodel.h | File | 2.52 KB | 0644 |
|
gliststore.h | File | 3.39 KB | 0644 |
|
gloadableicon.h | File | 3.58 KB | 0644 |
|
gmemoryinputstream.h | File | 3.35 KB | 0644 |
|
gmemoryoutputstream.h | File | 3.84 KB | 0644 |
|
gmenu.h | File | 8.73 KB | 0644 |
|
gmenuexporter.h | File | 1.57 KB | 0644 |
|
gmenumodel.h | File | 14 KB | 0644 |
|
gmount.h | File | 15.42 KB | 0644 |
|
gmountoperation.h | File | 5.35 KB | 0644 |
|
gnativevolumemonitor.h | File | 2.22 KB | 0644 |
|
gnetworkaddress.h | File | 2.89 KB | 0644 |
|
gnetworking.h | File | 1.95 KB | 0644 |
|
gnetworkmonitor.h | File | 4.14 KB | 0644 |
|
gnetworkservice.h | File | 2.69 KB | 0644 |
|
gnotification.h | File | 4.78 KB | 0644 |
|
goutputstream.h | File | 12.25 KB | 0644 |
|
gpermission.h | File | 5.72 KB | 0644 |
|
gpollableinputstream.h | File | 3.74 KB | 0644 |
|
gpollableoutputstream.h | File | 3.81 KB | 0644 |
|
gpollableutils.h | File | 2.08 KB | 0644 |
|
gpropertyaction.h | File | 1.95 KB | 0644 |
|
gproxy.h | File | 3.97 KB | 0644 |
|
gproxyaddress.h | File | 3.09 KB | 0644 |
|
gproxyaddressenumerator.h | File | 2.74 KB | 0644 |
|
gproxyresolver.h | File | 3.31 KB | 0644 |
|
gremoteactiongroup.h | File | 3.55 KB | 0644 |
|
gresolver.h | File | 8.61 KB | 0644 |
|
gresource.h | File | 4.54 KB | 0644 |
|
gseekable.h | File | 3.2 KB | 0644 |
|
gsettings.h | File | 20.65 KB | 0644 |
|
gsettingsbackend.h | File | 8.31 KB | 0644 |
|
gsettingsschema.h | File | 5.79 KB | 0644 |
|
gsimpleaction.h | File | 2.85 KB | 0644 |
|
gsimpleactiongroup.h | File | 4.25 KB | 0644 |
|
gsimpleasyncresult.h | File | 7.63 KB | 0644 |
|
gsimpleiostream.h | File | 1.68 KB | 0644 |
|
gsimplepermission.h | File | 1.65 KB | 0644 |
|
gsimpleproxyresolver.h | File | 3.45 KB | 0644 |
|
gsocket.h | File | 15.25 KB | 0644 |
|
gsocketaddress.h | File | 3.01 KB | 0644 |
|
gsocketaddressenumerator.h | File | 3.45 KB | 0644 |
|
gsocketclient.h | File | 10.95 KB | 0644 |
|
gsocketconnectable.h | File | 2.82 KB | 0644 |
|
gsocketconnection.h | File | 4.94 KB | 0644 |
|
gsocketcontrolmessage.h | File | 4.77 KB | 0644 |
|
gsocketlistener.h | File | 7.5 KB | 0644 |
|
gsocketservice.h | File | 3.54 KB | 0644 |
|
gsrvtarget.h | File | 1.89 KB | 0644 |
|
gsubprocess.h | File | 8.4 KB | 0644 |
|
gsubprocesslauncher.h | File | 6.25 KB | 0644 |
|
gtask.h | File | 7.43 KB | 0644 |
|
gtcpconnection.h | File | 2.89 KB | 0644 |
|
gtcpwrapperconnection.h | File | 2.9 KB | 0644 |
|
gtestdbus.h | File | 2.25 KB | 0644 |
|
gthemedicon.h | File | 2.58 KB | 0644 |
|
gthreadedsocketservice.h | File | 3.58 KB | 0644 |
|
gtlsbackend.h | File | 4.3 KB | 0644 |
|
gtlscertificate.h | File | 3.42 KB | 0644 |
|
gtlsclientconnection.h | File | 3.6 KB | 0644 |
|
gtlsconnection.h | File | 6.02 KB | 0644 |
|
gtlsdatabase.h | File | 16.87 KB | 0644 |
|
gtlsfiledatabase.h | File | 1.86 KB | 0644 |
|
gtlsinteraction.h | File | 8.14 KB | 0644 |
|
gtlspassword.h | File | 4.71 KB | 0644 |
|
gtlsserverconnection.h | File | 2.29 KB | 0644 |
|
gvfs.h | File | 6.46 KB | 0644 |
|
gvolume.h | File | 11.37 KB | 0644 |
|
gvolumemonitor.h | File | 5.86 KB | 0644 |
|
gzlibcompressor.h | File | 2.29 KB | 0644 |
|
gzlibdecompressor.h | File | 2.16 KB | 0644 |
|