1 #if defined(LV_LVGL_H_INCLUDE_SIMPLE)
2 #include "lvgl.h"
3 #else
4 #include "../../lvgl.h"
5 #endif
6
7 #ifdef PIKASCRIPT
8 #include "BaseObj.h"
9 #include "pika_lvgl.h"
10 #include "pika_lvgl_arc.h"
11 #include "pika_lvgl_bar.h"
12 #include "pika_lvgl_btn.h"
13 #include "pika_lvgl_checkbox.h"
14 #include "pika_lvgl_dropdown.h"
15 #include "pika_lvgl_label.h"
16 #include "pika_lvgl_lv_obj.h"
17 #include "pika_lvgl_roller.h"
18 #include "pika_lvgl_slider.h"
19 #include "pika_lvgl_switch.h"
20 #include "pika_lvgl_table.h"
21 #include "pika_lvgl_textarea.h"
22
pika_lvgl_arc___init__(PikaObj * self,PikaObj * parent)23 void pika_lvgl_arc___init__(PikaObj* self, PikaObj* parent) {
24 lv_obj_t* lv_parent = obj_getPtr(parent, "lv_obj");
25 lv_obj_t* lv_obj = lv_arc_create(lv_parent);
26 obj_setPtr(self, "lv_obj", lv_obj);
27 obj_setInt(self, "MODE_NORMAL", LV_ARC_MODE_NORMAL);
28 obj_setInt(self, "MODE_SYMMETRICAL", LV_ARC_MODE_SYMMETRICAL);
29 obj_setInt(self, "MODE_REVERSE", LV_ARC_MODE_REVERSE);
30 }
31
pika_lvgl_arc_set_end_angle(PikaObj * self,int angle)32 void pika_lvgl_arc_set_end_angle(PikaObj* self, int angle) {
33 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
34 lv_arc_set_end_angle(lv_obj, angle);
35 }
36
pika_lvgl_arc_set_bg_angles(PikaObj * self,int start,int end)37 void pika_lvgl_arc_set_bg_angles(PikaObj* self, int start, int end) {
38 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
39 lv_arc_set_bg_angles(lv_obj, start, end);
40 }
41
pika_lvgl_arc_set_angles(PikaObj * self,int start,int end)42 void pika_lvgl_arc_set_angles(PikaObj* self, int start, int end) {
43 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
44 lv_arc_set_angles(lv_obj, start, end);
45 }
46
pika_lvgl_arc_get_angle_end(PikaObj * self)47 int pika_lvgl_arc_get_angle_end(PikaObj *self){
48 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
49 return lv_arc_get_angle_end(lv_obj);
50 }
pika_lvgl_arc_get_angle_start(PikaObj * self)51 int pika_lvgl_arc_get_angle_start(PikaObj *self){
52 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
53 return lv_arc_get_angle_start(lv_obj);
54 }
pika_lvgl_arc_get_bg_angle_end(PikaObj * self)55 int pika_lvgl_arc_get_bg_angle_end(PikaObj *self){
56 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
57 return lv_arc_get_bg_angle_end(lv_obj);
58 }
pika_lvgl_arc_get_bg_angle_start(PikaObj * self)59 int pika_lvgl_arc_get_bg_angle_start(PikaObj *self){
60 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
61 return lv_arc_get_bg_angle_start(lv_obj);
62 }
pika_lvgl_arc_get_max_value(PikaObj * self)63 int pika_lvgl_arc_get_max_value(PikaObj *self){
64 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
65 return lv_arc_get_max_value(lv_obj);
66 }
pika_lvgl_arc_get_min_value(PikaObj * self)67 int pika_lvgl_arc_get_min_value(PikaObj *self){
68 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
69 return lv_arc_get_min_value(lv_obj);
70 }
pika_lvgl_arc_get_mode(PikaObj * self)71 int pika_lvgl_arc_get_mode(PikaObj *self){
72 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
73 return lv_arc_get_mode(lv_obj);
74 }
75 // int pika_lvgl_arc_get_rotation(PikaObj *self){
76 // lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
77 // return lv_arc_get_rotation(lv_obj);
78 // }
pika_lvgl_arc_get_value(PikaObj * self)79 int pika_lvgl_arc_get_value(PikaObj *self){
80 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
81 return lv_arc_get_value(lv_obj);
82 }
pika_lvgl_arc_set_mode(PikaObj * self,int mode)83 void pika_lvgl_arc_set_mode(PikaObj *self, int mode){
84 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
85 lv_arc_set_mode(lv_obj, mode);
86 }
pika_lvgl_arc_set_range(PikaObj * self,int min,int max)87 void pika_lvgl_arc_set_range(PikaObj *self, int min, int max){
88 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
89 lv_arc_set_range(lv_obj, min, max);
90 }
pika_lvgl_arc_set_rotation(PikaObj * self,int rotation)91 void pika_lvgl_arc_set_rotation(PikaObj *self, int rotation){
92 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
93 lv_arc_set_rotation(lv_obj, rotation);
94 }
pika_lvgl_arc_set_start_angle(PikaObj * self,int start)95 void pika_lvgl_arc_set_start_angle(PikaObj *self, int start){
96 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
97 lv_arc_set_start_angle(lv_obj, start);
98 }
pika_lvgl_arc_set_value(PikaObj * self,int value)99 void pika_lvgl_arc_set_value(PikaObj *self, int value){
100 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
101 lv_arc_set_value(lv_obj, value);
102 }
pika_lvgl_arc_set_bg_end_angle(PikaObj * self,int angle)103 void pika_lvgl_arc_set_bg_end_angle(PikaObj *self, int angle){
104 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
105 lv_arc_set_bg_end_angle(lv_obj, angle);
106 }
pika_lvgl_arc_set_bg_start_angle(PikaObj * self,int start)107 void pika_lvgl_arc_set_bg_start_angle(PikaObj *self, int start){
108 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
109 lv_arc_set_bg_start_angle(lv_obj, start);
110 }
111
pika_lvgl_arc_set_change_rate(PikaObj * self,int rate)112 void pika_lvgl_arc_set_change_rate(PikaObj *self, int rate){
113 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
114 lv_arc_set_change_rate(lv_obj, rate);
115 }
116
pika_lvgl_bar___init__(PikaObj * self,PikaObj * parent)117 void pika_lvgl_bar___init__(PikaObj* self, PikaObj* parent) {
118 lv_obj_t* lv_parent = obj_getPtr(parent, "lv_obj");
119 lv_obj_t* lv_obj = lv_bar_create(lv_parent);
120 obj_setPtr(self, "lv_obj", lv_obj);
121 }
122
pika_lvgl_bar_set_value(PikaObj * self,int value,int anim)123 void pika_lvgl_bar_set_value(PikaObj* self, int value, int anim) {
124 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
125 lv_bar_set_value(lv_obj, value, value);
126 }
127
pika_lvgl_bar_get_max_value(PikaObj * self)128 int pika_lvgl_bar_get_max_value(PikaObj *self){
129 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
130 return lv_bar_get_max_value(lv_obj);
131 }
pika_lvgl_bar_get_min_value(PikaObj * self)132 int pika_lvgl_bar_get_min_value(PikaObj *self){
133 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
134 return lv_bar_get_min_value(lv_obj);
135 }
pika_lvgl_bar_get_mode(PikaObj * self)136 int pika_lvgl_bar_get_mode(PikaObj *self){
137 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
138 return lv_bar_get_mode(lv_obj);
139 }
pika_lvgl_bar_get_start_value(PikaObj * self)140 int pika_lvgl_bar_get_start_value(PikaObj *self){
141 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
142 return lv_bar_get_start_value(lv_obj);
143 }
pika_lvgl_bar_get_value(PikaObj * self)144 int pika_lvgl_bar_get_value(PikaObj *self){
145 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
146 return lv_bar_get_value(lv_obj);
147 }
pika_lvgl_bar_set_mode(PikaObj * self,int mode)148 void pika_lvgl_bar_set_mode(PikaObj *self, int mode){
149 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
150 lv_bar_set_mode(lv_obj, mode);
151 }
pika_lvgl_bar_set_range(PikaObj * self,int min,int max)152 void pika_lvgl_bar_set_range(PikaObj *self, int min, int max){
153 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
154 lv_bar_set_range(lv_obj, min, max);
155 }
pika_lvgl_bar_set_start_value(PikaObj * self,int start_value,int anim)156 void pika_lvgl_bar_set_start_value(PikaObj *self, int start_value, int anim){
157 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
158 lv_bar_set_start_value(lv_obj, start_value, anim);
159 }
160
pika_lvgl_btn___init__(PikaObj * self,PikaObj * parent)161 void pika_lvgl_btn___init__(PikaObj* self, PikaObj* parent) {
162 lv_obj_t* lv_parent = obj_getPtr(parent, "lv_obj");
163 lv_obj_t* lv_obj = lv_button_create(lv_parent);
164 obj_setPtr(self, "lv_obj", lv_obj);
165 }
166
pika_lvgl_checkbox___init__(PikaObj * self,PikaObj * parent)167 void pika_lvgl_checkbox___init__(PikaObj* self, PikaObj* parent) {
168 lv_obj_t* lv_parent = obj_getPtr(parent, "lv_obj");
169 lv_obj_t* lv_obj = lv_checkbox_create(lv_parent);
170 obj_setPtr(self, "lv_obj", lv_obj);
171 }
172
pika_lvgl_checkbox_set_text(PikaObj * self,char * txt)173 void pika_lvgl_checkbox_set_text(PikaObj* self, char* txt) {
174 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
175 lv_checkbox_set_text(lv_obj, txt);
176 }
177
pika_lvgl_checkbox_set_text_static(PikaObj * self,char * txt)178 void pika_lvgl_checkbox_set_text_static(PikaObj *self, char* txt){
179 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
180 lv_checkbox_set_text_static(lv_obj, txt);
181 }
182
pika_lvgl_checkbox_get_text(PikaObj * self)183 char* pika_lvgl_checkbox_get_text(PikaObj *self){
184 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
185 return (char*) lv_checkbox_get_text(lv_obj);
186 }
187
pika_lvgl_dropdown___init__(PikaObj * self,PikaObj * parent)188 void pika_lvgl_dropdown___init__(PikaObj* self, PikaObj* parent) {
189 lv_obj_t* lv_parent = obj_getPtr(parent, "lv_obj");
190 lv_obj_t* lv_obj = lv_dropdown_create(lv_parent);
191 obj_setPtr(self, "lv_obj", lv_obj);
192 }
193
pika_lvgl_dropdown_set_options(PikaObj * self,char * options)194 void pika_lvgl_dropdown_set_options(PikaObj* self, char* options) {
195 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
196 lv_dropdown_set_options(lv_obj, options);
197 }
198
pika_lvgl_dropdown_add_option(PikaObj * self,char * options,int pos)199 void pika_lvgl_dropdown_add_option(PikaObj *self, char* options, int pos){
200 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
201 lv_dropdown_add_option(lv_obj, options, pos);
202 }
pika_lvgl_dropdown_clear_options(PikaObj * self)203 void pika_lvgl_dropdown_clear_options(PikaObj *self){
204 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
205 lv_dropdown_clear_options(lv_obj);
206 }
pika_lvgl_dropdown_close(PikaObj * self)207 void pika_lvgl_dropdown_close(PikaObj *self){
208 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
209 lv_dropdown_close(lv_obj);
210 }
pika_lvgl_dropdown_get_dir(PikaObj * self)211 int pika_lvgl_dropdown_get_dir(PikaObj *self){
212 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
213 return lv_dropdown_get_dir(lv_obj);
214 }
215 // PikaObj* pika_lvgl_dropdown_get_list(PikaObj *self){
216 // lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
217 // return obj_getObj(lv_dropdown_get_list(lv_obj));
218 // }
pika_lvgl_dropdown_get_option_count(PikaObj * self)219 int pika_lvgl_dropdown_get_option_count(PikaObj *self){
220 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
221 return lv_dropdown_get_option_count(lv_obj);
222 }
pika_lvgl_dropdown_get_option_index(PikaObj * self,char * txt)223 int pika_lvgl_dropdown_get_option_index(PikaObj *self, char* txt){
224 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
225 return lv_dropdown_get_option_index(lv_obj, txt);
226 }
pika_lvgl_dropdown_get_options(PikaObj * self)227 char* pika_lvgl_dropdown_get_options(PikaObj *self){
228 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
229 return (char*) lv_dropdown_get_options(lv_obj);
230 }
pika_lvgl_dropdown_get_selected(PikaObj * self)231 int pika_lvgl_dropdown_get_selected(PikaObj *self){
232 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
233 return lv_dropdown_get_selected(lv_obj);
234 }
pika_lvgl_dropdown_get_selected_highlight(PikaObj * self)235 int pika_lvgl_dropdown_get_selected_highlight(PikaObj *self){
236 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
237 return lv_dropdown_get_selected_highlight(lv_obj);
238 }
239
pika_lvgl_dropdown_get_selected_str(PikaObj * self)240 char* pika_lvgl_dropdown_get_selected_str(PikaObj *self){
241 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
242 obj_setBytes(self, "_buff",NULL, 128);
243 char* _buff = (char*)obj_getBytes(self, "_buff");
244 lv_dropdown_get_selected_str(lv_obj, _buff, 128);
245 return _buff;
246 }
pika_lvgl_dropdown_get_symbol(PikaObj * self)247 char* pika_lvgl_dropdown_get_symbol(PikaObj *self){
248 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
249 return (char*)lv_dropdown_get_symbol(lv_obj);
250 }
pika_lvgl_dropdown_get_text(PikaObj * self)251 char* pika_lvgl_dropdown_get_text(PikaObj *self){
252 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
253 return (char*)lv_dropdown_get_text(lv_obj);
254 }
pika_lvgl_dropdown_is_open(PikaObj * self)255 int pika_lvgl_dropdown_is_open(PikaObj *self){
256 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
257 return lv_dropdown_is_open(lv_obj);
258 }
pika_lvgl_dropdown_open(PikaObj * self)259 void pika_lvgl_dropdown_open(PikaObj *self){
260 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
261 lv_dropdown_open(lv_obj);
262 }
pika_lvgl_dropdown_set_dir(PikaObj * self,int dir)263 void pika_lvgl_dropdown_set_dir(PikaObj *self, int dir){
264 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
265 lv_dropdown_set_dir(lv_obj, dir);
266 }
pika_lvgl_dropdown_set_selected(PikaObj * self,int sel_opt,int anim)267 void pika_lvgl_dropdown_set_selected(PikaObj *self, int sel_opt, int anim){
268 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
269 lv_dropdown_set_selected(lv_obj, sel_opt, anim);
270 }
pika_lvgl_dropdown_set_selected_highlight(PikaObj * self,int en)271 void pika_lvgl_dropdown_set_selected_highlight(PikaObj *self, int en){
272 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
273 lv_dropdown_set_selected_highlight(lv_obj, en);
274 }
pika_lvgl_dropdown_set_symbol(PikaObj * self,char * symbol)275 void pika_lvgl_dropdown_set_symbol(PikaObj *self, char* symbol){
276 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
277 lv_dropdown_set_symbol(lv_obj, symbol);
278 }
pika_lvgl_dropdown_set_text(PikaObj * self,char * txt)279 void pika_lvgl_dropdown_set_text(PikaObj *self, char* txt){
280 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
281 lv_dropdown_set_text(lv_obj, txt);
282 }
283
pika_lvgl_label___init__(PikaObj * self,PikaObj * parent)284 void pika_lvgl_label___init__(PikaObj* self, PikaObj* parent) {
285 lv_obj_t* lv_parent = obj_getPtr(parent, "lv_obj");
286 lv_obj_t* lv_obj = lv_label_create(lv_parent);
287 obj_setPtr(self, "lv_obj", lv_obj);
288 }
289
pika_lvgl_label_set_long_mode(PikaObj * self,int mode)290 void pika_lvgl_label_set_long_mode(PikaObj* self, int mode) {
291 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
292 lv_label_set_long_mode(lv_obj, mode);
293 }
294
pika_lvgl_label_set_recolor(PikaObj * self,int en)295 void pika_lvgl_label_set_recolor(PikaObj* self, int en) {
296 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
297 lv_label_set_recolor(lv_obj, en);
298 }
299
pika_lvgl_label_set_text(PikaObj * self,char * txt)300 void pika_lvgl_label_set_text(PikaObj* self, char* txt) {
301 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
302 lv_label_set_text(lv_obj, txt);
303 }
304
pika_lvgl_label_set_style_text_align(PikaObj * self,int value,int selector)305 void pika_lvgl_label_set_style_text_align(PikaObj* self,
306 int value,
307 int selector) {
308 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
309 lv_obj_set_style_text_align(lv_obj, value, selector);
310 }
311
pika_lvgl_roller___init__(PikaObj * self,PikaObj * parent)312 void pika_lvgl_roller___init__(PikaObj* self, PikaObj* parent) {
313 lv_obj_t* lv_parent = obj_getPtr(parent, "lv_obj");
314 lv_obj_t* lv_obj = lv_roller_create(lv_parent);
315 obj_setPtr(self, "lv_obj", lv_obj);
316 }
317
pika_lvgl_roller_set_options(PikaObj * self,char * options,int mode)318 void pika_lvgl_roller_set_options(PikaObj* self, char* options, int mode) {
319 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
320 lv_roller_set_options(lv_obj, options, mode);
321 }
322
pika_lvgl_roller_set_visible_row_count(PikaObj * self,int row_cnt)323 void pika_lvgl_roller_set_visible_row_count(PikaObj* self, int row_cnt) {
324 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
325 lv_roller_set_visible_row_count(lv_obj, row_cnt);
326 }
327
pika_lvgl_slider___init__(PikaObj * self,PikaObj * parent)328 void pika_lvgl_slider___init__(PikaObj* self, PikaObj* parent) {
329 lv_obj_t* lv_parent = obj_getPtr(parent, "lv_obj");
330 lv_obj_t* lv_obj = lv_slider_create(lv_parent);
331 obj_setPtr(self, "lv_obj", lv_obj);
332 }
333
pika_lvgl_switch___init__(PikaObj * self,PikaObj * parent)334 void pika_lvgl_switch___init__(PikaObj* self, PikaObj* parent) {
335 lv_obj_t* lv_parent = obj_getPtr(parent, "lv_obj");
336 lv_obj_t* lv_obj = lv_switch_create(lv_parent);
337 obj_setPtr(self, "lv_obj", lv_obj);
338 }
339
pika_lvgl_table___init__(PikaObj * self,PikaObj * parent)340 void pika_lvgl_table___init__(PikaObj* self, PikaObj* parent) {
341 lv_obj_t* lv_parent = obj_getPtr(parent, "lv_obj");
342 lv_obj_t* lv_obj = lv_table_create(lv_parent);
343 obj_setPtr(self, "lv_obj", lv_obj);
344 }
345
pika_lvgl_table_set_cell_value(PikaObj * self,int row,int col,char * txt)346 void pika_lvgl_table_set_cell_value(PikaObj* self,
347 int row,
348 int col,
349 char* txt) {
350 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
351 lv_table_set_cell_value(lv_obj, row, col, txt);
352 }
353
pika_lvgl_textarea___init__(PikaObj * self,PikaObj * parent)354 void pika_lvgl_textarea___init__(PikaObj* self, PikaObj* parent) {
355 lv_obj_t* lv_parent = obj_getPtr(parent, "lv_obj");
356 lv_obj_t* lv_obj = lv_textarea_create(lv_parent);
357 obj_setPtr(self, "lv_obj", lv_obj);
358 }
359
pika_lvgl_textarea_set_one_line(PikaObj * self,int en)360 void pika_lvgl_textarea_set_one_line(PikaObj* self, int en) {
361 lv_obj_t* lv_obj = obj_getPtr(self, "lv_obj");
362 lv_textarea_set_one_line(lv_obj, en);
363 }
364 #endif
365