diff --git a/internal/native/cgo/ctrl.c b/internal/native/cgo/ctrl.c index 764a5ba..83e82cb 100644 --- a/internal/native/cgo/ctrl.c +++ b/internal/native/cgo/ctrl.c @@ -12,6 +12,7 @@ #include "edid.h" #include "ctrl.h" #include +#include "ui/vars.h" #include "log.h" #include "log_handler.h" @@ -158,6 +159,10 @@ lv_obj_flag_t str_to_lv_obj_flag(const char *flag) } } +void jetkvm_set_app_version(const char *version) { + set_var_app_version(version); +} + void jetkvm_ui_init() { lvgl_init(); } @@ -237,7 +242,20 @@ void jetkvm_ui_set_state(const char *obj_name, const char *state_name) { { state_val = LV_STATE_USER_2; } - lv_obj_clear_state(obj, LV_STATE_USER_1 | LV_STATE_USER_2); + else if (strcmp(state_name, "LV_STATE_USER_3") == 0) + { + state_val = LV_STATE_USER_3; + } + else if (strcmp(state_name, "LV_STATE_USER_4") == 0) + { + state_val = LV_STATE_USER_4; + } + else if (strcmp(state_name, "LV_STATE_DISABLED") == 0) + { + state_val = LV_STATE_DISABLED; + } + // TODO: use LV_STATE_USER_* once eez supports it + lv_obj_clear_state(obj, LV_STATE_USER_1 | LV_STATE_USER_2 | LV_STATE_USER_3 | LV_STATE_USER_4 | LV_STATE_DISABLED); lv_obj_add_state(obj, state_val); } diff --git a/internal/native/cgo/ctrl.h b/internal/native/cgo/ctrl.h index 153fb6c..f3b74fc 100644 --- a/internal/native/cgo/ctrl.h +++ b/internal/native/cgo/ctrl.h @@ -22,6 +22,8 @@ typedef void (jetkvm_video_handler_t)(const uint8_t *frame, ssize_t len); void jetkvm_set_log_handler(jetkvm_log_handler_t *handler); void jetkvm_set_video_handler(jetkvm_video_handler_t *handler); +void jetkvm_set_app_version(const char *version); + void jetkvm_ui_init(); void jetkvm_ui_tick(); diff --git a/internal/native/eez/jetkvm.eez-project b/internal/native/eez/jetkvm.eez-project index 4af3416..2e639ca 100644 --- a/internal/native/eez/jetkvm.eez-project +++ b/internal/native/eez/jetkvm.eez-project @@ -15,7 +15,7 @@ "displayHeight": 240, "circularDisplay": false, "displayBorderRadius": 0, - "darkTheme": true, + "darkTheme": false, "colorFormat": "BGR", "resourceFiles": [], "hiddenWidgetLines": "dimmed", @@ -45,11 +45,21 @@ "fileName": "actions.h", "template": "#ifndef EEZ_LVGL_UI_EVENTS_H\r\n#define EEZ_LVGL_UI_EVENTS_H\r\n\r\n//${eez-studio LVGL_INCLUDE}\r\n\r\n#ifdef __cplusplus\r\nextern \"C\" {\r\n#endif\r\n\r\nextern int handle_gesture_screen_switch(lv_event_t *e, lv_dir_t direction, int screenId);\r\n\r\n//${eez-studio LVGL_ACTIONS_DECL}\r\n\r\n#ifdef __cplusplus\r\n}\r\n#endif\r\n\r\n#endif /*EEZ_LVGL_UI_EVENTS_H*/" }, + { + "objID": "58af3ebb-96b3-494c-f4e3-9c23852e3e42", + "fileName": "actions.c", + "template": "#include \"actions.h\"\n#include \"screens.h\"\n\nint handle_gesture_screen_switch(lv_event_t *e, lv_dir_t direction, int screenId) {\n lv_event_code_t event_code = lv_event_get_code(e);\n if (event_code != LV_EVENT_GESTURE) {\n return 0;\n }\n\n if (lv_indev_get_gesture_dir(lv_indev_get_act()) != direction) {\n return 0;\n }\n lv_indev_wait_release(lv_indev_get_act());\n loadScreen(screenId);\n return 1;\n}\n\nvoid action_switch_to_menu(lv_event_t *e) {\n loadScreen(SCREEN_ID_MENU_SCREEN);\n}\n\nvoid action_switch_to_advanced_menu(lv_event_t *e) {\n loadScreen(SCREEN_ID_MENU_ADVANCED_SCREEN);\n}\n\nvoid action_switch_to_about(lv_event_t *e) {\n loadScreen(SCREEN_ID_ABOUT_SCREEN);\n}\n\nvoid action_menu_screen_gesture(lv_event_t * e) {\n handle_gesture_screen_switch(e, LV_DIR_RIGHT, SCREEN_ID_HOME_SCREEN);\n}\n\nvoid action_menu_advanced_screen_gesture(lv_event_t * e) {\n handle_gesture_screen_switch(e, LV_DIR_RIGHT, SCREEN_ID_MENU_SCREEN);\n}\n\nvoid action_reset_config_screen_gesture(lv_event_t * e) {\n handle_gesture_screen_switch(e, LV_DIR_RIGHT, SCREEN_ID_MENU_ADVANCED_SCREEN);\n}\n\nvoid action_home_screen_gesture(lv_event_t * e) {\n handle_gesture_screen_switch(e, LV_DIR_LEFT, SCREEN_ID_MENU_SCREEN);\n}\n\nvoid action_about_screen_gesture(lv_event_t * e) {\n handle_gesture_screen_switch(e, LV_DIR_RIGHT, SCREEN_ID_MENU_SCREEN);\n}" + }, { "objID": "1dbd1b7e-7270-47f0-ee02-e80bdae287cf", "fileName": "vars.h", "template": "#ifndef EEZ_LVGL_UI_VARS_H\r\n#define EEZ_LVGL_UI_VARS_H\r\n\r\n#include \r\n#include \r\n\r\n#ifdef __cplusplus\r\nextern \"C\" {\r\n#endif\r\n\r\n// enum declarations\r\n\r\n//${eez-studio FLOW_ENUMS}\r\n\r\n// Flow global variables\r\n\r\n//${eez-studio FLOW_GLOBAL_VARIABLES_ENUM}\r\n\r\n// Native global variables\r\n\r\n//${eez-studio LVGL_VARS_DECL}\r\n\r\n#ifdef __cplusplus\r\n}\r\n#endif\r\n\r\n#endif /*EEZ_LVGL_UI_VARS_H*/" }, + { + "objID": "316b04e4-a7de-4afc-c413-31f5f36d3843", + "fileName": "vars.c", + "template": "#include \n#include \"vars.h\"\n\nchar app_version[100] = { 0 };\n\nconst char *get_var_app_version() {\n return app_version;\n}\n\nvoid set_var_app_version(const char *value) {\n strncpy(app_version, value, sizeof(app_version) / sizeof(char));\n app_version[sizeof(app_version) / sizeof(char) - 1] = 0;\n}\n" + }, { "objID": "cbe7cde1-8920-476a-b2a2-1761ae7451b0", "fileName": "structs.h", @@ -89,11 +99,6 @@ "objID": "3697d44a-db04-48a2-f3e5-098172727346", "fileName": "ui.c", "template": "#if defined(EEZ_FOR_LVGL)\n#include \n#endif\n\n#include \"ui.h\"\n#include \"screens.h\"\n#include \"images.h\"\n#include \"actions.h\"\n#include \"vars.h\"\n\n//${eez-studio GUI_ASSETS_DEF}\n\n//${eez-studio LVGL_NATIVE_VARS_TABLE_DEF}\n\n//${eez-studio LVGL_ACTIONS_ARRAY_DEF}\n\n#if defined(EEZ_FOR_LVGL)\n\nvoid ui_init() {\n eez_flow_init(assets, sizeof(assets), (lv_obj_t **)&objects, sizeof(objects), images, sizeof(images), actions);\n}\n\nvoid ui_tick() {\n eez_flow_tick();\n tick_screen(g_currentScreen);\n}\n\n#else\n\n#include \n\nstatic int16_t currentScreen = -1;\n\nstatic lv_obj_t *getLvglObjectFromIndex(int32_t index) {\n if (index == -1) {\n return 0;\n }\n return ((lv_obj_t **)&objects)[index];\n}\n\nvoid loadScreen(enum ScreensEnum screenId) {\n currentScreen = screenId - 1;\n lv_obj_t *screen = getLvglObjectFromIndex(currentScreen);\n lv_scr_load(screen);\n // lv_scr_load_anim(screen, LV_SCR_LOAD_ANIM_FADE_IN, 200, 0, false);\n}\n\nvoid ui_init() {\n create_screens();\n//${eez-studio LVGL_LOAD_FIRST_SCREEN}\n}\n\nvoid ui_tick() {\n tick_screen(currentScreen);\n}\n\n#endif\n" - }, - { - "objID": "58af3ebb-96b3-494c-f4e3-9c23852e3e42", - "fileName": "actions.c", - "template": "#include \"actions.h\"\n#include \"screens.h\"\n\nint handle_gesture_screen_switch(lv_event_t *e, lv_dir_t direction, int screenId) {\n lv_event_code_t event_code = lv_event_get_code(e);\n if (event_code != LV_EVENT_GESTURE) {\n return 0;\n }\n\n if (lv_indev_get_gesture_dir(lv_indev_get_act()) != direction) {\n return 0;\n }\n lv_indev_wait_release(lv_indev_get_act());\n loadScreen(screenId);\n return 1;\n}\n\nvoid action_switch_to_menu(lv_event_t *e) {\n loadScreen(SCREEN_ID_MENU_SCREEN);\n}\n\nvoid action_switch_to_advanced_menu(lv_event_t *e) {\n loadScreen(SCREEN_ID_MENU_ADVANCED_SCREEN);\n}\n\nvoid action_switch_to_about(lv_event_t *e) {\n loadScreen(SCREEN_ID_ABOUT_SCREEN);\n}\n\nvoid action_menu_screen_gesture(lv_event_t * e) {\n handle_gesture_screen_switch(e, LV_DIR_RIGHT, SCREEN_ID_HOME_SCREEN);\n}\n\nvoid action_menu_advanced_screen_gesture(lv_event_t * e) {\n handle_gesture_screen_switch(e, LV_DIR_RIGHT, SCREEN_ID_MENU_SCREEN);\n}\n\nvoid action_reset_config_screen_gesture(lv_event_t * e) {\n handle_gesture_screen_switch(e, LV_DIR_RIGHT, SCREEN_ID_MENU_ADVANCED_SCREEN);\n}\n\nvoid action_home_screen_gesture(lv_event_t * e) {\n handle_gesture_screen_switch(e, LV_DIR_LEFT, SCREEN_ID_MENU_SCREEN);\n}\n\nvoid action_about_screen_gesture(lv_event_t * e) {\n handle_gesture_screen_switch(e, LV_DIR_RIGHT, SCREEN_ID_MENU_SCREEN);\n}" } ], "destinationFolder": "src\\ui", @@ -111,7 +116,16 @@ }, "variables": { "objID": "c6c71e16-53e1-217f-d03b-cef56c6b037a", - "globalVariables": [], + "globalVariables": [ + { + "objID": "620da94f-9a31-4015-a138-244add28a9ee", + "name": "appVersion", + "type": "string", + "defaultValue": "\"\"", + "persistent": false, + "native": false + } + ], "structures": [], "enums": [] }, @@ -310,7 +324,7 @@ "type": "LVGLLabelWidget", "left": 0, "top": 0, - "width": 73, + "width": 35, "height": 17, "customInputs": [], "customOutputs": [], @@ -346,10 +360,11 @@ } }, "groupIndex": 0, - "text": "0.0.1-dev0", - "textType": "literal", + "text": "appVersion", + "textType": "expression", "longMode": "WRAP", - "recolor": false + "recolor": false, + "previewValue": "0.4.5" } ], "widgetFlags": "CLICK_FOCUSABLE|GESTURE_BUBBLE|PRESS_LOCK|SCROLLABLE|SCROLL_CHAIN_HOR|SCROLL_CHAIN_VER|SCROLL_ELASTIC|SCROLL_MOMENTUM|SCROLL_WITH_ARROW|SNAPPABLE", @@ -399,7 +414,14 @@ "states": "", "useStyle": "FlexColumnSpaceBetween", "localStyles": { - "objID": "8eb86917-c831-b762-5685-8d01972e8a22" + "objID": "8eb86917-c831-b762-5685-8d01972e8a22", + "definition": { + "MAIN": { + "DEFAULT": { + "bg_color": "000000" + } + } + } }, "groupIndex": 0 } @@ -1113,7 +1135,17 @@ "states": "", "useStyle": "LabelFont16", "localStyles": { - "objID": "38101e49-225d-45a2-9299-873eb1a9afa1" + "objID": "38101e49-225d-45a2-9299-873eb1a9afa1", + "definition": { + "MAIN": { + "DEFAULT": { + "text_color": "22C55E" + }, + "DISABLED": { + "text_color": "808080" + } + } + } }, "groupIndex": 0, "text": "Connected", @@ -1317,11 +1349,22 @@ "hiddenFlagType": "literal", "clickableFlagType": "literal", "checkedStateType": "literal", + "disabledState": true, "disabledStateType": "literal", "states": "", "useStyle": "LabelFont16", "localStyles": { - "objID": "00742432-4b32-47f4-a4c5-5bc75f6b458d" + "objID": "00742432-4b32-47f4-a4c5-5bc75f6b458d", + "definition": { + "MAIN": { + "DEFAULT": { + "text_color": "22C55E" + }, + "DISABLED": { + "text_color": "808080" + } + } + } }, "groupIndex": 0, "text": "Disconnected", @@ -1396,14 +1439,7 @@ "states": "", "useStyle": "FlexScreen", "localStyles": { - "objID": "e94fd1bc-2cb2-4da3-fea6-215f2995ff1e", - "definition": { - "MAIN": { - "DEFAULT": { - "pad_right": 34 - } - } - } + "objID": "e94fd1bc-2cb2-4da3-fea6-215f2995ff1e" }, "groupIndex": 0 } @@ -1578,17 +1614,9 @@ "checkedStateType": "literal", "disabledStateType": "literal", "states": "", + "useStyle": "BackButton", "localStyles": { - "objID": "d4d433cc-346c-45c1-d534-b718627e29e0", - "definition": { - "MAIN": { - "DEFAULT": { - "bg_color": "262626", - "bg_opa": 255, - "radius": 10000 - } - } - } + "objID": "d4d433cc-346c-45c1-d534-b718627e29e0" }, "group": "", "groupIndex": 0 @@ -2408,17 +2436,9 @@ "checkedStateType": "literal", "disabledStateType": "literal", "states": "", + "useStyle": "BackButton", "localStyles": { - "objID": "68b25d3b-9ff7-4c22-c593-144728011425", - "definition": { - "MAIN": { - "DEFAULT": { - "bg_color": "262626", - "bg_opa": 255, - "radius": 10000 - } - } - } + "objID": "68b25d3b-9ff7-4c22-c593-144728011425" }, "group": "", "groupIndex": 0 @@ -2982,240 +3002,6 @@ "createAtStart": true, "deleteOnScreenUnload": false }, - { - "objID": "6ae65a65-7c13-4bb0-b1f4-140a7c81ce08", - "components": [ - { - "objID": "301d7de4-526d-4412-d53a-7bcccf53ad28", - "type": "LVGLScreenWidget", - "left": 0, - "top": 0, - "width": 800, - "height": 480, - "customInputs": [], - "customOutputs": [], - "style": { - "objID": "7c02286f-53af-45c9-cc16-501e63d58c1a", - "useStyle": "default", - "conditionalStyles": [], - "childStyles": [] - }, - "timeline": [], - "eventHandlers": [], - "leftUnit": "px", - "topUnit": "px", - "widthUnit": "px", - "heightUnit": "px", - "children": [ - { - "objID": "0098b39f-84f3-4e84-a8de-6884a89b52a2", - "type": "LVGLContainerWidget", - "left": 0, - "top": 0, - "width": 100, - "height": 100, - "customInputs": [], - "customOutputs": [], - "style": { - "objID": "4c070c5d-443d-48fc-f542-3a01ee676cbb", - "useStyle": "default", - "conditionalStyles": [], - "childStyles": [] - }, - "timeline": [], - "eventHandlers": [], - "leftUnit": "px", - "topUnit": "px", - "widthUnit": "%", - "heightUnit": "%", - "children": [ - { - "objID": "ae7509ee-e8b8-438b-af98-87e8867c83d7", - "type": "LVGLContainerWidget", - "left": 0, - "top": 0, - "width": 100, - "height": 100, - "customInputs": [], - "customOutputs": [], - "style": { - "objID": "361c1892-cb5b-4cb2-e2b5-c3dd1bda02cb", - "useStyle": "default", - "conditionalStyles": [], - "childStyles": [] - }, - "timeline": [], - "eventHandlers": [], - "leftUnit": "px", - "topUnit": "px", - "widthUnit": "%", - "heightUnit": "%", - "children": [ - { - "objID": "e61ffde3-c633-4927-c64e-182f2b1a6f8e", - "type": "LVGLImageWidget", - "left": 0, - "top": 0, - "width": 153, - "height": 42, - "customInputs": [], - "customOutputs": [], - "style": { - "objID": "bb3f20c0-c34d-4044-8f3a-7035c2161933", - "useStyle": "default", - "conditionalStyles": [], - "childStyles": [] - }, - "timeline": [], - "eventHandlers": [], - "identifier": "BootLogo_1", - "leftUnit": "px", - "topUnit": "px", - "widthUnit": "content", - "heightUnit": "content", - "children": [], - "widgetFlags": "ADV_HITTEST|CLICK_FOCUSABLE|GESTURE_BUBBLE|PRESS_LOCK|SCROLLABLE|SCROLL_CHAIN_HOR|SCROLL_CHAIN_VER|SCROLL_ELASTIC|SCROLL_MOMENTUM|SCROLL_WITH_ARROW|SNAPPABLE", - "hiddenFlagType": "literal", - "clickableFlagType": "literal", - "flagScrollbarMode": "", - "flagScrollDirection": "", - "scrollSnapX": "", - "scrollSnapY": "", - "checkedStateType": "literal", - "disabledStateType": "literal", - "states": "", - "localStyles": { - "objID": "5d4dd927-d9ea-4643-ceef-d071098f7c03", - "definition": { - "MAIN": { - "DEFAULT": { - "transform_width": 174, - "transform_height": 49 - } - } - } - }, - "group": "", - "groupIndex": 0, - "image": "boot-logo-2", - "setPivot": false, - "pivotX": 0, - "pivotY": 0, - "zoom": 256, - "angle": 0, - "innerAlign": "CENTER" - }, - { - "objID": "5e911c84-3720-4ac9-9d1b-959406aaca8e", - "type": "LVGLLabelWidget", - "left": 0, - "top": 0, - "width": 73, - "height": 17, - "customInputs": [], - "customOutputs": [], - "style": { - "objID": "11ac19dd-499d-4e80-81d0-6d36dc0b620d", - "useStyle": "default", - "conditionalStyles": [], - "childStyles": [] - }, - "timeline": [], - "eventHandlers": [], - "identifier": "BootScreenVersion_1", - "leftUnit": "%", - "topUnit": "%", - "widthUnit": "content", - "heightUnit": "content", - "children": [], - "widgetFlags": "CLICK_FOCUSABLE|GESTURE_BUBBLE|PRESS_LOCK|SCROLLABLE|SCROLL_CHAIN_HOR|SCROLL_CHAIN_VER|SCROLL_ELASTIC|SCROLL_MOMENTUM|SCROLL_WITH_ARROW|SNAPPABLE", - "hiddenFlagType": "literal", - "clickableFlagType": "literal", - "checkedStateType": "literal", - "disabledStateType": "literal", - "states": "", - "localStyles": { - "objID": "0a139d47-e2ee-4656-d3c0-73363b6fc89e", - "definition": { - "MAIN": { - "DEFAULT": { - "text_align": "CENTER", - "text_font": "FontBook16" - } - } - } - }, - "groupIndex": 0, - "text": "0.0.1-dev0", - "textType": "literal", - "longMode": "WRAP", - "recolor": false - } - ], - "widgetFlags": "CLICK_FOCUSABLE|GESTURE_BUBBLE|PRESS_LOCK|SCROLLABLE|SCROLL_CHAIN_HOR|SCROLL_CHAIN_VER|SCROLL_ELASTIC|SCROLL_MOMENTUM|SCROLL_WITH_ARROW|SNAPPABLE", - "hiddenFlagType": "literal", - "clickableFlag": true, - "clickableFlagType": "literal", - "flagScrollbarMode": "", - "flagScrollDirection": "", - "scrollSnapX": "", - "scrollSnapY": "", - "checkedStateType": "literal", - "disabledStateType": "literal", - "states": "", - "useStyle": "FlexCenter", - "localStyles": { - "objID": "af053538-49de-4956-daa3-edec918fde44" - }, - "group": "", - "groupIndex": 0 - } - ], - "widgetFlags": "CLICK_FOCUSABLE|GESTURE_BUBBLE|PRESS_LOCK|SCROLLABLE|SCROLL_CHAIN_HOR|SCROLL_CHAIN_VER|SCROLL_ELASTIC|SCROLL_MOMENTUM|SCROLL_WITH_ARROW|SNAPPABLE", - "hiddenFlagType": "literal", - "clickableFlag": true, - "clickableFlagType": "literal", - "flagScrollbarMode": "", - "flagScrollDirection": "", - "scrollSnapX": "", - "scrollSnapY": "", - "checkedStateType": "literal", - "disabledStateType": "literal", - "states": "", - "useStyle": "FlexStart", - "localStyles": { - "objID": "47d03068-67d6-4e59-921f-937c8b9c9ba4" - }, - "group": "", - "groupIndex": 0 - } - ], - "widgetFlags": "CLICKABLE|PRESS_LOCK|CLICK_FOCUSABLE|GESTURE_BUBBLE|SNAPPABLE|SCROLLABLE|SCROLL_ELASTIC|SCROLL_MOMENTUM|SCROLL_CHAIN_HOR|SCROLL_CHAIN_VER", - "hiddenFlagType": "literal", - "clickableFlag": true, - "clickableFlagType": "literal", - "checkedStateType": "literal", - "disabledStateType": "literal", - "states": "", - "useStyle": "FlexColumnSpaceBetween", - "localStyles": { - "objID": "564ae91d-51b8-4786-fe9d-60f8bec030c0" - }, - "groupIndex": 0 - } - ], - "connectionLines": [], - "localVariables": [], - "userProperties": [], - "name": "BootScreen_1", - "left": 0, - "top": 0, - "width": 300, - "height": 240, - "isUsedAsUserWidget": false, - "createAtStart": true, - "deleteOnScreenUnload": false - }, { "objID": "9dba887e-fc59-4689-d174-21fcce23c7a5", "components": [ @@ -3289,7 +3075,7 @@ }, "timeline": [], "eventHandlers": [], - "identifier": "MenuHeaderContainer_2", + "identifier": "AboutHeaderContainer", "leftUnit": "px", "topUnit": "px", "widthUnit": "%", @@ -3382,17 +3168,9 @@ "checkedStateType": "literal", "disabledStateType": "literal", "states": "", + "useStyle": "BackButton", "localStyles": { - "objID": "4b14423c-6e70-4a05-c414-ae126d53b656", - "definition": { - "MAIN": { - "DEFAULT": { - "bg_color": "262626", - "bg_opa": 255, - "radius": 10000 - } - } - } + "objID": "4b14423c-6e70-4a05-c414-ae126d53b656" }, "group": "", "groupIndex": 0 @@ -3479,7 +3257,7 @@ }, "timeline": [], "eventHandlers": [], - "identifier": "MenuItemsContainer_2", + "identifier": "AboutItemsContainer", "leftUnit": "px", "topUnit": "px", "widthUnit": "%", @@ -4727,13 +4505,14 @@ "pad_top": 24, "pad_bottom": 24, "pad_left": 44, - "pad_right": 44, + "pad_right": 34, "pad_row": 16, "layout": "FLEX", "flex_flow": "COLUMN", "flex_main_place": "START", "flex_cross_place": "START", - "flex_track_place": "START" + "flex_track_place": "START", + "bg_color": "000000" } } } @@ -4809,7 +4588,8 @@ "pad_top": 20, "pad_bottom": 20, "pad_left": 16, - "pad_right": 0 + "pad_right": 0, + "shadow_width": 0 } } } @@ -4861,7 +4641,27 @@ "definition": { "MAIN": { "DEFAULT": { - "text_font": "FontBook18" + "text_font": "FontBook18", + "text_color": "#ffffff" + } + } + } + } + }, + { + "objID": "b5cc4800-0a6d-44a5-9725-7ed4aa534c38", + "name": "BackButton", + "forWidgetType": "LVGLButtonWidget", + "childStyles": [], + "definition": { + "objID": "8ca82b51-fc8c-47ec-a976-2721a23ebb1f", + "definition": { + "MAIN": { + "DEFAULT": { + "bg_color": "262626", + "bg_opa": 255, + "radius": 10000, + "shadow_width": 0 } } } diff --git a/internal/native/eez/jetkvm.eez-project-ui-state b/internal/native/eez/jetkvm.eez-project-ui-state index 89866ba..c382143 100644 --- a/internal/native/eez/jetkvm.eez-project-ui-state +++ b/internal/native/eez/jetkvm.eez-project-ui-state @@ -1,7 +1,9 @@ { "navigation": { - "selectedUserPageObject": "[jetkvm.eez-project]:/userPages/2", - "selectedActionObject": "[jetkvm.eez-project]:/actions/1", + "selectedUserPageObject": "[jetkvm.eez-project]:/userPages/0", + "selectedUserWidgetObject": "[jetkvm.eez-project]:/userWidgets/-1", + "selectedActionObject": "[jetkvm.eez-project]:/actions/7", + "selectedGlobalVariableObject": "[jetkvm.eez-project]:/variables/globalVariables/0", "selectedStyleObject": "[jetkvm.eez-project]:/lvglStyles/styles/0", "selectedThemeObject": "[jetkvm.eez-project]:/themes/0", "selectedFontObject": "[jetkvm.eez-project]:/fonts/1", @@ -28,7 +30,7 @@ { "type": "border", "selected": 4, - "size": 253.5, + "size": 113.5, "location": "right", "children": [ { @@ -122,13 +124,13 @@ { "type": "row", "id": "#3ab81c80-448e-41ff-9159-e5a7ecb1936c", - "weight": 20.250356691846424, + "weight": 25.73707052518943, "children": [ { "type": "tabset", "id": "#2e3d9a08-c69c-42b5-b434-525109f2a5a7", "weight": 1, - "selected": 2, + "selected": 1, "enableClose": false, "children": [ { @@ -139,14 +141,6 @@ "enableClose": false, "icon": "svg:pages" }, - { - "type": "tab", - "id": "WIDGETS", - "name": "User Widgets", - "component": "widgets", - "enableClose": false, - "icon": "svg:user_widgets" - }, { "type": "tab", "id": "ACTIONS", @@ -154,6 +148,14 @@ "component": "actions", "enableClose": false, "icon": "material:code" + }, + { + "type": "tab", + "id": "WIDGETS", + "name": "User Widgets", + "component": "widgets", + "enableClose": false, + "icon": "svg:user_widgets" } ] }, @@ -194,22 +196,44 @@ { "type": "tabset", "id": "EDITORS", - "weight": 63.667074907133006, - "selected": 3, + "weight": 49.31058517127421, + "selected": 1, "enableDeleteWhenEmpty": false, "enableClose": false, "children": [ { "type": "tab", - "id": "#b444e818-4663-4332-ab40-a34acb670c8c", - "name": "HomeScreen", + "id": "#467ae6a9-0f08-4392-a580-25f8916524e4", + "name": "BootScreen", "component": "editor", "config": { - "objectPath": "[jetkvm.eez-project]:/userPages/1", + "objectPath": "[jetkvm.eez-project]:/userPages/0", "permanent": false }, "icon": "svg:page" }, + { + "type": "tab", + "id": "#d1704ae1-993d-4a7d-bade-0903bb61e9c6", + "name": "AboutScreen", + "component": "editor", + "config": { + "objectPath": "[jetkvm.eez-project]:/userPages/5", + "permanent": true + }, + "icon": "svg:page" + }, + { + "type": "tab", + "id": "#b444e818-4663-4332-ab40-a34acb670c8c", + "name": "MenuAdvancedScreen", + "component": "editor", + "config": { + "objectPath": "[jetkvm.eez-project]:/userPages/4", + "permanent": true + }, + "icon": "svg:page" + }, { "type": "tab", "id": "#f8258cf3-e12a-4be9-8021-33199674dbe6", @@ -221,17 +245,6 @@ }, "icon": "svg:page" }, - { - "type": "tab", - "id": "#ab5bf7de-d982-416b-b26b-8fffecd56449", - "name": "FontBook16", - "component": "editor", - "config": { - "objectPath": "[jetkvm.eez-project]:/fonts/1", - "permanent": false - }, - "icon": "material:font_download" - }, { "type": "tab", "id": "#5dcfc8a4-36a7-4dea-a0cc-8dbeb4aab914", @@ -250,7 +263,7 @@ { "type": "row", "id": "#ee319cf9-6145-49e4-b40e-1d999be897c8", - "weight": 16.082568401020577, + "weight": 24.95234430353635, "children": [ { "type": "tabset", @@ -1077,12 +1090,12 @@ "0": { "0": { "0": { - "1": {} + "1": { + "0": {} + } }, "1": { - "0": { - "$selected": true - } + "0": {} }, "2": {}, "3": { @@ -1131,7 +1144,8 @@ "2": {}, "3": {}, "4": { - "0": {} + "0": {}, + "$selected": true } } } @@ -1151,6 +1165,107 @@ "secondToPx": 200, "scrollLeft": 0 } + }, + "[jetkvm.eez-project]:/userPages/3[flow-state]": { + "selection": { + "0": { + "0": { + "0": { + "0": { + "$selected": true + } + }, + "1": { + "0": { + "0": {}, + "1": {}, + "2": {}, + "3": {} + } + } + } + } + }, + "transform": { + "translate": { + "x": -150, + "y": -120 + }, + "scale": 1 + }, + "timeline": { + "isEditorActive": false, + "position": 0, + "secondToPx": 200, + "scrollLeft": 0 + } + }, + "[jetkvm.eez-project]:/userPages/4[flow-state]": { + "selection": {}, + "transform": { + "translate": { + "x": -150, + "y": -120 + }, + "scale": 1 + }, + "timeline": { + "isEditorActive": false, + "position": 0, + "secondToPx": 200, + "scrollLeft": 0 + } + }, + "[jetkvm.eez-project]:/userPages/5[flow-state]": { + "selection": { + "0": { + "0": { + "0": { + "0": {} + }, + "1": { + "0": { + "0": {}, + "1": {}, + "2": {}, + "3": {}, + "4": {}, + "5": {}, + "6": {} + } + } + } + } + }, + "transform": { + "translate": { + "x": -150, + "y": -120 + }, + "scale": 1 + }, + "timeline": { + "isEditorActive": false, + "position": 0, + "secondToPx": 200, + "scrollLeft": 0 + } + }, + "[jetkvm.eez-project]:/userWidgets/0[flow-state]": { + "selection": {}, + "transform": { + "translate": { + "x": -150, + "y": -120 + }, + "scale": 1 + }, + "timeline": { + "isEditorActive": false, + "position": 0, + "secondToPx": 200, + "scrollLeft": 0 + } } }, "activeOutputSection": 0, @@ -1170,7 +1285,9 @@ "lvglExpandedPropertiesGroup": [ "POSITION AND SIZE", "PADDING", - "MARGIN" + "MARGIN", + "TEXT", + "BACKGROUND" ], "showInactiveFlowsInDebugger": true, "globalFlowZoom": true,