EWebKit  1.0
ewk_context_menu_item.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2012 Samsung Electronics. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  * notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  * notice, this list of conditions and the following disclaimer in the
11  * documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
14  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
15  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
17  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
20  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
21  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
22  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
23  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24  */
25 
31 #ifndef ewk_context_menu_item_h
32 #define ewk_context_menu_item_h
33 
34 #include <Eina.h>
35 
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
45 #ifdef __cplusplus
46 typedef class EwkObject Ewk_Context_Menu;
47 #else
48 typedef struct EwkObject Ewk_Context_Menu;
49 #endif
50 
52 #ifdef __cplusplus
54 #else
56 #endif
57 
62 typedef enum {
63  EWK_ACTION_TYPE,
64  EWK_CHECKABLE_ACTION_TYPE,
65  EWK_SEPARATOR_TYPE,
66  EWK_SUBMENU_TYPE
68 
73 typedef enum {
74  EWK_CONTEXT_MENU_ITEM_TAG_NO_ACTION,
75  EWK_CONTEXT_MENU_ITEM_TAG_OPEN_LINK_IN_NEW_WINDOW,
76  EWK_CONTEXT_MENU_ITEM_TAG_DOWNLOAD_LINK_TO_DISK,
77  EWK_CONTEXT_MENU_ITEM_TAG_COPY_LINK_TO_CLIPBOARD,
78  EWK_CONTEXT_MENU_ITEM_TAG_OPEN_IMAGE_IN_NEW_WINDOW,
79  EWK_CONTEXT_MENU_ITEM_TAG_DOWNLOAD_IMAGE_TO_DISK,
80  EWK_CONTEXT_MENU_ITEM_TAG_COPY_IMAGE_TO_CLIPBOARD,
81  EWK_CONTEXT_MENU_ITEM_TAG_COPY_IMAGE_URL_TO_CLIPBOARD,
82  EWK_CONTEXT_MENU_ITEM_TAG_OPEN_FRAME_IN_NEW_WINDOW,
83  EWK_CONTEXT_MENU_ITEM_TAG_COPY,
84  EWK_CONTEXT_MENU_ITEM_TAG_GO_BACK,
85  EWK_CONTEXT_MENU_ITEM_TAG_GO_FORWARD,
86  EWK_CONTEXT_MENU_ITEM_TAG_STOP,
87  EWK_CONTEXT_MENU_ITEM_TAG_RELOAD,
88  EWK_CONTEXT_MENU_ITEM_TAG_CUT,
89  EWK_CONTEXT_MENU_ITEM_TAG_PASTE,
90  EWK_CONTEXT_MENU_ITEM_TAG_SELECT_ALL,
91  EWK_CONTEXT_MENU_ITEM_TAG_SPELLING_GUESS,
92  EWK_CONTEXT_MENU_ITEM_TAG_NO_GUESSES_FOUND,
93  EWK_CONTEXT_MENU_ITEM_TAG_IGNORE_SPELLING,
94  EWK_CONTEXT_MENU_ITEM_TAG_LEARN_SPELLING,
95  EWK_CONTEXT_MENU_ITEM_TAG_OTHER,
96  EWK_CONTEXT_MENU_ITEM_TAG_SEARCH_IN_SPOTLIGHT,
97  EWK_CONTEXT_MENU_ITEM_TAG_SEARCH_WEB,
98  EWK_CONTEXT_MENU_ITEM_TAG_LOOK_UP_IN_DICTIONARY,
99  EWK_CONTEXT_MENU_ITEM_TAG_OPEN_WITH_DEFAULT_APPLICATION,
100  EWK_CONTEXT_MENU_ITEM_PDFACTUAL_SIZE,
101  EWK_CONTEXT_MENU_ITEM_PDFZOOM_IN,
102  EWK_CONTEXT_MENU_ITEM_PDFZOOM_OUT,
103  EWK_CONTEXT_MENU_ITEM_PDFAUTO_SIZE,
104  EWK_CONTEXT_MENU_ITEM_PDFSINGLE_PAGE,
105  EWK_CONTEXT_MENU_ITEM_PDFFACING_PAGES,
106  EWK_CONTEXT_MENU_ITEM_PDFCONTINUOUS,
107  EWK_CONTEXT_MENU_ITEM_PDFNEXT_PAGE,
108  EWK_CONTEXT_MENU_ITEM_PDFPREVIOUS_PAGE,
109  EWK_CONTEXT_MENU_ITEM_TAG_OPEN_LINK = 2000,
110  EWK_CONTEXT_MENU_ITEM_TAG_IGNORE_GRAMMAR,
112  EWK_CONTEXT_MENU_ITEM_TAG_SHOW_SPELLING_PANEL,
113  EWK_CONTEXT_MENU_ITEM_TAG_CHECK_SPELLING,
114  EWK_CONTEXT_MENU_ITEM_TAG_CHECK_SPELLING_WHILE_TYPING,
115  EWK_CONTEXT_MENU_ITEM_TAG_CHECK_GRAMMAR_WITH_SPELLING,
117  EWK_CONTEXT_MENU_ITEM_TAG_SHOW_FONTS,
118  EWK_CONTEXT_MENU_ITEM_TAG_BOLD,
119  EWK_CONTEXT_MENU_ITEM_TAG_ITALIC,
120  EWK_CONTEXT_MENU_ITEM_TAG_UNDERLINE,
121  EWK_CONTEXT_MENU_ITEM_TAG_OUTLINE,
122  EWK_CONTEXT_MENU_ITEM_TAG_STYLES,
123  EWK_CONTEXT_MENU_ITEM_TAG_SHOW_COLORS,
125  EWK_CONTEXT_MENU_ITEM_TAG_START_SPEAKING,
126  EWK_CONTEXT_MENU_ITEM_TAG_STOP_SPEAKING,
128  EWK_CONTEXT_MENU_ITEM_TAG_DEFAULT_DIRECTION,
129  EWK_CONTEXT_MENU_ITEM_TAG_LEFT_TO_RIGHT,
130  EWK_CONTEXT_MENU_ITEM_TAG_RIGHT_TO_LEFT,
131  EWK_CONTEXT_MENU_ITEM_TAG_PDFSINGLE_PAGE_SCROLLING,
132  EWK_CONTEXT_MENU_ITEM_TAG_PDFFACING_PAGES_SCROLLING,
133  EWK_CONTEXT_MENU_ITEM_TAG_INSPECT_ELEMENT,
135  EWK_CONTEXT_MENU_ITEM_TAG_TEXT_DIRECTION_DEFAULT,
136  EWK_CONTEXT_MENU_ITEM_TAG_TEXT_DIRECTION_LEFT_TO_RIGHT,
137  EWK_CONTEXT_MENU_ITEM_TAG_TEXT_DIRECTION_RIGHT_TO_LEFT,
138  EWK_CONTEXT_MENU_ITEM_OPEN_MEDIA_IN_NEW_WINDOW,
139  EWK_CONTEXT_MENU_ITEM_TAG_DOWNLOAD_MEDIA_TO_DISK,
140  EWK_CONTEXT_MENU_ITEM_TAG_COPY_MEDIA_LINK_TO_CLIPBOARD,
141  EWK_CONTEXT_MENU_ITEM_TAG_TOGGLE_MEDIA_CONTROLS,
142  EWK_CONTEXT_MENU_ITEM_TAG_TOGGLE_MEDIA_LOOP,
143  EWK_CONTEXT_MENU_ITEM_TAG_ENTER_VIDEO_FULLSCREEN,
144  EWK_CONTEXT_MENU_ITEM_TAG_MEDIA_PLAY_PAUSE,
145  EWK_CONTEXT_MENU_ITEM_TAG_MEDIA_MUTE,
146  EWK_CONTEXT_MENU_ITEM_BASE_APPLICATION_TAG = 10000
148 
161 EAPI Ewk_Context_Menu_Item *ewk_context_menu_item_new(Ewk_Context_Menu_Item_Type type, Ewk_Context_Menu_Item_Action action, const char *title, Eina_Bool checked, Eina_Bool enabled);
162 
174 EAPI Ewk_Context_Menu_Item *ewk_context_menu_item_new_with_submenu(Ewk_Context_Menu_Item_Action action, const char *title, Eina_Bool enabled, Ewk_Context_Menu *submenu);
175 
184 EAPI Ewk_Context_Menu_Item_Type ewk_context_menu_item_type_get(const Ewk_Context_Menu_Item *o);
185 
195 EAPI Eina_Bool ewk_context_menu_item_type_set(Ewk_Context_Menu_Item *o, Ewk_Context_Menu_Item_Type type);
196 
206 
217 
226 EAPI const char *ewk_context_menu_item_title_get(const Ewk_Context_Menu_Item *o);
227 
237 EAPI Eina_Bool ewk_context_menu_item_title_set(Ewk_Context_Menu_Item *o, const char *title);
238 
246 
254 EAPI Eina_Bool ewk_context_menu_item_checked_set(Ewk_Context_Menu_Item *o, Eina_Bool checked);
255 
265 
275 EAPI Eina_Bool ewk_context_menu_item_enabled_set(Ewk_Context_Menu_Item *o, Eina_Bool enabled);
276 
285 
294 
295 #ifdef __cplusplus
296 }
297 #endif
298 
299 #endif /* ewk_context_menu_item_h */
EAPI Eina_Bool ewk_context_menu_item_action_set(Ewk_Context_Menu_Item *o, Ewk_Context_Menu_Item_Action action)
Definition: ewk_context_menu_item.cpp:98
EAPI Ewk_Context_Menu * ewk_context_menu_item_submenu_get(const Ewk_Context_Menu_Item *o)
Definition: ewk_context_menu_item.cpp:162
Definition: ewk_context_menu_item.h:124
Definition: ewk_context_menu_item.h:116
EAPI const char * ewk_context_menu_item_title_get(const Ewk_Context_Menu_Item *o)
Definition: ewk_context_menu_item.cpp:107
Ewk_Context_Menu_Item_Type
Defines the types of the items for the context menu.
Definition: ewk_context_menu_item.h:62
EAPI Ewk_Context_Menu_Item * ewk_context_menu_item_new_with_submenu(Ewk_Context_Menu_Item_Action action, const char *title, Eina_Bool enabled, Ewk_Context_Menu *submenu)
Definition: ewk_context_menu_item.cpp:68
EAPI Ewk_Context_Menu * ewk_context_menu_item_parent_menu_get(const Ewk_Context_Menu_Item *o)
Definition: ewk_context_menu_item.cpp:155
EAPI Eina_Bool ewk_context_menu_item_enabled_set(Ewk_Context_Menu_Item *o, Eina_Bool enabled)
Definition: ewk_context_menu_item.cpp:146
Definition: ewk_object_private.h:31
EAPI Ewk_Context_Menu_Item_Action ewk_context_menu_item_action_get(const Ewk_Context_Menu_Item *o)
Definition: ewk_context_menu_item.cpp:91
Definition: ewk_context_menu_item.h:111
EAPI Eina_Bool ewk_context_menu_item_checked_get(const Ewk_Context_Menu_Item *o)
Definition: ewk_context_menu_item.cpp:123
EAPI Ewk_Context_Menu_Item_Type ewk_context_menu_item_type_get(const Ewk_Context_Menu_Item *o)
Definition: ewk_context_menu_item.cpp:75
Definition: ewk_context_menu_item_private.h:41
EAPI Ewk_Context_Menu_Item * ewk_context_menu_item_new(Ewk_Context_Menu_Item_Type type, Ewk_Context_Menu_Item_Action action, const char *title, Eina_Bool checked, Eina_Bool enabled)
Definition: ewk_context_menu_item.cpp:63
Definition: ewk_context_menu_item.h:134
EAPI Eina_Bool ewk_context_menu_item_checked_set(Ewk_Context_Menu_Item *o, Eina_Bool checked)
Definition: ewk_context_menu_item.cpp:130
EAPI Eina_Bool ewk_context_menu_item_title_set(Ewk_Context_Menu_Item *o, const char *title)
Definition: ewk_context_menu_item.cpp:114
Contains the context menu item data.
Definition: ewk_context_menu_item_private.h:35
EAPI Eina_Bool ewk_context_menu_item_enabled_get(const Ewk_Context_Menu_Item *o)
Definition: ewk_context_menu_item.cpp:139
EAPI Eina_Bool ewk_context_menu_item_type_set(Ewk_Context_Menu_Item *o, Ewk_Context_Menu_Item_Type type)
Definition: ewk_context_menu_item.cpp:82
Ewk_Context_Menu_Item_Action
Definition: ewk_context_menu_item.h:73
Definition: ewk_context_menu_item.h:127