2 * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
18 using System.Runtime.InteropServices;
20 internal static partial class Interop
22 internal static partial class Elementary
24 internal enum Elm_Genlist_Item_Scrollto_Type
26 ELM_GENLIST_ITEM_SCROLLTO_NONE = 0,
29 ELM_GENLIST_ITEM_SCROLLTO_IN = (1 << 0),
31 // Scrolls to the nearest viewport
32 ELM_GENLIST_ITEM_SCROLLTO_TOP = (1 << 1),
34 // Scrolls to the top of the viewport
35 ELM_GENLIST_ITEM_SCROLLTO_MIDDLE = (1 << 2),
37 // Scrolls to the middle of the viewport
38 ELM_GENLIST_ITEM_SCROLLTO_BOTTOM = (1 << 3)
40 // Scrolls to the bottom of the viewport
43 [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
44 internal delegate void Evas_Smart_Cb(IntPtr data, IntPtr obj, IntPtr eventInfo);
46 [DllImport(Libraries.Elementary)]
47 internal static extern IntPtr elm_genlist_add(IntPtr parent);
49 [DllImport(Libraries.Elementary)]
50 internal static extern void elm_genlist_mode_set(IntPtr obj, int mode);
52 [DllImport(Libraries.Elementary)]
53 internal static extern int elm_genlist_mode_get(IntPtr obj);
55 [DllImport(Libraries.Elementary)]
56 internal static extern void elm_genlist_select_mode_set(IntPtr obj, int mode);
58 [DllImport(Libraries.Elementary)]
59 internal static extern int elm_genlist_select_mode_get(IntPtr obj);
61 [DllImport(Libraries.Elementary)]
62 internal static extern IntPtr elm_genlist_item_append(IntPtr obj, IntPtr itc, IntPtr data, IntPtr parent, int type, Evas.SmartCallback func, IntPtr func_data);
64 [DllImport(Libraries.Elementary)]
65 internal static extern IntPtr elm_genlist_item_prepend(IntPtr obj, IntPtr itc, IntPtr data, IntPtr parent, int type, Evas.SmartCallback func, IntPtr func_data);
67 [DllImport(Libraries.Elementary)]
68 internal static extern IntPtr elm_genlist_item_insert_before(IntPtr obj, IntPtr itc, IntPtr data, IntPtr parent, IntPtr before, int type, Evas.SmartCallback func, IntPtr func_data);
70 [DllImport(Libraries.Elementary)]
71 internal static extern IntPtr elm_genlist_item_class_new();
73 [DllImport(Libraries.Elementary)]
74 internal static extern void elm_genlist_item_class_free(IntPtr itemClass);
76 [DllImport(Libraries.Elementary)]
77 internal static extern void elm_genlist_block_count_set(IntPtr obj, int count);
79 [DllImport(Libraries.Elementary)]
80 internal static extern int elm_genlist_block_count_get(IntPtr obj);
82 [DllImport(Libraries.Elementary)]
83 internal static extern void elm_genlist_homogeneous_set(IntPtr obj, bool homogeneous);
85 [DllImport(Libraries.Elementary)]
86 internal static extern bool elm_genlist_homogeneous_get(IntPtr obj);
88 [DllImport(Libraries.Elementary)]
89 internal static extern int elm_genlist_item_index_get(IntPtr obj);
91 [DllImport(Libraries.Elementary)]
92 internal static extern int elm_genlist_item_type_get(IntPtr obj);
94 [DllImport(Libraries.Elementary)]
95 internal static extern IntPtr elm_genlist_item_parent_get(IntPtr obj);
97 [DllImport(Libraries.Elementary)]
98 internal static extern void elm_genlist_realized_items_update(IntPtr obj);
100 [DllImport(Libraries.Elementary)]
101 internal static extern void elm_genlist_item_update(IntPtr obj);
103 [DllImport(Libraries.Elementary)]
104 internal static extern void elm_genlist_item_show(IntPtr item, Elm_Genlist_Item_Scrollto_Type type);
106 [DllImport(Libraries.Elementary)]
107 internal static extern void elm_genlist_item_bring_in(IntPtr item, Elm_Genlist_Item_Scrollto_Type type);
109 [DllImport(Libraries.Elementary)]
110 internal static extern int elm_genlist_items_count(IntPtr obj);
112 [DllImport(Libraries.Elementary)]
113 internal static extern IntPtr elm_genlist_first_item_get(IntPtr obj);
115 [DllImport(Libraries.Elementary)]
116 internal static extern IntPtr elm_genlist_last_item_get(IntPtr obj);
118 [DllImport(Libraries.Elementary)]
119 internal static extern IntPtr elm_genlist_item_next_get(IntPtr item);
121 [DllImport(Libraries.Elementary)]
122 internal static extern IntPtr elm_genlist_item_prev_get(IntPtr item);
124 [DllImport(Libraries.Elementary)]
125 internal static extern bool elm_genlist_item_selected_get(IntPtr obj);
127 [DllImport(Libraries.Elementary)]
128 internal static extern void elm_genlist_item_selected_set(IntPtr obj, bool selected);
130 [DllImport(Libraries.Elementary)]
131 internal static extern void elm_genlist_item_select_mode_set(IntPtr obj, Elm_Object_Select_Mode mode);
133 [DllImport(Libraries.Elementary)]
134 internal static extern Elm_Object_Select_Mode elm_genlist_item_select_mode_get(IntPtr obj);
136 [DllImport(Libraries.Elementary)]
137 internal static extern void elm_genlist_item_item_class_update(IntPtr obj, IntPtr itc);
139 [DllImport(Libraries.Elementary)]
140 internal static extern void elm_genlist_clear(IntPtr obj);
142 [DllImport(Libraries.Elementary)]
143 internal static extern void elm_genlist_item_fields_update(IntPtr item, string part, uint type);
145 [DllImport(Libraries.Elementary)]
146 internal static extern void elm_genlist_reorder_mode_set(IntPtr obj, bool mode);
148 [DllImport(Libraries.Elementary)]
149 [return: MarshalAs(UnmanagedType.U1)]
150 internal static extern bool elm_genlist_reorder_mode_get(IntPtr obj);
152 [DllImport(Libraries.Elementary)]
153 [return: MarshalAs(UnmanagedType.U1)]
154 internal static extern void elm_genlist_item_expanded_set(IntPtr obj, bool isExpanded);
156 [DllImport(Libraries.Elementary)]
157 [return: MarshalAs(UnmanagedType.U1)]
158 internal static extern bool elm_genlist_item_expanded_get(IntPtr obj);
160 [DllImport(Libraries.Elementary)]
161 internal static extern bool elm_genlist_highlight_mode_get(IntPtr obj);
163 [DllImport(Libraries.Elementary)]
164 internal static extern void elm_genlist_highlight_mode_set(IntPtr obj, bool highlight);
166 [DllImport(Libraries.Elementary)]
167 internal static extern IntPtr elm_genlist_at_xy_item_get(IntPtr obj, int x, int y, out int posret);
169 [DllImport(Libraries.Elementary)]
170 internal static extern IntPtr elm_genlist_item_insert_after(IntPtr obj, IntPtr itc, IntPtr data, IntPtr parent, IntPtr after, int type, Evas.SmartCallback func, IntPtr func_data);
172 [DllImport(Libraries.Elementary)]
173 internal static extern IntPtr elm_genlist_item_item_class_get(IntPtr obj);
175 [DllImport(Libraries.Elementary)]
176 internal static extern double elm_genlist_longpress_timeout_get(IntPtr obj);
178 [DllImport(Libraries.Elementary)]
179 internal static extern void elm_genlist_longpress_timeout_set(IntPtr obj, double timeout);
181 [DllImport(Libraries.Elementary)]
182 internal static extern void elm_genlist_focus_on_selection_set(IntPtr obj, bool enabled);
184 [DllImport(Libraries.Elementary)]
185 internal static extern bool elm_genlist_focus_on_selection_get(IntPtr obj);
187 [DllImport(Libraries.Elementary)]
188 internal static extern bool elm_genlist_multi_select_get(IntPtr obj);
190 [DllImport(Libraries.Elementary)]
191 internal static extern void elm_genlist_multi_select_set(IntPtr obj, bool multi);
193 [DllImport(Libraries.Elementary)]
194 internal static extern IntPtr elm_genlist_nth_item_get(IntPtr obj, int nth);
196 [DllImport(Libraries.Elementary)]
197 internal static extern IntPtr elm_genlist_selected_item_get(IntPtr obj);
199 [DllImport(Libraries.Elementary, EntryPoint = "elm_genlist_item_cursor_get")]
200 internal static extern IntPtr _elm_genlist_item_cursor_get(IntPtr obj);
202 internal static string elm_genlist_item_cursor_get(IntPtr obj)
204 return Marshal.PtrToStringAnsi(_elm_genlist_item_cursor_get(obj));
207 [DllImport(Libraries.Elementary)]
208 internal static extern void elm_genlist_item_cursor_set(IntPtr obj, string cursor);
210 [DllImport(Libraries.Elementary)]
211 internal static extern void elm_genlist_item_cursor_unset(IntPtr obj);
213 [DllImport(Libraries.Elementary)]
214 internal static extern bool elm_genlist_item_cursor_engine_only_get(IntPtr obj);
216 [DllImport(Libraries.Elementary)]
217 internal static extern void elm_genlist_item_cursor_engine_only_set(IntPtr obj, bool engineOnly);
219 [DllImport(Libraries.Elementary, EntryPoint = "elm_genlist_item_cursor_style_get")]
220 internal static extern IntPtr _elm_genlist_item_cursor_style_get(IntPtr obj);
222 internal static string elm_genlist_item_cursor_style_get(IntPtr obj)
224 return Marshal.PtrToStringAnsi(_elm_genlist_item_cursor_style_get(obj));
227 [DllImport(Libraries.Elementary)]
228 internal static extern void elm_genlist_item_cursor_style_set(IntPtr obj, string style);
230 [DllImport(Libraries.Elementary)]
231 internal static extern void elm_genlist_item_demote(IntPtr obj);
233 [DllImport(Libraries.Elementary)]
234 internal static extern int elm_genlist_item_expanded_depth_get(IntPtr obj);
236 [DllImport(Libraries.Elementary)]
237 internal static extern void elm_genlist_item_subitems_clear(IntPtr obj);
239 [DllImport(Libraries.Elementary)]
240 internal static extern void elm_genlist_item_tooltip_text_set(IntPtr obj, string text);
242 [DllImport(Libraries.Elementary)]
243 internal static extern void elm_genlist_item_tooltip_unset(IntPtr obj);
245 [DllImport(Libraries.Elementary, EntryPoint = "elm_genlist_item_tooltip_style_get")]
246 internal static extern IntPtr _elm_genlist_item_tooltip_style_get(IntPtr obj);
248 internal static string elm_genlist_item_tooltip_style_get(IntPtr obj)
250 return Marshal.PtrToStringAnsi(_elm_genlist_item_tooltip_style_get(obj));
253 [DllImport(Libraries.Elementary)]
254 internal static extern void elm_genlist_item_tooltip_style_set(IntPtr obj, string style);
256 [DllImport(Libraries.Elementary)]
257 internal static extern bool elm_genlist_item_tooltip_window_mode_get(IntPtr obj);
259 [DllImport(Libraries.Elementary)]
260 internal static extern bool elm_genlist_item_tooltip_window_mode_set(IntPtr obj, bool disable);
262 [DllImport(Libraries.Elementary)]
263 internal static extern IntPtr elm_genlist_item_sorted_insert(IntPtr obj, IntPtr itc, IntPtr data, IntPtr parent, int type, Eina_Compare_Cb compare, Evas.SmartCallback func, IntPtr funcData);
265 [DllImport(Libraries.Elementary)]
266 internal static extern void elm_genlist_item_tooltip_content_cb_set(IntPtr obj, Elm_Tooltip_Item_Content_Cb func, IntPtr funcData, Evas.SmartCallback deleteFunc);