Change of global color during runtime

What do you want to achieve?

GUI has implemented one accent color (a global color) and should allow changing to different accent color.

Instead of having 10 themes with different accent colors, is there a way to change a global color during runtime?

Traced back global theme color in ui_themes.cpp:
const ui_theme_variable_t _ui_theme_color_AccentColor[2] = {0x1191CA, 0x1191CA};

Officially the designer should have full control over the colors and programmers shouldn’t modify colours, that’s why there are const qualifiers in the exported code for the color arrays.
If you want to change the global color for some widget you can set it directly on ‘screen loaded’ event with lv_obj_set_style_text_color or similar functions, or by the ui_object_set_themeable_style_property() to have theme-handling support (followed by a call to ui_theme_set() function). (Calling the _ui_theme_set_variable_styles() function periodically from main loop can even follow changes in the theme/style-variables.)

Sure, designer should be responsible for colors etc.

What if designer wants me to have a roller that changes accent color on every option change?

There are pre-defined and custom states for that in SquareLine Studio in LVGL, with inheritance provided by LVGL. We used that in designs with success. So I think it’s easier if your designer sets ‘USER1’/‘USER2’/etc. state in the Inspector panel, sets the preferred color for that state, and later you can set/clear those states in your code (with lv_obj_add_state() and lv_obj_clear_state() or maybe _ui_state_modify()), bringing in the extra colors for the given special state.