Release 4.0.0-preview1-00051
[platform/core/csapi/tizenfx.git] / src / ElmSharp / Interop / Interop.Elementary.Popup.cs
1 /*
2  * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  * Licensed under the Apache License, Version 2.0 (the License);
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an AS IS BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 using System;
18 using System.Runtime.InteropServices;
19
20 internal static partial class Interop
21 {
22     internal static partial class Elementary
23     {
24         [DllImport(Libraries.Elementary)]
25         internal static extern IntPtr elm_popup_add(IntPtr obj);
26
27         [DllImport(Libraries.Elementary)]
28         internal static extern double elm_popup_timeout_get(IntPtr obj);
29
30         [DllImport(Libraries.Elementary)]
31         internal static extern void elm_popup_timeout_set(IntPtr obj, double timeout);
32
33         [DllImport(Libraries.Elementary)]
34         internal static extern double elm_popup_timeout_set(IntPtr obj);
35
36         [DllImport(Libraries.Elementary)]
37         internal static extern int elm_popup_orient_get(IntPtr obj);
38
39         [DllImport(Libraries.Elementary)]
40         internal static extern void elm_popup_orient_set(IntPtr obj, int orient);
41
42         [DllImport(Libraries.Elementary)]
43         internal static extern int elm_popup_orient_set(IntPtr obj);
44
45         [DllImport(Libraries.Elementary)]
46         internal static extern void elm_popup_allow_events_set(IntPtr obj, bool allow);
47
48         [DllImport(Libraries.Elementary)]
49         internal static extern bool elm_popup_allow_events_get(IntPtr obj);
50
51         [DllImport(Libraries.Elementary)]
52         internal static extern IntPtr elm_popup_item_append(IntPtr obj, string label, IntPtr icon, Evas.SmartCallback func, IntPtr data);
53
54         [DllImport(Libraries.Elementary)]
55         internal static extern void elm_popup_dismiss(IntPtr obj);
56
57         [DllImport(Libraries.Elementary)]
58         internal static extern void elm_popup_align_set(IntPtr obj, double horizontal, double vertical);
59
60         [DllImport(Libraries.Elementary)]
61         internal static extern void elm_popup_align_get(IntPtr obj, out double horizontal, out double vertical);
62
63         [DllImport(Libraries.Elementary)]
64         internal static extern void elm_popup_align_get(IntPtr obj, IntPtr horizontal, out double vertical);
65
66         [DllImport(Libraries.Elementary)]
67         internal static extern void elm_popup_align_get(IntPtr obj, out double horizontal, IntPtr vertical);
68
69         [DllImport(Libraries.Elementary)]
70         internal static extern void elm_popup_content_text_wrap_type_set(IntPtr obj, int type);
71
72         [DllImport(Libraries.Elementary)]
73         internal static extern int elm_popup_content_text_wrap_type_get(IntPtr obj);
74
75         internal static double GetPopupAlignX(IntPtr obj)
76         {
77             double x;
78             elm_popup_align_get(obj, out x, IntPtr.Zero);
79             return x;
80         }
81
82         internal static double GetPopupAlignY(IntPtr obj)
83         {
84             double y;
85             elm_popup_align_get(obj, IntPtr.Zero, out y);
86             return y;
87         }
88
89         internal static void SetPopupAlignX(IntPtr obj, double x)
90         {
91             double y = GetPopupAlignY(obj);
92             elm_popup_align_set(obj, x, y);
93         }
94
95         internal static void SetPopupAlignY(IntPtr obj, double y)
96         {
97             double x = GetPopupAlignX(obj);
98             elm_popup_align_set(obj, x, y);
99         }
100     }
101 }