1/* 2 * Copyright (C) 2012 Igalia S.L. 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Library General Public 6 * License as published by the Free Software Foundation; either 7 * version 2 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Library General Public License for more details. 13 * 14 * You should have received a copy of the GNU Library General Public License 15 * along with this library; see the file COPYING.LIB. If not, write to 16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 17 * Boston, MA 02110-1301, USA. 18 */ 19 20#if !defined(__WEBKIT2_H_INSIDE__) && !defined(WEBKIT2_COMPILATION) 21#error "Only <webkit2/webkit2.h> can be included directly." 22#endif 23 24#ifndef WebKitContextMenuItem_h 25#define WebKitContextMenuItem_h 26 27#include <gtk/gtk.h> 28#include <webkit2/WebKitDefines.h> 29#include <webkit2/WebKitContextMenu.h> 30#include <webkit2/WebKitContextMenuActions.h> 31#include <webkit2/WebKitForwardDeclarations.h> 32 33G_BEGIN_DECLS 34 35#define WEBKIT_TYPE_CONTEXT_MENU_ITEM (webkit_context_menu_item_get_type()) 36#define WEBKIT_CONTEXT_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_CONTEXT_MENU_ITEM, WebKitContextMenuItem)) 37#define WEBKIT_IS_CONTEXT_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_CONTEXT_MENU_ITEM)) 38#define WEBKIT_CONTEXT_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_CONTEXT_MENU_ITEM, WebKitContextMenuItemClass)) 39#define WEBKIT_IS_CONTEXT_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_CONTEXT_MENU_ITEM)) 40#define WEBKIT_CONTEXT_MENU_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_CONTEXT_MENU_ITEM, WebKitContextMenuItemClass)) 41 42typedef struct _WebKitContextMenuItemClass WebKitContextMenuItemClass; 43typedef struct _WebKitContextMenuItemPrivate WebKitContextMenuItemPrivate; 44 45struct _WebKitContextMenuItem { 46 GInitiallyUnowned parent; 47 48 WebKitContextMenuItemPrivate *priv; 49}; 50 51struct _WebKitContextMenuItemClass { 52 GInitiallyUnownedClass parent_class; 53 54 void (*_webkit_reserved0) (void); 55 void (*_webkit_reserved1) (void); 56 void (*_webkit_reserved2) (void); 57 void (*_webkit_reserved3) (void); 58}; 59 60WEBKIT_API GType 61webkit_context_menu_item_get_type (void); 62 63WEBKIT_API WebKitContextMenuItem * 64webkit_context_menu_item_new (GtkAction *action); 65 66WEBKIT_API WebKitContextMenuItem * 67webkit_context_menu_item_new_from_stock_action (WebKitContextMenuAction action); 68 69WEBKIT_API WebKitContextMenuItem * 70webkit_context_menu_item_new_from_stock_action_with_label (WebKitContextMenuAction action, 71 const gchar *label); 72 73WEBKIT_API WebKitContextMenuItem * 74webkit_context_menu_item_new_with_submenu (const gchar *label, 75 WebKitContextMenu *submenu); 76 77WEBKIT_API WebKitContextMenuItem * 78webkit_context_menu_item_new_separator (void); 79 80WEBKIT_API GtkAction * 81webkit_context_menu_item_get_action (WebKitContextMenuItem *item); 82 83WEBKIT_API WebKitContextMenuAction 84webkit_context_menu_item_get_stock_action (WebKitContextMenuItem *item); 85 86WEBKIT_API gboolean 87webkit_context_menu_item_is_separator (WebKitContextMenuItem *item); 88 89WEBKIT_API void 90webkit_context_menu_item_set_submenu (WebKitContextMenuItem *item, 91 WebKitContextMenu *submenu); 92 93WEBKIT_API WebKitContextMenu * 94webkit_context_menu_item_get_submenu (WebKitContextMenuItem *item); 95 96G_END_DECLS 97 98#endif 99