1 // Copyright 2016 by Samsung Electronics, Inc.,
3 // This software is the confidential and proprietary information
4 // of Samsung Electronics, Inc. ("Confidential Information"). You
5 // shall not disclose such Confidential Information and shall use
6 // it only in accordance with the terms of the license agreement
7 // you entered into with Samsung.
10 using System.Runtime.InteropServices;
12 internal static partial class Interop
14 internal static partial class Elementary
16 [DllImport(Libraries.Elementary)]
17 internal static extern IntPtr elm_config_accel_preference_set(string preference);
19 [DllImport(Libraries.Elementary)]
20 internal static extern void elm_object_tree_dump(IntPtr top);
22 [DllImport(Libraries.Elementary)]
23 internal static extern bool elm_object_disabled_get(IntPtr obj);
25 [DllImport(Libraries.Elementary)]
26 internal static extern void elm_object_disabled_set(IntPtr obj, bool disabled);
28 [DllImport(Libraries.Elementary)]
29 internal static extern void elm_init(int argc, string[] argv);
31 [DllImport(Libraries.Elementary)]
32 internal static extern bool ecore_main_loop_glib_integrate();
34 [DllImport(Libraries.Elementary)]
35 internal static extern void elm_run();
37 [DllImport(Libraries.Elementary)]
38 internal static extern void elm_exit();
40 [DllImport(Libraries.Elementary)]
41 internal static extern void elm_shutdown();
43 [DllImport(Libraries.Elementary)]
44 internal static extern void elm_app_base_scale_set(double base_scale);
46 [DllImport(Libraries.Elementary)]
47 internal static extern IntPtr elm_conformant_add(IntPtr obj);
49 [DllImport(Libraries.Elementary, EntryPoint = "elm_object_part_text_get", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true, CharSet = CharSet.Ansi)]
50 internal static extern IntPtr _elm_object_part_text_get(IntPtr obj, IntPtr part);
52 [DllImport(Libraries.Elementary, EntryPoint = "elm_object_part_text_get", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true, CharSet = CharSet.Ansi)]
53 internal static extern IntPtr _elm_object_part_text_get(IntPtr obj, string part);
55 internal static string elm_object_part_text_get(IntPtr obj, string part)
57 var text = _elm_object_part_text_get(obj, part);
58 return Marshal.PtrToStringAnsi(text);
61 internal static string elm_object_part_text_get(IntPtr obj)
63 var text = _elm_object_part_text_get(obj, IntPtr.Zero);
64 return Marshal.PtrToStringAnsi(text);
67 [DllImport(Libraries.Elementary)]
68 internal static extern void elm_object_item_part_content_set(IntPtr obj, string part, IntPtr content);
70 [DllImport(Libraries.Elementary)]
71 internal static extern IntPtr elm_object_item_part_content_unset(IntPtr obj, string part);
73 [DllImport(Libraries.Elementary)]
74 internal static extern void elm_object_item_part_content_set(IntPtr obj, IntPtr part, IntPtr content);
76 [DllImport(Libraries.Elementary)]
77 internal static extern void elm_object_part_content_set(IntPtr obj, string part, IntPtr content);
79 [DllImport(Libraries.Elementary)]
80 internal static extern void elm_object_part_content_set(IntPtr obj, IntPtr part, IntPtr content);
82 internal static void elm_object_content_set(IntPtr obj, IntPtr content)
84 elm_object_part_content_set(obj, IntPtr.Zero, content);
87 [DllImport(Libraries.Elementary)]
88 internal static extern void elm_object_part_content_unset(IntPtr obj, string part);
90 internal static void elm_object_content_unset(IntPtr obj)
92 elm_object_part_content_unset(obj, null);
95 [DllImport(Libraries.Elementary)]
96 internal static extern IntPtr elm_layout_add(IntPtr obj);
98 [DllImport(Libraries.Elementary)]
99 internal static extern IntPtr elm_layout_content_set(IntPtr obj, string swallow, IntPtr content);
101 [DllImport(Libraries.Elementary)]
102 internal static extern IntPtr elm_layout_content_unset(IntPtr obj, string swallow);
104 [DllImport(Libraries.Elementary)]
105 internal static extern bool elm_layout_text_set(IntPtr obj, string part, string text);
107 [DllImport(Libraries.Elementary, EntryPoint = "elm_layout_text_get", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true, CharSet = CharSet.Ansi)]
108 internal static extern IntPtr _elm_layout_text_get(IntPtr obj, string part);
110 internal static string elm_layout_text_get(IntPtr obj, string part)
112 var text = _elm_layout_text_get(obj, part);
113 return Marshal.PtrToStringAnsi(text);
116 [DllImport(Libraries.Elementary)]
117 internal static extern bool elm_layout_theme_set(IntPtr obj, string klass, string group, string style);
119 [DllImport(Libraries.Elementary)]
120 internal static extern bool elm_layout_file_set(IntPtr obj, string file, string group);
122 [DllImport(Libraries.Elementary)]
123 internal static extern bool elm_object_style_set(IntPtr obj, string style);
125 [DllImport(Libraries.Elementary, EntryPoint = "elm_object_style_get", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true, CharSet = CharSet.Ansi)]
126 internal static extern IntPtr _elm_object_style_get(IntPtr obj);
128 internal static string elm_object_style_get(IntPtr obj)
130 var text = _elm_object_style_get(obj);
131 return Marshal.PtrToStringAnsi(text);
134 [DllImport(Libraries.Elementary)]
135 internal static extern void elm_object_part_color_set(IntPtr obj, string part, int r, int g, int b, int a);
137 [DllImport(Libraries.Elementary)]
138 internal static extern void elm_object_part_text_set(IntPtr obj, string part, string text);
140 [DllImport(Libraries.Elementary)]
141 internal static extern void elm_object_part_text_set(IntPtr obj, IntPtr part, string text);
143 [DllImport(Libraries.Elementary, EntryPoint = "elm_object_item_part_text_get", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true, CharSet = CharSet.Ansi)]
144 internal static extern IntPtr _elm_object_item_part_text_get(IntPtr obj, string part);
146 internal static string elm_object_item_part_text_get(IntPtr obj, string part)
148 var text = _elm_object_item_part_text_get(obj, part);
149 return Marshal.PtrToStringAnsi(text);
152 [DllImport(Libraries.Elementary)]
153 internal static extern void elm_object_item_part_text_set(IntPtr obj, string part, string label);
155 [DllImport(Libraries.Elementary)]
156 internal static extern void elm_object_item_part_text_set(IntPtr obj, IntPtr part, string label);
158 [DllImport(Libraries.Elementary)]
159 internal static extern IntPtr elm_object_item_data_get(IntPtr it);
161 [DllImport(Libraries.Elementary)]
162 internal static extern void elm_object_item_data_set(IntPtr it, IntPtr data);
164 [DllImport(Libraries.Elementary)]
165 internal static extern void elm_object_item_del(IntPtr obj);
167 [DllImport(Libraries.Elementary)]
168 internal static extern void elm_object_item_del_cb_set(IntPtr obj, Interop.Evas.SmartCallback callback);
170 [DllImport(Libraries.Elementary)]
171 internal static extern bool elm_object_focus_get(IntPtr obj);
173 [DllImport(Libraries.Elementary)]
174 internal static extern void elm_object_focus_set(IntPtr obj, bool focus);
176 [DllImport(Libraries.Elementary)]
177 internal static extern void elm_theme_extension_add(IntPtr obj, string path);
179 [DllImport(Libraries.Elementary)]
180 internal static extern IntPtr elm_theme_new();
182 [DllImport(Libraries.Elementary)]
183 internal static extern void elm_object_theme_set(IntPtr obj, IntPtr theme);
185 [DllImport(Libraries.Elementary)]
186 internal static extern IntPtr elm_layout_edje_get(IntPtr obj);
188 [DllImport(Libraries.Elementary)]
189 internal static extern bool edje_object_part_exists(IntPtr obj, string part);
191 [DllImport(Libraries.Elementary)]
192 internal static extern IntPtr edje_object_part_object_get(IntPtr obj, string part);
194 [DllImport(Libraries.Elementary)]
195 internal static extern bool edje_object_part_geometry_get(IntPtr obj, string part, out int x, out int y, out int w, out int h);
197 [DllImport(Libraries.Elementary)]
198 internal static extern bool edje_object_part_text_set(IntPtr obj, string part, string text);
200 [DllImport(Libraries.Elementary, EntryPoint = "edje_object_part_text_get", CharSet = CharSet.Ansi)]
201 internal static extern IntPtr _edje_object_part_text_get(IntPtr obj, string part);
203 internal static string edje_object_part_text_get(IntPtr obj, string part)
205 var text = _edje_object_part_text_get(obj, part);
206 return Marshal.PtrToStringAnsi(text);
210 [DllImport(Libraries.Elementary, EntryPoint = "edje_object_part_text_style_user_peek", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true, CharSet = CharSet.Ansi)]
211 internal static extern IntPtr _edje_object_part_text_style_user_peek(IntPtr obj, string part);
213 internal static string edje_object_part_text_style_user_peek(IntPtr obj, string part)
215 var text = _edje_object_part_text_style_user_peek(obj, part);
216 return Marshal.PtrToStringAnsi(text);
219 [DllImport(Libraries.Elementary)]
220 internal static extern void edje_object_part_text_style_user_push(IntPtr obj, string part, string style);
222 [DllImport(Libraries.Elementary)]
223 internal static extern void edje_object_part_text_style_user_pop(IntPtr obj, string part);
225 [DllImport(Libraries.Elementary)]
226 internal static extern void edje_object_signal_emit(IntPtr obj, string emission, string source);
228 internal static void SetObjectText(IntPtr obj, string text)
230 elm_object_part_text_set(obj, IntPtr.Zero, text);
233 internal static IntPtr GetPtrToObject(object data)
235 IntPtr dataPtr = IntPtr.Zero;
237 Marshal.StructureToPtr(data, dataPtr, true);