Create string tightly when retrive string from cbhm callback event
[framework/web/webkit-efl.git] / Source / WebKit2 / UIProcess / API / efl / ewk_popup_menu_item_private.h
1 /*
2  * Copyright (C) 2012 Samsung Electronics
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
26 #ifndef ewk_popup_menu_item_private_h
27 #define ewk_popup_menu_item_private_h
28
29 #include "WKEinaSharedString.h"
30 #include "WebPopupItem.h"
31 #include "ewk_popup_menu_item.h"
32 #include <wtf/PassOwnPtr.h>
33
34 /**
35  * \struct  Ewk_Popup_Menu_Item
36  * @brief   Contains the popup menu data.
37  */
38 class Ewk_Popup_Menu_Item {
39 public:
40     Ewk_Popup_Menu_Item_Type type;
41     Ewk_Text_Direction textDirection;
42
43     bool hasTextDirectionOverride;
44     bool isEnabled;
45     bool isLabel;
46     bool isSelected;
47
48     WKEinaSharedString text;
49     WKEinaSharedString toolTip;
50     WKEinaSharedString accessibilityText;
51
52     static PassOwnPtr<Ewk_Popup_Menu_Item> create(const WebKit::WebPopupItem& item)
53     {
54         return adoptPtr(new Ewk_Popup_Menu_Item(item));
55     }
56
57 private:
58     explicit Ewk_Popup_Menu_Item(const WebKit::WebPopupItem& item);
59 };
60
61 #endif // ewk_popup_menu_item_private_h