41 lines
1.1 KiB
C
41 lines
1.1 KiB
C
#ifndef __LISA_UI_ANIM_EXT_H__
|
|
#define __LISA_UI_ANIM_EXT_H__
|
|
|
|
#include "lisa_ui_anim.h"
|
|
|
|
enum {
|
|
LISA_UI_ANIM_STATE_NONE,
|
|
LISA_UI_ANIM_STATE_ENTER,
|
|
LISA_UI_ANIM_STATE_LOOP,
|
|
LISA_UI_ANIM_STATE_STOP_REQ,
|
|
LISA_UI_ANIM_STATE_NEXT_REQ,
|
|
LISA_UI_ANIM_STATE_STOPING,
|
|
LISA_UI_ANIM_STATE_STOPED,
|
|
LISA_UI_ANIM_STATE_MAX,
|
|
};
|
|
|
|
typedef struct {
|
|
lisa_ui_anim_config_t enter;
|
|
lisa_ui_anim_config_t loop;
|
|
lisa_ui_anim_config_t exit;
|
|
} lisa_ui_anim_ext_config_t;
|
|
|
|
typedef struct {
|
|
lisa_ui_anim_t anim;
|
|
lisa_ui_anim_ext_config_t curr;
|
|
lisa_ui_anim_ext_config_t next;
|
|
uint8_t state;
|
|
} lisa_ui_anim_ext_t;
|
|
|
|
extern const lv_obj_class_t lisa_ui_anim_ext_class;
|
|
|
|
lv_obj_t *lisa_ui_anim_ext_create(lv_obj_t *parent);
|
|
void lisa_ui_anim_ext_exit(lv_obj_t *obj);
|
|
void lisa_ui_anim_ext_stop(lv_obj_t *obj);
|
|
void lisa_ui_anim_ext_start(lv_obj_t *obj);
|
|
void lisa_ui_anim_ext_next(lv_obj_t *obj, const lisa_ui_anim_ext_config_t *next);
|
|
void lisa_ui_anim_ext_next_imm(lv_obj_t *obj, const lisa_ui_anim_ext_config_t *next);
|
|
void lisa_ui_anim_ext_set_config(lv_obj_t *obj, const lisa_ui_anim_ext_config_t *config);
|
|
|
|
#endif /* __LISA_UI_ANIM_EXT_H__ */
|