feat(obj): add more obj properties (#6537)
Signed-off-by: Neo Xu <neo.xu1990@gmail.com>
This commit is contained in:
committed by
Gabor Kiss-Vamosi
parent
9e3ea81dde
commit
e72fa89822
@@ -60,6 +60,108 @@ static const lv_property_ops_t properties[] = {
|
||||
.setter = lv_obj_set_parent,
|
||||
.getter = lv_obj_get_parent,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_X,
|
||||
.setter = lv_obj_set_x,
|
||||
.getter = lv_obj_get_x,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_Y,
|
||||
.setter = lv_obj_set_y,
|
||||
.getter = lv_obj_get_y,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_W,
|
||||
.setter = lv_obj_set_width,
|
||||
.getter = lv_obj_get_width,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_H,
|
||||
.setter = lv_obj_set_height,
|
||||
.getter = lv_obj_get_height,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_CONTENT_WIDTH,
|
||||
.setter = lv_obj_set_content_width,
|
||||
.getter = lv_obj_get_content_width,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_CONTENT_HEIGHT,
|
||||
.setter = lv_obj_set_content_height,
|
||||
.getter = lv_obj_get_content_height,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_LAYOUT,
|
||||
.setter = lv_obj_set_layout,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_ALIGN,
|
||||
.setter = lv_obj_set_align,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_SCROLLBAR_MODE,
|
||||
.setter = lv_obj_set_scrollbar_mode,
|
||||
.getter = lv_obj_get_scrollbar_mode,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_SCROLL_DIR,
|
||||
.setter = lv_obj_set_scroll_dir,
|
||||
.getter = lv_obj_get_scroll_dir,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_SCROLL_SNAP_X,
|
||||
.setter = lv_obj_set_scroll_snap_x,
|
||||
.getter = lv_obj_get_scroll_snap_x,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_SCROLL_SNAP_Y,
|
||||
.setter = lv_obj_set_scroll_snap_y,
|
||||
.getter = lv_obj_get_scroll_snap_y,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_SCROLL_TOP,
|
||||
.getter = lv_obj_get_scroll_top,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_SCROLL_BOTTOM,
|
||||
.getter = lv_obj_get_scroll_bottom,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_SCROLL_LEFT,
|
||||
.getter = lv_obj_get_scroll_left,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_SCROLL_RIGHT,
|
||||
.getter = lv_obj_get_scroll_right,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_SCROLL_END,
|
||||
.getter = lv_obj_get_scroll_end,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_EXT_DRAW_SIZE,
|
||||
.getter = _lv_obj_get_ext_draw_size,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_EVENT_COUNT,
|
||||
.getter = lv_obj_get_event_count,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_SCREEN,
|
||||
.getter = lv_obj_get_screen,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_DISPLAY,
|
||||
.getter = lv_obj_get_display,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_CHILD_COUNT,
|
||||
.getter = lv_obj_get_child_count,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_OBJ_INDEX,
|
||||
.getter = lv_obj_get_index,
|
||||
},
|
||||
{
|
||||
.id = LV_PROPERTY_ID_ANY,
|
||||
.setter = lv_obj_set_any,
|
||||
|
||||
@@ -181,7 +181,32 @@ enum {
|
||||
LV_PROPERTY_ID(OBJ, STATE_END, LV_PROPERTY_TYPE_INT, 47),
|
||||
|
||||
/*OBJ normal properties*/
|
||||
LV_PROPERTY_ID(OBJ, PARENT, LV_PROPERTY_TYPE_POINTER, 31),
|
||||
LV_PROPERTY_ID(OBJ, PARENT, LV_PROPERTY_TYPE_OBJ, 48),
|
||||
LV_PROPERTY_ID(OBJ, X, LV_PROPERTY_TYPE_INT, 49),
|
||||
LV_PROPERTY_ID(OBJ, Y, LV_PROPERTY_TYPE_INT, 50),
|
||||
LV_PROPERTY_ID(OBJ, W, LV_PROPERTY_TYPE_INT, 51),
|
||||
LV_PROPERTY_ID(OBJ, H, LV_PROPERTY_TYPE_INT, 52),
|
||||
LV_PROPERTY_ID(OBJ, CONTENT_WIDTH, LV_PROPERTY_TYPE_INT, 53),
|
||||
LV_PROPERTY_ID(OBJ, CONTENT_HEIGHT, LV_PROPERTY_TYPE_INT, 54),
|
||||
LV_PROPERTY_ID(OBJ, LAYOUT, LV_PROPERTY_TYPE_INT, 55),
|
||||
LV_PROPERTY_ID(OBJ, ALIGN, LV_PROPERTY_TYPE_INT, 56),
|
||||
LV_PROPERTY_ID(OBJ, SCROLLBAR_MODE, LV_PROPERTY_TYPE_INT, 57),
|
||||
LV_PROPERTY_ID(OBJ, SCROLL_DIR, LV_PROPERTY_TYPE_INT, 58),
|
||||
LV_PROPERTY_ID(OBJ, SCROLL_SNAP_X, LV_PROPERTY_TYPE_INT, 59),
|
||||
LV_PROPERTY_ID(OBJ, SCROLL_SNAP_Y, LV_PROPERTY_TYPE_INT, 60),
|
||||
LV_PROPERTY_ID(OBJ, SCROLL_X, LV_PROPERTY_TYPE_INT, 61),
|
||||
LV_PROPERTY_ID(OBJ, SCROLL_Y, LV_PROPERTY_TYPE_INT, 62),
|
||||
LV_PROPERTY_ID(OBJ, SCROLL_TOP, LV_PROPERTY_TYPE_INT, 63),
|
||||
LV_PROPERTY_ID(OBJ, SCROLL_BOTTOM, LV_PROPERTY_TYPE_INT, 64),
|
||||
LV_PROPERTY_ID(OBJ, SCROLL_LEFT, LV_PROPERTY_TYPE_INT, 65),
|
||||
LV_PROPERTY_ID(OBJ, SCROLL_RIGHT, LV_PROPERTY_TYPE_INT, 66),
|
||||
LV_PROPERTY_ID(OBJ, SCROLL_END, LV_PROPERTY_TYPE_INT, 67),
|
||||
LV_PROPERTY_ID(OBJ, EXT_DRAW_SIZE, LV_PROPERTY_TYPE_INT, 68),
|
||||
LV_PROPERTY_ID(OBJ, EVENT_COUNT, LV_PROPERTY_TYPE_INT, 69),
|
||||
LV_PROPERTY_ID(OBJ, SCREEN, LV_PROPERTY_TYPE_OBJ, 70),
|
||||
LV_PROPERTY_ID(OBJ, DISPLAY, LV_PROPERTY_TYPE_POINTER, 71),
|
||||
LV_PROPERTY_ID(OBJ, CHILD_COUNT, LV_PROPERTY_TYPE_INT, 72),
|
||||
LV_PROPERTY_ID(OBJ, INDEX, LV_PROPERTY_TYPE_INT, 73),
|
||||
|
||||
LV_PROPERTY_OBJ_END,
|
||||
};
|
||||
|
||||
@@ -14,7 +14,14 @@
|
||||
* Generated code from properties.py
|
||||
*/
|
||||
/* *INDENT-OFF* */
|
||||
const lv_property_name_t lv_obj_property_names[48] = {
|
||||
const lv_property_name_t lv_obj_property_names[73] = {
|
||||
{"align", LV_PROPERTY_OBJ_ALIGN,},
|
||||
{"child_count", LV_PROPERTY_OBJ_CHILD_COUNT,},
|
||||
{"content_height", LV_PROPERTY_OBJ_CONTENT_HEIGHT,},
|
||||
{"content_width", LV_PROPERTY_OBJ_CONTENT_WIDTH,},
|
||||
{"display", LV_PROPERTY_OBJ_DISPLAY,},
|
||||
{"event_count", LV_PROPERTY_OBJ_EVENT_COUNT,},
|
||||
{"ext_draw_size", LV_PROPERTY_OBJ_EXT_DRAW_SIZE,},
|
||||
{"flag_adv_hittest", LV_PROPERTY_OBJ_FLAG_ADV_HITTEST,},
|
||||
{"flag_checkable", LV_PROPERTY_OBJ_FLAG_CHECKABLE,},
|
||||
{"flag_click_focusable", LV_PROPERTY_OBJ_FLAG_CLICK_FOCUSABLE,},
|
||||
@@ -47,7 +54,22 @@ const lv_property_name_t lv_obj_property_names[48] = {
|
||||
{"flag_user_4", LV_PROPERTY_OBJ_FLAG_USER_4,},
|
||||
{"flag_widget_1", LV_PROPERTY_OBJ_FLAG_WIDGET_1,},
|
||||
{"flag_widget_2", LV_PROPERTY_OBJ_FLAG_WIDGET_2,},
|
||||
{"h", LV_PROPERTY_OBJ_H,},
|
||||
{"index", LV_PROPERTY_OBJ_INDEX,},
|
||||
{"layout", LV_PROPERTY_OBJ_LAYOUT,},
|
||||
{"parent", LV_PROPERTY_OBJ_PARENT,},
|
||||
{"screen", LV_PROPERTY_OBJ_SCREEN,},
|
||||
{"scroll_bottom", LV_PROPERTY_OBJ_SCROLL_BOTTOM,},
|
||||
{"scroll_dir", LV_PROPERTY_OBJ_SCROLL_DIR,},
|
||||
{"scroll_end", LV_PROPERTY_OBJ_SCROLL_END,},
|
||||
{"scroll_left", LV_PROPERTY_OBJ_SCROLL_LEFT,},
|
||||
{"scroll_right", LV_PROPERTY_OBJ_SCROLL_RIGHT,},
|
||||
{"scroll_snap_x", LV_PROPERTY_OBJ_SCROLL_SNAP_X,},
|
||||
{"scroll_snap_y", LV_PROPERTY_OBJ_SCROLL_SNAP_Y,},
|
||||
{"scroll_top", LV_PROPERTY_OBJ_SCROLL_TOP,},
|
||||
{"scroll_x", LV_PROPERTY_OBJ_SCROLL_X,},
|
||||
{"scroll_y", LV_PROPERTY_OBJ_SCROLL_Y,},
|
||||
{"scrollbar_mode", LV_PROPERTY_OBJ_SCROLLBAR_MODE,},
|
||||
{"state_any", LV_PROPERTY_OBJ_STATE_ANY,},
|
||||
{"state_checked", LV_PROPERTY_OBJ_STATE_CHECKED,},
|
||||
{"state_disabled", LV_PROPERTY_OBJ_STATE_DISABLED,},
|
||||
@@ -63,6 +85,9 @@ const lv_property_name_t lv_obj_property_names[48] = {
|
||||
{"state_user_2", LV_PROPERTY_OBJ_STATE_USER_2,},
|
||||
{"state_user_3", LV_PROPERTY_OBJ_STATE_USER_3,},
|
||||
{"state_user_4", LV_PROPERTY_OBJ_STATE_USER_4,},
|
||||
{"w", LV_PROPERTY_OBJ_W,},
|
||||
{"x", LV_PROPERTY_OBJ_X,},
|
||||
{"y", LV_PROPERTY_OBJ_Y,},
|
||||
};
|
||||
/* *INDENT-ON* */
|
||||
#endif
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
#if LV_USE_OBJ_PROPERTY && LV_USE_OBJ_PROPERTY_NAME
|
||||
|
||||
extern const lv_property_name_t lv_image_property_names[11];
|
||||
extern const lv_property_name_t lv_obj_property_names[48];
|
||||
extern const lv_property_name_t lv_obj_property_names[73];
|
||||
extern const lv_property_name_t lv_style_property_names[111];
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -255,7 +255,9 @@ void test_obj_property_name(void)
|
||||
lv_obj_t * obj = lv_obj_create(lv_screen_active());
|
||||
|
||||
/*Style name*/
|
||||
TEST_ASSERT_EQUAL_UINT32(LV_PROPERTY_STYLE_X, lv_obj_property_get_id(obj, "x"));
|
||||
/*If widget property name conflicts with style name, property name comes first.*/
|
||||
TEST_ASSERT_EQUAL_UINT32(LV_PROPERTY_OBJ_X, lv_obj_property_get_id(obj, "x"));
|
||||
TEST_ASSERT_EQUAL_UINT32(LV_PROPERTY_STYLE_OPA, lv_obj_property_get_id(obj, "opa"));
|
||||
TEST_ASSERT_EQUAL_UINT32(LV_PROPERTY_STYLE_BG_MAIN_STOP, lv_obj_property_get_id(obj, "bg_main_stop"));
|
||||
|
||||
/*Widget property*/
|
||||
|
||||
Reference in New Issue
Block a user