mirror of
https://github.com/lvgl/lvgl.git
synced 2025-01-14 06:42:58 +08:00
df0d36f02a
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
45 lines
1.4 KiB
C
45 lines
1.4 KiB
C
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
|
#include "lvgl.h"
|
|
#else
|
|
#include "../../lvgl.h"
|
|
#endif
|
|
|
|
#ifdef PIKASCRIPT
|
|
|
|
#include "pika_lvgl_lv_timer_t.h"
|
|
|
|
PikaEventListener* g_pika_lv_timer_event_listener;
|
|
|
|
void __pika_timer_cb(lv_timer_t* timer) {
|
|
PikaObj* eventHandleObj = pks_eventListener_getEventHandleObj(
|
|
g_pika_lv_timer_event_listener, (uint32_t)timer);
|
|
obj_newDirectObj(eventHandleObj, "timer", New_pika_lvgl_lv_timer_t);
|
|
obj_setPtr(obj_getPtr(eventHandleObj, "timer"), "lv_timer", timer);
|
|
obj_run(eventHandleObj, "eventCallBack(timer)");
|
|
}
|
|
|
|
void pika_lvgl_lv_timer_t_set_period(PikaObj* self, int period) {
|
|
lv_timer_t* lv_timer = obj_getPtr(self, "lv_timer");
|
|
lv_timer_set_period(lv_timer, period);
|
|
}
|
|
|
|
void pika_lvgl_lv_timer_t_set_cb(PikaObj* self, Arg* cb) {
|
|
lv_timer_t* lv_timer = obj_getPtr(self, "lv_timer");
|
|
lv_timer_set_cb(lv_timer, __pika_timer_cb);
|
|
|
|
obj_setArg(self, "eventCallBack", cb);
|
|
/* init event_listener for the first time */
|
|
if (NULL == g_pika_lv_timer_event_listener) {
|
|
pks_eventListener_init(&g_pika_lv_timer_event_listener);
|
|
}
|
|
pks_eventListener_registerEvent(g_pika_lv_timer_event_listener,
|
|
(uint32_t)lv_timer, self);
|
|
|
|
}
|
|
|
|
void pika_lvgl_lv_timer_t__delete(PikaObj* self) {
|
|
lv_timer_t* lv_timer = obj_getPtr(self, "lv_timer");
|
|
lv_timer_delete(lv_timer);
|
|
}
|
|
#endif
|