Release 4.0.0-preview1-00051
[platform/core/csapi/tizenfx.git] / src / ElmSharp / Interop / Interop.Elementary.Win.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 ElmSharp;
18 using System;
19 using System.Runtime.InteropServices;
20
21 internal static partial class Interop
22 {
23     internal static partial class Elementary
24     {
25         [DllImport(Libraries.Elementary)]
26         internal static extern IntPtr elm_win_add(IntPtr parent, string name, int type);
27
28         [DllImport(Libraries.Elementary)]
29         internal static extern IntPtr elm_win_util_standard_add(string name, string title);
30
31         [DllImport(Libraries.Elementary)]
32         internal static extern void elm_win_activate(IntPtr obj);
33
34         [DllImport(Libraries.Elementary)]
35         internal static extern void elm_win_title_set(IntPtr obj, string title);
36
37         [DllImport(Libraries.Elementary, EntryPoint = "elm_win_title_get", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true, CharSet = CharSet.Ansi)]
38         internal static extern IntPtr _elm_win_title_get(IntPtr obj);
39
40         internal static string elm_win_title_get(IntPtr obj)
41         {
42             var text = _elm_win_title_get(obj);
43             return Marshal.PtrToStringAnsi(text);
44         }
45
46         [DllImport(Libraries.Elementary)]
47         internal static extern void elm_win_screen_size_get(IntPtr obj, out int x, out int y, out int w, out int h);
48
49         [DllImport(Libraries.Elementary)]
50         internal static extern void elm_win_resize_object_del(IntPtr obj, IntPtr subobj);
51
52         [DllImport(Libraries.Elementary)]
53         internal static extern void elm_win_resize_object_add(IntPtr obj, IntPtr subobj);
54
55         [DllImport(Libraries.Elementary)]
56         internal static extern void elm_win_raise(IntPtr obj);
57
58         [DllImport(Libraries.Elementary)]
59         internal static extern void elm_win_lower(IntPtr obj);
60
61         [DllImport(Libraries.Elementary)]
62         internal static extern bool elm_win_alpha_get(IntPtr obj);
63
64         [DllImport(Libraries.Elementary)]
65         internal static extern void elm_win_alpha_set(IntPtr obj, bool alpha);
66
67         [DllImport(Libraries.Elementary, EntryPoint = "elm_win_role_get")]
68         internal static extern IntPtr _elm_win_role_get(IntPtr obj);
69
70         internal static string elm_win_role_get(IntPtr obj)
71         {
72             var text = _elm_win_role_get(obj);
73             return Marshal.PtrToStringAnsi(text);
74         }
75
76         [DllImport(Libraries.Elementary)]
77         internal static extern void elm_win_role_set(IntPtr obj, string role);
78
79         [DllImport(Libraries.Elementary, EntryPoint = "elm_win_focus_highlight_style_get")]
80         internal static extern IntPtr _elm_win_focus_highlight_style_get(IntPtr obj);
81
82         internal static string elm_win_focus_highlight_style_get(IntPtr obj)
83         {
84             return Marshal.PtrToStringAnsi(_elm_win_focus_highlight_style_get(obj));
85         }
86
87         [DllImport(Libraries.Elementary)]
88         internal static extern void elm_win_focus_highlight_style_set(IntPtr obj, string style);
89
90         [DllImport(Libraries.Elementary)]
91         internal static extern bool elm_win_borderless_get(IntPtr obj);
92
93         [DllImport(Libraries.Elementary)]
94         internal static extern void elm_win_borderless_set(IntPtr obj, bool borderless);
95
96         [DllImport(Libraries.Elementary)]
97         internal static extern void elm_win_focus_highlight_enabled_set(IntPtr obj, bool enabled);
98
99         [DllImport(Libraries.Elementary)]
100         internal static extern bool elm_win_focus_highlight_enabled_get(IntPtr obj);
101
102         [DllImport(Libraries.Elementary)]
103         internal static extern void elm_win_autodel_set(IntPtr obj, bool autodel);
104
105         [DllImport(Libraries.Elementary)]
106         internal static extern bool elm_win_autodel_get(IntPtr obj);
107
108         [DllImport(Libraries.Elementary)]
109         internal static extern bool elm_win_override_get(IntPtr obj);
110
111         [DllImport(Libraries.Elementary)]
112         internal static extern void elm_win_override_set(IntPtr obj, bool isOverride);
113
114         [DllImport(Libraries.Elementary)]
115         internal static extern void elm_win_indicator_opacity_set(IntPtr obj, int opacity);
116
117         [DllImport(Libraries.Elementary)]
118         internal static extern int elm_win_indicator_opacity_get(IntPtr obj);
119
120         [DllImport(Libraries.Elementary)]
121         internal static extern void elm_win_indicator_mode_set(IntPtr obj, IndicatorMode mode);
122
123         [DllImport(Libraries.Elementary)]
124         internal static extern IndicatorMode elm_win_indicator_mode_get(IntPtr obj);
125
126         [DllImport(Libraries.Elementary)]
127         internal static extern bool elm_win_demand_attention_get(IntPtr obj);
128
129         [DllImport(Libraries.Elementary)]
130         internal static extern void elm_win_demand_attention_set(IntPtr obj, bool demandAttention);
131
132         [DllImport(Libraries.Elementary)]
133         internal static extern bool elm_win_conformant_get(IntPtr obj);
134
135         [DllImport(Libraries.Elementary)]
136         internal static extern void elm_win_conformant_set(IntPtr obj, bool conformant);
137
138         [DllImport(Libraries.Elementary)]
139         internal static extern bool elm_win_fullscreen_get(IntPtr obj);
140
141         [DllImport(Libraries.Elementary)]
142         internal static extern void elm_win_fullscreen_set(IntPtr obj, bool fullscreen);
143
144         [DllImport(Libraries.Elementary)]
145         internal static extern void elm_win_rotation_set(IntPtr obj, int rotation);
146
147         [DllImport(Libraries.Elementary)]
148         internal static extern int elm_win_rotation_get(IntPtr obj);
149
150         [DllImport(Libraries.Elementary)]
151         internal static extern void elm_win_rotation_with_resize_set(IntPtr obj, int rotation);
152
153         [DllImport(Libraries.Elementary)]
154         internal static extern void elm_win_prop_focus_skip_set(IntPtr obj, bool skip);
155
156         [DllImport(Libraries.Elementary)]
157         internal static extern bool elm_win_wm_rotation_supported_get(IntPtr obj);
158
159         [DllImport(Libraries.Elementary)]
160         internal static extern bool elm_win_focus_get(IntPtr obj);
161
162         [DllImport(Libraries.Elementary, EntryPoint = "elm_win_wm_rotation_available_rotations_set")]
163         internal static extern void _elm_win_wm_rotation_available_rotations_set(IntPtr obj, IntPtr rotations, uint count);
164
165         internal static void elm_win_wm_rotation_available_rotations_set(IntPtr obj, int[] rotations)
166         {
167             IntPtr pRotations = Marshal.AllocHGlobal(Marshal.SizeOf<int>() * rotations.Length);
168             Marshal.Copy(rotations, 0, pRotations, rotations.Length);
169             _elm_win_wm_rotation_available_rotations_set(obj, pRotations, (uint)rotations.Length);
170             Marshal.FreeHGlobal(pRotations);
171         }
172
173         [DllImport(Libraries.Elementary, EntryPoint = "elm_win_wm_rotation_available_rotations_get")]
174         internal static extern bool _elm_win_wm_rotation_available_rotations_get(IntPtr obj, out IntPtr rotations, out int count);
175
176         internal static bool elm_win_wm_rotation_available_rotations_get(IntPtr obj, out int[] rotations)
177         {
178             IntPtr rotationArrPtr;
179             int count;
180             if (_elm_win_wm_rotation_available_rotations_get(obj, out rotationArrPtr, out count))
181             {
182                 rotations = new int[count];
183                 Marshal.Copy(rotationArrPtr, rotations, 0, count);
184                 Libc.Free(rotationArrPtr);
185                 return true;
186             }
187             rotations = null;
188             return false;
189         }
190
191         [DllImport(Libraries.Elementary)]
192         internal static extern int elm_win_layer_get(IntPtr obj);
193
194         [DllImport(Libraries.Elementary)]
195         internal static extern void elm_win_layer_set(IntPtr obj, int layer);
196
197         [DllImport(Libraries.Elementary)]
198         internal static extern bool elm_win_sticky_get(IntPtr obj);
199
200         [DllImport(Libraries.Elementary)]
201         internal static extern void elm_win_sticky_set(IntPtr obj, bool sticky);
202
203         [DllImport(Libraries.Elementary)]
204         internal static extern void elm_win_screen_dpi_get(IntPtr obj, out int xdpi, out int ydpi);
205
206         [DllImport(Libraries.Elementary)]
207         internal static extern void elm_win_iconified_set(IntPtr obj, bool iconified);
208
209         [DllImport(Libraries.Elementary)]
210         [return: MarshalAs(UnmanagedType.U1)]
211         internal static extern bool elm_win_iconified_get(IntPtr obj);
212
213         [DllImport(Libraries.Elementary)]
214         internal static extern bool elm_win_floating_mode_get(IntPtr obj);
215
216         [DllImport(Libraries.Elementary)]
217         internal static extern void elm_win_floating_mode_set(IntPtr obj, bool floating);
218
219         [DllImport(Libraries.Elementary)]
220         [return: MarshalAs(UnmanagedType.U1)]
221         internal static extern bool elm_win_keygrab_set(IntPtr obj, string key, ulong  modifiers, ulong notModifiers, int proirity, KeyGrabMode grabMode);
222
223         [DllImport(Libraries.Elementary)]
224         [return: MarshalAs(UnmanagedType.U1)]
225         internal static extern bool elm_win_keygrab_unset(IntPtr obj, string key, ulong modifiers, ulong notModifiers);
226
227         [DllImport(Libraries.Eext)]
228         internal static extern bool eext_win_keygrab_set(IntPtr obj, string key);
229
230         [DllImport(Libraries.Eext)]
231         internal static extern bool eext_win_keygrab_unset(IntPtr obj, string key);
232
233         [DllImport(Libraries.Elementary)]
234         internal static extern bool elm_win_keyboard_win_get(IntPtr obj);
235
236         [DllImport(Libraries.Elementary)]
237         internal static extern void elm_win_keyboard_win_set(IntPtr obj, bool isKeyboard);
238
239         [DllImport(Libraries.Elementary)]
240         internal static extern int elm_win_keyboard_mode_get(IntPtr obj);
241
242         [DllImport(Libraries.Elementary)]
243         internal static extern void elm_win_keyboard_mode_set(IntPtr obj, int mode);
244
245         [DllImport(Libraries.Elementary)]
246         internal static extern void elm_win_inwin_activate(IntPtr obj);
247
248         [DllImport(Libraries.Elementary)]
249         internal static extern IntPtr elm_win_inwin_add(IntPtr obj);
250
251         [DllImport(Libraries.Elementary)]
252         internal static extern IntPtr elm_win_inwin_content_get(IntPtr obj);
253
254         [DllImport(Libraries.Elementary)]
255         internal static extern void elm_win_inwin_content_set(IntPtr obj, IntPtr content);
256
257         [DllImport(Libraries.Elementary)]
258         internal static extern IntPtr elm_win_inwin_content_unset(IntPtr obj);
259
260         [DllImport(Libraries.Elementary)]
261         internal static extern double elm_win_aspect_get(IntPtr obj);
262
263         [DllImport(Libraries.Elementary)]
264         internal static extern void elm_win_aspect_set(IntPtr obj, double aspect);
265
266         [DllImport(Libraries.Elementary)]
267         internal static extern bool elm_win_autohide_get(IntPtr obj);
268
269         [DllImport(Libraries.Elementary)]
270         internal static extern void elm_win_autohide_set(IntPtr obj, bool autohide);
271
272         [DllImport(Libraries.Elementary)]
273         internal static extern void elm_win_center(IntPtr obj, bool h, bool v);
274
275         [DllImport(Libraries.Elementary)]
276         internal static extern bool elm_win_focus_highlight_animate_get(IntPtr obj);
277
278         [DllImport(Libraries.Elementary)]
279         internal static extern void elm_win_focus_highlight_animate_set(IntPtr obj, bool animate);
280
281         [DllImport(Libraries.Elementary, EntryPoint = "elm_win_icon_name_get")]
282         internal static extern IntPtr _elm_win_icon_name_get(IntPtr obj);
283
284         internal static string elm_win_icon_name_get(IntPtr obj)
285         {
286             return Marshal.PtrToStringAnsi(_elm_win_icon_name_get(obj));
287         }
288
289         [DllImport(Libraries.Elementary)]
290         internal static extern void elm_win_icon_name_set(IntPtr obj, string iconName);
291
292         [DllImport(Libraries.Elementary)]
293         internal static extern IntPtr elm_win_icon_object_get(IntPtr obj);
294
295         [DllImport(Libraries.Elementary)]
296         internal static extern void elm_win_icon_object_set(IntPtr obj, IntPtr icon);
297
298         [DllImport(Libraries.Elementary)]
299         internal static extern IntPtr elm_win_inlined_image_object_get(IntPtr obj);
300
301         [DllImport(Libraries.Elementary)]
302         internal static extern bool elm_win_maximized_get(IntPtr obj);
303
304         [DllImport(Libraries.Elementary)]
305         internal static extern void elm_win_maximized_set(IntPtr obj, bool maximized);
306
307         [DllImport(Libraries.Elementary)]
308         internal static extern bool elm_win_modal_get(IntPtr obj);
309
310         [DllImport(Libraries.Elementary)]
311         internal static extern void elm_win_modal_set(IntPtr obj, bool modal);
312
313         [DllImport(Libraries.Elementary)]
314         internal static extern bool elm_win_noblank_get(IntPtr obj);
315
316         [DllImport(Libraries.Elementary)]
317         internal static extern void elm_win_noblank_set(IntPtr obj, bool noblank);
318
319         [DllImport(Libraries.Elementary)]
320         internal static extern int elm_win_norender_get(IntPtr obj);
321
322         [DllImport(Libraries.Elementary)]
323         internal static extern void elm_win_norender_pop(IntPtr obj);
324
325         [DllImport(Libraries.Elementary)]
326         internal static extern void elm_win_norender_push(IntPtr obj);
327
328         [DllImport(Libraries.Elementary, EntryPoint = "elm_win_profile_get")]
329         internal static extern IntPtr _elm_win_profile_get(IntPtr obj);
330
331         internal static string elm_win_profile_get(IntPtr obj)
332         {
333             return Marshal.PtrToStringAnsi(_elm_win_profile_get(obj));
334         }
335
336         [DllImport(Libraries.Elementary)]
337         internal static extern void elm_win_profile_set(IntPtr obj, string profile);
338
339         [DllImport(Libraries.Elementary)]
340         internal static extern bool elm_win_quickpanel_get(IntPtr obj);
341
342         [DllImport(Libraries.Elementary)]
343         internal static extern int elm_win_quickpanel_priority_major_get(IntPtr obj);
344
345         [DllImport(Libraries.Elementary)]
346         internal static extern void elm_win_quickpanel_priority_major_set(IntPtr obj, int priority);
347
348         [DllImport(Libraries.Elementary)]
349         internal static extern int elm_win_quickpanel_priority_minor_get(IntPtr obj);
350
351         [DllImport(Libraries.Elementary)]
352         internal static extern void elm_win_quickpanel_priority_minor_set(IntPtr obj, int priority);
353
354         [DllImport(Libraries.Elementary)]
355         internal static extern void elm_win_quickpanel_set(IntPtr obj, bool quickpanel);
356
357         [DllImport(Libraries.Elementary)]
358         internal static extern int elm_win_quickpanel_zone_get(IntPtr obj);
359
360         [DllImport(Libraries.Elementary)]
361         internal static extern void elm_win_quickpanel_zone_set(IntPtr obj, int zone);
362
363         [DllImport(Libraries.Elementary)]
364         internal static extern void elm_win_render(IntPtr obj);
365
366         [DllImport(Libraries.Elementary)]
367         internal static extern bool elm_win_screen_constrain_get(IntPtr obj);
368
369         [DllImport(Libraries.Elementary)]
370         internal static extern void elm_win_screen_constrain_set(IntPtr obj, bool constrain);
371
372         [DllImport(Libraries.Elementary)]
373         internal static extern void elm_win_screen_position_get(IntPtr obj, out int x, out int y);
374
375         [DllImport(Libraries.Elementary)]
376         internal static extern bool elm_win_shaped_get(IntPtr obj);
377
378         [DllImport(Libraries.Elementary)]
379         internal static extern void elm_win_shaped_set(IntPtr obj, bool shaped);
380
381         [DllImport(Libraries.Elementary)]
382         internal static extern void elm_win_size_base_get(IntPtr obj, out int w, out int h);
383
384         [DllImport(Libraries.Elementary)]
385         internal static extern void elm_win_size_base_set(IntPtr obj, int w, int h);
386
387         [DllImport(Libraries.Elementary)]
388         internal static extern void elm_win_size_step_get(IntPtr obj, out int w, out int h);
389
390         [DllImport(Libraries.Elementary)]
391         internal static extern void elm_win_size_step_set(IntPtr obj, int w, int h);
392
393         [DllImport(Libraries.Elementary)]
394         internal static extern bool elm_win_socket_listen(IntPtr obj, string svcname, int svcnum, bool svcsys);
395
396         [DllImport(Libraries.Elementary)]
397         internal static extern IntPtr elm_win_trap_data_get(IntPtr obj);
398
399         [DllImport(Libraries.Elementary)]
400         internal static extern bool elm_win_trap_set(IntPtr obj, IntPtr trap);
401
402         [DllImport(Libraries.Elementary)]
403         internal static extern bool elm_win_urgent_get(IntPtr obj);
404
405         [DllImport(Libraries.Elementary)]
406         internal static extern void elm_win_urgent_set(IntPtr obj, bool urgent);
407
408         [DllImport(Libraries.Elementary)]
409         internal static extern IntPtr elm_win_util_dialog_add(IntPtr obj, string name, string title);
410
411         [DllImport(Libraries.Elementary)]
412         internal static extern bool elm_win_withdrawn_get(IntPtr obj);
413
414         [DllImport(Libraries.Elementary)]
415         internal static extern void elm_win_withdrawn_set(IntPtr obj, bool withdrawn);
416
417         [DllImport(Libraries.Elementary)]
418         internal static extern void elm_win_wm_rotation_manual_rotation_done(IntPtr obj);
419
420         [DllImport(Libraries.Elementary)]
421         internal static extern bool elm_win_wm_rotation_manual_rotation_done_get(IntPtr obj, bool withdrawn);
422
423         [DllImport(Libraries.Elementary)]
424         internal static extern void elm_win_wm_rotation_manual_rotation_done_set(IntPtr obj, bool set);
425
426         [DllImport(Libraries.Elementary)]
427         internal static extern int elm_win_wm_rotation_preferred_rotation_get(IntPtr obj, bool withdrawn);
428
429         [DllImport(Libraries.Elementary)]
430         internal static extern bool elm_win_available_profiles_get(IntPtr obj, out string[] profiles, out int count);
431
432         [DllImport(Libraries.Elementary)]
433         internal static extern void elm_win_available_profiles_set(IntPtr obj, string[] profiles, int count);
434
435         [DllImport(Libraries.Elementary)]
436         internal static extern IntPtr elm_win_fake_add(IntPtr obj);
437
438         [DllImport(Libraries.Elementary)]
439         internal static extern void elm_win_fake_canvas_set(IntPtr obj, IntPtr oee);
440
441         [DllImport(Libraries.Elementary)]
442         internal static extern void elm_win_illume_command_send(IntPtr obj, IntPtr param);
443     }
444 }