mirror of
https://github.com/lvgl/lvgl.git
synced 2026-05-10 04:37:55 +08:00
feat(style): add LV_STATE_ALT for simple dark/light switching (#9691)
This commit is contained in:
committed by
GitHub
parent
bc76ee1857
commit
3e2b395724
@@ -46,6 +46,7 @@ States
|
||||
A widget can be in a combination of the following states:
|
||||
|
||||
- :cpp:enumerator:`LV_STATE_DEFAULT`: Normal, released state.
|
||||
- :cpp:enumerator:`LV_STATE_ALT`: Alternative style settings, e.g. dark mode.
|
||||
- :cpp:enumerator:`LV_STATE_CHECKED`: Toggled or checked state.
|
||||
- :cpp:enumerator:`LV_STATE_FOCUSED`: Focused via keypad, encoder, or clicked via
|
||||
touchpad/mouse.
|
||||
|
||||
@@ -264,6 +264,7 @@ States
|
||||
Widgets can be in a combination of the following states:
|
||||
|
||||
- :cpp:enumerator:`LV_STATE_DEFAULT`: Normal, released state
|
||||
- :cpp:enumerator:`LV_STATE_ALT`: Alternative style settings, e.g. dark mode.
|
||||
- :cpp:enumerator:`LV_STATE_CHECKED`: Toggled or checked state
|
||||
- :cpp:enumerator:`LV_STATE_FOCUSED`: Focused via keypad or encoder or clicked via touchpad/mouse
|
||||
- :cpp:enumerator:`LV_STATE_FOCUS_KEY`: Focused via keypad or encoder but not via touchpad/mouse
|
||||
|
||||
@@ -23,6 +23,7 @@ PikaObj* pika_lv_event_listener_g;
|
||||
|
||||
void pika_lvgl_STATE___init__(PikaObj* self) {
|
||||
obj_setInt(self, "DEFAULT", LV_STATE_DEFAULT);
|
||||
obj_setInt(self, "ALT", LV_STATE_ALT);
|
||||
obj_setInt(self, "CHECKED", LV_STATE_CHECKED);
|
||||
obj_setInt(self, "FOCUSED", LV_STATE_FOCUSED);
|
||||
obj_setInt(self, "FOCUS_KEY", LV_STATE_FOCUS_KEY);
|
||||
|
||||
+11
-9
@@ -122,15 +122,17 @@ enum _lv_signed_prop_id_t {
|
||||
LV_PROPERTY_ID(OBJ, FLAG_END, LV_PROPERTY_TYPE_INT, 30),
|
||||
|
||||
LV_PROPERTY_ID(OBJ, STATE_START, LV_PROPERTY_TYPE_INT, 31),
|
||||
LV_PROPERTY_ID(OBJ, STATE_CHECKED, LV_PROPERTY_TYPE_INT, 31),
|
||||
LV_PROPERTY_ID(OBJ, STATE_FOCUSED, LV_PROPERTY_TYPE_INT, 32),
|
||||
LV_PROPERTY_ID(OBJ, STATE_FOCUS_KEY, LV_PROPERTY_TYPE_INT, 33),
|
||||
LV_PROPERTY_ID(OBJ, STATE_EDITED, LV_PROPERTY_TYPE_INT, 34),
|
||||
LV_PROPERTY_ID(OBJ, STATE_HOVERED, LV_PROPERTY_TYPE_INT, 35),
|
||||
LV_PROPERTY_ID(OBJ, STATE_PRESSED, LV_PROPERTY_TYPE_INT, 36),
|
||||
LV_PROPERTY_ID(OBJ, STATE_SCROLLED, LV_PROPERTY_TYPE_INT, 37),
|
||||
LV_PROPERTY_ID(OBJ, STATE_DISABLED, LV_PROPERTY_TYPE_INT, 38),
|
||||
/*not used bit8-bit11*/
|
||||
LV_PROPERTY_ID(OBJ, STATE_ALT, LV_PROPERTY_TYPE_INT, 31),
|
||||
/*1 reserved*/
|
||||
LV_PROPERTY_ID(OBJ, STATE_CHECKED, LV_PROPERTY_TYPE_INT, 33),
|
||||
LV_PROPERTY_ID(OBJ, STATE_FOCUSED, LV_PROPERTY_TYPE_INT, 34),
|
||||
LV_PROPERTY_ID(OBJ, STATE_FOCUS_KEY, LV_PROPERTY_TYPE_INT, 35),
|
||||
LV_PROPERTY_ID(OBJ, STATE_EDITED, LV_PROPERTY_TYPE_INT, 36),
|
||||
LV_PROPERTY_ID(OBJ, STATE_HOVERED, LV_PROPERTY_TYPE_INT, 37),
|
||||
LV_PROPERTY_ID(OBJ, STATE_PRESSED, LV_PROPERTY_TYPE_INT, 38),
|
||||
LV_PROPERTY_ID(OBJ, STATE_SCROLLED, LV_PROPERTY_TYPE_INT, 39),
|
||||
LV_PROPERTY_ID(OBJ, STATE_DISABLED, LV_PROPERTY_TYPE_INT, 40),
|
||||
/*2 reserved*/
|
||||
LV_PROPERTY_ID(OBJ, STATE_USER_1, LV_PROPERTY_TYPE_INT, 43),
|
||||
LV_PROPERTY_ID(OBJ, STATE_USER_2, LV_PROPERTY_TYPE_INT, 44),
|
||||
LV_PROPERTY_ID(OBJ, STATE_USER_3, LV_PROPERTY_TYPE_INT, 45),
|
||||
|
||||
+16
-13
@@ -30,19 +30,22 @@ extern "C" {
|
||||
* OR-ed values are possible
|
||||
*/
|
||||
typedef enum {
|
||||
LV_STATE_DEFAULT = 0x0000,
|
||||
LV_STATE_CHECKED = 0x0001,
|
||||
LV_STATE_FOCUSED = 0x0002,
|
||||
LV_STATE_FOCUS_KEY = 0x0004,
|
||||
LV_STATE_EDITED = 0x0008,
|
||||
LV_STATE_HOVERED = 0x0010,
|
||||
LV_STATE_PRESSED = 0x0020,
|
||||
LV_STATE_SCROLLED = 0x0040,
|
||||
LV_STATE_DISABLED = 0x0080,
|
||||
LV_STATE_USER_1 = 0x1000,
|
||||
LV_STATE_USER_2 = 0x2000,
|
||||
LV_STATE_USER_3 = 0x4000,
|
||||
LV_STATE_USER_4 = 0x8000,
|
||||
LV_STATE_DEFAULT = 0,
|
||||
LV_STATE_ALT = 1 << 0,
|
||||
/*1 reserved*/
|
||||
LV_STATE_CHECKED = 1 << 2,
|
||||
LV_STATE_FOCUSED = 1 << 3,
|
||||
LV_STATE_FOCUS_KEY = 1 << 4,
|
||||
LV_STATE_EDITED = 1 << 5,
|
||||
LV_STATE_HOVERED = 1 << 6,
|
||||
LV_STATE_PRESSED = 1 << 7,
|
||||
LV_STATE_SCROLLED = 1 << 8,
|
||||
LV_STATE_DISABLED = 1 << 9,
|
||||
/*2 reserved*/
|
||||
LV_STATE_USER_1 = 1 << 12,
|
||||
LV_STATE_USER_2 = 1 << 13,
|
||||
LV_STATE_USER_3 = 1 << 14,
|
||||
LV_STATE_USER_4 = 1 << 15,
|
||||
|
||||
LV_STATE_ANY = 0xFFFF, /**< Special value can be used in some functions to target all states*/
|
||||
} lv_state_t;
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
* Generated code from properties.py
|
||||
*/
|
||||
/* *INDENT-OFF* */
|
||||
const lv_property_name_t lv_obj_property_names[74] = {
|
||||
const lv_property_name_t lv_obj_property_names[75] = {
|
||||
{"align", LV_PROPERTY_OBJ_ALIGN,},
|
||||
{"child_count", LV_PROPERTY_OBJ_CHILD_COUNT,},
|
||||
{"content_height", LV_PROPERTY_OBJ_CONTENT_HEIGHT,},
|
||||
@@ -71,6 +71,7 @@ const lv_property_name_t lv_obj_property_names[74] = {
|
||||
{"scroll_x", LV_PROPERTY_OBJ_SCROLL_X,},
|
||||
{"scroll_y", LV_PROPERTY_OBJ_SCROLL_Y,},
|
||||
{"scrollbar_mode", LV_PROPERTY_OBJ_SCROLLBAR_MODE,},
|
||||
{"state_alt", LV_PROPERTY_OBJ_STATE_ALT,},
|
||||
{"state_any", LV_PROPERTY_OBJ_STATE_ANY,},
|
||||
{"state_checked", LV_PROPERTY_OBJ_STATE_CHECKED,},
|
||||
{"state_disabled", LV_PROPERTY_OBJ_STATE_DISABLED,},
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
extern const lv_property_name_t lv_led_property_names[2];
|
||||
extern const lv_property_name_t lv_line_property_names[1];
|
||||
extern const lv_property_name_t lv_menu_property_names[2];
|
||||
extern const lv_property_name_t lv_obj_property_names[74];
|
||||
extern const lv_property_name_t lv_obj_property_names[75];
|
||||
extern const lv_property_name_t lv_roller_property_names[3];
|
||||
extern const lv_property_name_t lv_scale_property_names[8];
|
||||
extern const lv_property_name_t lv_slider_property_names[8];
|
||||
|
||||
Reference in New Issue
Block a user