LVGL add support for lv_color_filter_dsc

This commit is contained in:
Stephan Hadinger 2022-01-16 13:11:49 +01:00
parent f4dc554b17
commit b6b0e4779b
5 changed files with 31 additions and 0 deletions

View File

@ -258,6 +258,7 @@ const be_ntv_func_def_t lv_obj_func[] = {
{ "get_style_border_side", (void*) &lv_obj_get_style_border_side, "i", "(lv.lv_obj)i" },
{ "get_style_border_width", (void*) &lv_obj_get_style_border_width, "i", "(lv.lv_obj)i" },
{ "get_style_clip_corner", (void*) &lv_obj_get_style_clip_corner, "b", "(lv.lv_obj)i" },
{ "get_style_color_filter_dsc", (void*) &lv_obj_get_style_color_filter_dsc, "lv.lv_color_filter_dsc", "(lv.lv_obj)i" },
{ "get_style_color_filter_opa", (void*) &lv_obj_get_style_color_filter_opa, "i", "(lv.lv_obj)i" },
{ "get_style_flex_cross_place", (void*) &lv_obj_get_style_flex_cross_place, "i", "(lv.lv_obj)i" },
{ "get_style_flex_flow", (void*) &lv_obj_get_style_flex_flow, "i", "(lv.lv_obj)i" },

View File

@ -317,6 +317,7 @@ extern int lvbe_obj_get_style_pad_column(bvm *vm);
extern int lvbe_obj_get_style_radius(bvm *vm);
extern int lvbe_obj_get_style_clip_corner(bvm *vm);
extern int lvbe_obj_get_style_opa(bvm *vm);
extern int lvbe_obj_get_style_color_filter_dsc(bvm *vm);
extern int lvbe_obj_get_style_color_filter_opa(bvm *vm);
extern int lvbe_obj_get_style_anim_time(bvm *vm);
extern int lvbe_obj_get_style_anim_speed(bvm *vm);

View File

@ -502,6 +502,15 @@ const be_ctypes_structure_t be_lv_style_transition_dsc = {
{ "user_data", 4, 0, 0, ctypes_ptr32, 0 },
}};
const be_ctypes_structure_t be_lv_color_filter_dsc = {
8, /* size in bytes */
2, /* number of elements */
be_ctypes_instance_mappings,
(const be_ctypes_structure_item_t[2]) {
{ "filter_cb", 0, 0, 0, ctypes_ptr32, 0 },
{ "user_data", 4, 0, 0, ctypes_ptr32, 0 },
}};
const be_ctypes_structure_t be_lv_ts_calibration = {
12, /* size in bytes */
5, /* number of elements */
@ -522,6 +531,7 @@ static const char * be_ctypes_instance_mappings[] = {
static be_define_ctypes_class(lv_area, &be_lv_area, &be_class_ctypes, "lv_area");
static be_define_ctypes_class(lv_chart_cursor, &be_lv_chart_cursor, &be_class_ctypes, "lv_chart_cursor");
static be_define_ctypes_class(lv_chart_series, &be_lv_chart_series, &be_class_ctypes, "lv_chart_series");
static be_define_ctypes_class(lv_color_filter_dsc, &be_lv_color_filter_dsc, &be_class_ctypes, "lv_color_filter_dsc");
static be_define_ctypes_class(lv_draw_img_dsc, &be_lv_draw_img_dsc, &be_class_ctypes, "lv_draw_img_dsc");
static be_define_ctypes_class(lv_draw_line_dsc, &be_lv_draw_line_dsc, &be_class_ctypes, "lv_draw_line_dsc");
static be_define_ctypes_class(lv_draw_mask_angle_param, &be_lv_draw_mask_angle_param, &be_class_ctypes, "lv_draw_mask_angle_param");
@ -556,6 +566,7 @@ void be_load_ctypes_lvgl_definitions_lib(bvm *vm) {
ctypes_register_class(vm, &be_class_lv_area, &be_lv_area);
ctypes_register_class(vm, &be_class_lv_chart_cursor, &be_lv_chart_cursor);
ctypes_register_class(vm, &be_class_lv_chart_series, &be_lv_chart_series);
ctypes_register_class(vm, &be_class_lv_color_filter_dsc, &be_lv_color_filter_dsc);
ctypes_register_class(vm, &be_class_lv_draw_img_dsc, &be_lv_draw_img_dsc);
ctypes_register_class(vm, &be_class_lv_draw_line_dsc, &be_lv_draw_line_dsc);
ctypes_register_class(vm, &be_class_lv_draw_mask_angle_param, &be_lv_draw_mask_angle_param);
@ -591,6 +602,7 @@ be_ctypes_class_by_name_t be_ctypes_lvgl_classes[] = {
{ "lv_area", &be_class_lv_area },
{ "lv_chart_cursor", &be_class_lv_chart_cursor },
{ "lv_chart_series", &be_class_lv_chart_series },
{ "lv_color_filter_dsc", &be_class_lv_color_filter_dsc },
{ "lv_draw_img_dsc", &be_class_lv_draw_img_dsc },
{ "lv_draw_line_dsc", &be_class_lv_draw_line_dsc },
{ "lv_draw_mask_angle_param", &be_class_lv_draw_mask_angle_param },

View File

@ -424,6 +424,21 @@ lv_style_transition_dsc = [ # valid LVGL8
]
lv_style_transition_dsc = ctypes.structure(lv_style_transition_dsc, "lv_style_transition_dsc")
#######################################################################
# lv_color
# lv_color_hsv = [ # valid LVGL8
# [uint16_t, "h"],
# [uint8_t, "s"],
# [uint8_t, "v"],
# ]
# lv_color_hsv = ctypes.structure(lv_color_hsv, "lv_color_hsv")
lv_color_filter_dsc = [ # valid LVGL8
[ptr, "filter_cb"],
[ptr, "user_data"],
]
lv_color_filter_dsc = ctypes.structure(lv_color_filter_dsc, "lv_color_filter_dsc")
#######################################################################
# Special structure used to calibrate resistive touchscreens
#######################################################################

View File

@ -139,6 +139,8 @@ return_types = {
"lv_img_dsc_t *": "lv_img_dsc",
"lv_ts_calibration_t *": "lv_ts_calibration",
"lv_style_transition_dsc_t *": "lv_style_transition_dsc",
# "lv_color_hsv_t *": "lv_color_hsv",
"lv_color_filter_dsc_t *": "lv_color_filter_dsc",
#"lv_disp_t*": "lv_disp",
#"lv_style_list_t*": "",