acid-drop- Hacking the planet from a LilyGo T-Deck using custom firmware |
git clone git://git.acid.vegas/acid-drop.git |
Log | Files | Refs | Archive | README | LICENSE |
lv_theme_mono.c (18632B)
1 /** 2 * @file lv_theme_mono.c 3 * 4 */ 5 6 /********************* 7 * INCLUDES 8 *********************/ 9 #include "../../../lvgl.h" 10 11 #if LV_USE_THEME_MONO 12 13 #include "lv_theme_mono.h" 14 #include "../../../misc/lv_gc.h" 15 16 /********************* 17 * DEFINES 18 *********************/ 19 20 #define COLOR_FG dark_bg ? lv_color_white() : lv_color_black() 21 #define COLOR_BG dark_bg ? lv_color_black() : lv_color_white() 22 23 #define BORDER_W_NORMAL 1 24 #define BORDER_W_PR 3 25 #define BORDER_W_DIS 0 26 #define BORDER_W_FOCUS 1 27 #define BORDER_W_EDIT 2 28 #define PAD_DEF 4 29 30 /********************** 31 * TYPEDEFS 32 **********************/ 33 typedef struct { 34 lv_style_t scr; 35 lv_style_t card; 36 lv_style_t scrollbar; 37 lv_style_t btn; 38 lv_style_t pr; 39 lv_style_t inv; 40 lv_style_t disabled; 41 lv_style_t focus; 42 lv_style_t edit; 43 lv_style_t pad_gap; 44 lv_style_t pad_zero; 45 lv_style_t no_radius; 46 lv_style_t radius_circle; 47 lv_style_t large_border; 48 lv_style_t large_line_space; 49 lv_style_t underline; 50 #if LV_USE_TEXTAREA 51 lv_style_t ta_cursor; 52 #endif 53 } my_theme_styles_t; 54 55 56 /********************** 57 * STATIC PROTOTYPES 58 **********************/ 59 static void style_init_reset(lv_style_t * style); 60 static void theme_apply(lv_theme_t * th, lv_obj_t * obj); 61 62 /********************** 63 * STATIC VARIABLES 64 **********************/ 65 static my_theme_styles_t * styles; 66 static lv_theme_t theme; 67 static bool inited; 68 69 /********************** 70 * MACROS 71 **********************/ 72 73 /********************** 74 * STATIC FUNCTIONS 75 **********************/ 76 77 static void style_init(bool dark_bg, const lv_font_t * font) 78 { 79 style_init_reset(&styles->scrollbar); 80 lv_style_set_bg_opa(&styles->scrollbar, LV_OPA_COVER); 81 lv_style_set_bg_color(&styles->scrollbar, COLOR_FG); 82 lv_style_set_width(&styles->scrollbar, PAD_DEF); 83 84 style_init_reset(&styles->scr); 85 lv_style_set_bg_opa(&styles->scr, LV_OPA_COVER); 86 lv_style_set_bg_color(&styles->scr, COLOR_BG); 87 lv_style_set_text_color(&styles->scr, COLOR_FG); 88 lv_style_set_pad_row(&styles->scr, PAD_DEF); 89 lv_style_set_pad_column(&styles->scr, PAD_DEF); 90 lv_style_set_text_font(&styles->scr, font); 91 92 style_init_reset(&styles->card); 93 lv_style_set_bg_opa(&styles->card, LV_OPA_COVER); 94 lv_style_set_bg_color(&styles->card, COLOR_BG); 95 lv_style_set_border_color(&styles->card, COLOR_FG); 96 lv_style_set_radius(&styles->card, 2); 97 lv_style_set_border_width(&styles->card, BORDER_W_NORMAL); 98 lv_style_set_pad_all(&styles->card, PAD_DEF); 99 lv_style_set_pad_gap(&styles->card, PAD_DEF); 100 lv_style_set_text_color(&styles->card, COLOR_FG); 101 lv_style_set_line_width(&styles->card, 2); 102 lv_style_set_line_color(&styles->card, COLOR_FG); 103 lv_style_set_arc_width(&styles->card, 2); 104 lv_style_set_arc_color(&styles->card, COLOR_FG); 105 lv_style_set_outline_color(&styles->card, COLOR_FG); 106 lv_style_set_anim_time(&styles->card, 300); 107 108 style_init_reset(&styles->pr); 109 lv_style_set_border_width(&styles->pr, BORDER_W_PR); 110 111 style_init_reset(&styles->inv); 112 lv_style_set_bg_opa(&styles->inv, LV_OPA_COVER); 113 lv_style_set_bg_color(&styles->inv, COLOR_FG); 114 lv_style_set_border_color(&styles->inv, COLOR_BG); 115 lv_style_set_line_color(&styles->inv, COLOR_BG); 116 lv_style_set_arc_color(&styles->inv, COLOR_BG); 117 lv_style_set_text_color(&styles->inv, COLOR_BG); 118 lv_style_set_outline_color(&styles->inv, COLOR_BG); 119 120 style_init_reset(&styles->disabled); 121 lv_style_set_border_width(&styles->disabled, BORDER_W_DIS); 122 123 style_init_reset(&styles->focus); 124 lv_style_set_outline_width(&styles->focus, 1); 125 lv_style_set_outline_pad(&styles->focus, BORDER_W_FOCUS); 126 127 style_init_reset(&styles->edit); 128 lv_style_set_outline_width(&styles->edit, BORDER_W_EDIT); 129 130 style_init_reset(&styles->large_border); 131 lv_style_set_border_width(&styles->large_border, BORDER_W_EDIT); 132 133 style_init_reset(&styles->pad_gap); 134 lv_style_set_pad_gap(&styles->pad_gap, PAD_DEF); 135 136 style_init_reset(&styles->pad_zero); 137 lv_style_set_pad_all(&styles->pad_zero, 0); 138 lv_style_set_pad_gap(&styles->pad_zero, 0); 139 140 style_init_reset(&styles->no_radius); 141 lv_style_set_radius(&styles->no_radius, 0); 142 143 style_init_reset(&styles->radius_circle); 144 lv_style_set_radius(&styles->radius_circle, LV_RADIUS_CIRCLE); 145 146 style_init_reset(&styles->large_line_space); 147 lv_style_set_text_line_space(&styles->large_line_space, 6); 148 149 style_init_reset(&styles->underline); 150 lv_style_set_text_decor(&styles->underline, LV_TEXT_DECOR_UNDERLINE); 151 152 #if LV_USE_TEXTAREA 153 style_init_reset(&styles->ta_cursor); 154 lv_style_set_border_side(&styles->ta_cursor, LV_BORDER_SIDE_LEFT); 155 lv_style_set_border_color(&styles->ta_cursor, COLOR_FG); 156 lv_style_set_border_width(&styles->ta_cursor, 2); 157 lv_style_set_bg_opa(&styles->ta_cursor, LV_OPA_TRANSP); 158 lv_style_set_anim_time(&styles->ta_cursor, 500); 159 #endif 160 } 161 162 163 /********************** 164 * GLOBAL FUNCTIONS 165 **********************/ 166 167 bool lv_theme_mono_is_inited(void) 168 { 169 return LV_GC_ROOT(_lv_theme_default_styles) == NULL ? false : true; 170 } 171 172 lv_theme_t * lv_theme_mono_init(lv_disp_t * disp, bool dark_bg, const lv_font_t * font) 173 { 174 175 /*This trick is required only to avoid the garbage collection of 176 *styles' data if LVGL is used in a binding (e.g. Micropython) 177 *In a general case styles could be in simple `static lv_style_t my_style...` variables*/ 178 if(!inited) { 179 inited = false; 180 LV_GC_ROOT(_lv_theme_default_styles) = lv_mem_alloc(sizeof(my_theme_styles_t)); 181 styles = (my_theme_styles_t *)LV_GC_ROOT(_lv_theme_default_styles); 182 } 183 184 theme.disp = disp; 185 theme.font_small = LV_FONT_DEFAULT; 186 theme.font_normal = LV_FONT_DEFAULT; 187 theme.font_large = LV_FONT_DEFAULT; 188 theme.apply_cb = theme_apply; 189 190 style_init(dark_bg, font); 191 192 if(disp == NULL || lv_disp_get_theme(disp) == &theme) lv_obj_report_style_change(NULL); 193 194 inited = true; 195 196 return (lv_theme_t *)&theme; 197 } 198 199 200 static void theme_apply(lv_theme_t * th, lv_obj_t * obj) 201 { 202 LV_UNUSED(th); 203 204 if(lv_obj_get_parent(obj) == NULL) { 205 lv_obj_add_style(obj, &styles->scr, 0); 206 lv_obj_add_style(obj, &styles->scrollbar, LV_PART_SCROLLBAR); 207 return; 208 } 209 210 if(lv_obj_check_type(obj, &lv_obj_class)) { 211 #if LV_USE_TABVIEW 212 lv_obj_t * parent = lv_obj_get_parent(obj); 213 /*Tabview content area*/ 214 if(lv_obj_check_type(parent, &lv_tabview_class)) { 215 return; 216 } 217 /*Tabview pages*/ 218 else if(lv_obj_check_type(lv_obj_get_parent(parent), &lv_tabview_class)) { 219 lv_obj_add_style(obj, &styles->card, 0); 220 lv_obj_add_style(obj, &styles->no_radius, 0); 221 lv_obj_add_style(obj, &styles->scrollbar, LV_PART_SCROLLBAR); 222 return; 223 } 224 #endif 225 226 #if LV_USE_WIN 227 /*Header*/ 228 if(lv_obj_get_index(obj) == 0 && lv_obj_check_type(lv_obj_get_parent(obj), &lv_win_class)) { 229 lv_obj_add_style(obj, &styles->card, 0); 230 lv_obj_add_style(obj, &styles->no_radius, 0); 231 return; 232 } 233 /*Content*/ 234 else if(lv_obj_get_index(obj) == 1 && lv_obj_check_type(lv_obj_get_parent(obj), &lv_win_class)) { 235 lv_obj_add_style(obj, &styles->card, 0); 236 lv_obj_add_style(obj, &styles->no_radius, 0); 237 lv_obj_add_style(obj, &styles->scrollbar, LV_PART_SCROLLBAR); 238 return; 239 } 240 #endif 241 lv_obj_add_style(obj, &styles->card, 0); 242 lv_obj_add_style(obj, &styles->scrollbar, LV_PART_SCROLLBAR); 243 } 244 #if LV_USE_BTN 245 else if(lv_obj_check_type(obj, &lv_btn_class)) { 246 lv_obj_add_style(obj, &styles->card, 0); 247 lv_obj_add_style(obj, &styles->pr, LV_STATE_PRESSED); 248 lv_obj_add_style(obj, &styles->inv, LV_STATE_CHECKED); 249 lv_obj_add_style(obj, &styles->disabled, LV_STATE_DISABLED); 250 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 251 lv_obj_add_style(obj, &styles->edit, LV_STATE_EDITED); 252 } 253 #endif 254 255 #if LV_USE_BTNMATRIX 256 else if(lv_obj_check_type(obj, &lv_btnmatrix_class)) { 257 #if LV_USE_MSGBOX 258 if(lv_obj_check_type(lv_obj_get_parent(obj), &lv_msgbox_class)) { 259 lv_obj_add_style(obj, &styles->pad_gap, 0); 260 lv_obj_add_style(obj, &styles->card, LV_PART_ITEMS); 261 lv_obj_add_style(obj, &styles->pr, LV_PART_ITEMS | LV_STATE_PRESSED); 262 lv_obj_add_style(obj, &styles->disabled, LV_PART_ITEMS | LV_STATE_DISABLED); 263 lv_obj_add_style(obj, &styles->underline, LV_PART_ITEMS | LV_STATE_FOCUS_KEY); 264 lv_obj_add_style(obj, &styles->large_border, LV_PART_ITEMS | LV_STATE_FOCUS_KEY); 265 return; 266 } 267 #endif 268 #if LV_USE_TABVIEW 269 if(lv_obj_check_type(lv_obj_get_parent(obj), &lv_tabview_class)) { 270 lv_obj_add_style(obj, &styles->pad_gap, 0); 271 lv_obj_add_style(obj, &styles->card, LV_PART_ITEMS); 272 lv_obj_add_style(obj, &styles->pr, LV_PART_ITEMS | LV_STATE_PRESSED); 273 lv_obj_add_style(obj, &styles->inv, LV_PART_ITEMS | LV_STATE_CHECKED); 274 lv_obj_add_style(obj, &styles->disabled, LV_PART_ITEMS | LV_STATE_DISABLED); 275 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 276 lv_obj_add_style(obj, &styles->underline, LV_PART_ITEMS | LV_STATE_FOCUS_KEY); 277 lv_obj_add_style(obj, &styles->large_border, LV_PART_ITEMS | LV_STATE_FOCUS_KEY); 278 return; 279 } 280 #endif 281 lv_obj_add_style(obj, &styles->card, 0); 282 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 283 lv_obj_add_style(obj, &styles->card, LV_PART_ITEMS); 284 lv_obj_add_style(obj, &styles->pr, LV_PART_ITEMS | LV_STATE_PRESSED); 285 lv_obj_add_style(obj, &styles->inv, LV_PART_ITEMS | LV_STATE_CHECKED); 286 lv_obj_add_style(obj, &styles->disabled, LV_PART_ITEMS | LV_STATE_DISABLED); 287 lv_obj_add_style(obj, &styles->underline, LV_PART_ITEMS | LV_STATE_FOCUS_KEY); 288 lv_obj_add_style(obj, &styles->large_border, LV_PART_ITEMS | LV_STATE_FOCUS_KEY); 289 } 290 #endif 291 292 #if LV_USE_BAR 293 else if(lv_obj_check_type(obj, &lv_bar_class)) { 294 lv_obj_add_style(obj, &styles->card, 0); 295 lv_obj_add_style(obj, &styles->pad_zero, 0); 296 lv_obj_add_style(obj, &styles->inv, LV_PART_INDICATOR); 297 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 298 } 299 #endif 300 301 #if LV_USE_SLIDER 302 else if(lv_obj_check_type(obj, &lv_slider_class)) { 303 lv_obj_add_style(obj, &styles->card, 0); 304 lv_obj_add_style(obj, &styles->pad_zero, 0); 305 lv_obj_add_style(obj, &styles->inv, LV_PART_INDICATOR); 306 lv_obj_add_style(obj, &styles->card, LV_PART_KNOB); 307 lv_obj_add_style(obj, &styles->radius_circle, LV_PART_KNOB); 308 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 309 lv_obj_add_style(obj, &styles->edit, LV_STATE_EDITED); 310 } 311 #endif 312 313 #if LV_USE_TABLE 314 else if(lv_obj_check_type(obj, &lv_table_class)) { 315 lv_obj_add_style(obj, &styles->scrollbar, LV_PART_SCROLLBAR); 316 lv_obj_add_style(obj, &styles->card, LV_PART_ITEMS); 317 lv_obj_add_style(obj, &styles->no_radius, LV_PART_ITEMS); 318 lv_obj_add_style(obj, &styles->pr, LV_PART_ITEMS | LV_STATE_PRESSED); 319 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 320 lv_obj_add_style(obj, &styles->inv, LV_PART_ITEMS | LV_STATE_FOCUS_KEY); 321 lv_obj_add_style(obj, &styles->edit, LV_STATE_EDITED); 322 } 323 #endif 324 325 #if LV_USE_CHECKBOX 326 else if(lv_obj_check_type(obj, &lv_checkbox_class)) { 327 lv_obj_add_style(obj, &styles->pad_gap, LV_PART_MAIN); 328 lv_obj_add_style(obj, &styles->card, LV_PART_INDICATOR); 329 lv_obj_add_style(obj, &styles->disabled, LV_PART_INDICATOR | LV_STATE_DISABLED); 330 lv_obj_add_style(obj, &styles->inv, LV_PART_INDICATOR | LV_STATE_CHECKED); 331 lv_obj_add_style(obj, &styles->pr, LV_PART_INDICATOR | LV_STATE_PRESSED); 332 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 333 lv_obj_add_style(obj, &styles->edit, LV_STATE_EDITED); 334 } 335 #endif 336 337 #if LV_USE_SWITCH 338 else if(lv_obj_check_type(obj, &lv_switch_class)) { 339 lv_obj_add_style(obj, &styles->card, 0); 340 lv_obj_add_style(obj, &styles->radius_circle, 0); 341 lv_obj_add_style(obj, &styles->pad_zero, 0); 342 lv_obj_add_style(obj, &styles->inv, LV_PART_INDICATOR); 343 lv_obj_add_style(obj, &styles->radius_circle, LV_PART_INDICATOR); 344 lv_obj_add_style(obj, &styles->card, LV_PART_KNOB); 345 lv_obj_add_style(obj, &styles->radius_circle, LV_PART_KNOB); 346 lv_obj_add_style(obj, &styles->pad_zero, LV_PART_KNOB); 347 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 348 lv_obj_add_style(obj, &styles->edit, LV_STATE_EDITED); 349 } 350 #endif 351 352 #if LV_USE_CHART 353 else if(lv_obj_check_type(obj, &lv_chart_class)) { 354 lv_obj_add_style(obj, &styles->card, 0); 355 lv_obj_add_style(obj, &styles->scrollbar, LV_PART_SCROLLBAR); 356 lv_obj_add_style(obj, &styles->card, LV_PART_ITEMS); 357 lv_obj_add_style(obj, &styles->card, LV_PART_TICKS); 358 lv_obj_add_style(obj, &styles->card, LV_PART_CURSOR); 359 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 360 } 361 #endif 362 363 #if LV_USE_ROLLER 364 else if(lv_obj_check_type(obj, &lv_roller_class)) { 365 lv_obj_add_style(obj, &styles->card, 0); 366 lv_obj_add_style(obj, &styles->large_line_space, 0); 367 lv_obj_add_style(obj, &styles->inv, LV_PART_SELECTED); 368 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 369 lv_obj_add_style(obj, &styles->edit, LV_STATE_EDITED); 370 } 371 #endif 372 373 #if LV_USE_DROPDOWN 374 else if(lv_obj_check_type(obj, &lv_dropdown_class)) { 375 lv_obj_add_style(obj, &styles->card, 0); 376 lv_obj_add_style(obj, &styles->pr, LV_STATE_PRESSED); 377 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 378 lv_obj_add_style(obj, &styles->edit, LV_STATE_EDITED); 379 } 380 else if(lv_obj_check_type(obj, &lv_dropdownlist_class)) { 381 lv_obj_add_style(obj, &styles->card, 0); 382 lv_obj_add_style(obj, &styles->large_line_space, 0); 383 lv_obj_add_style(obj, &styles->scrollbar, LV_PART_SCROLLBAR); 384 lv_obj_add_style(obj, &styles->inv, LV_PART_SELECTED | LV_STATE_CHECKED); 385 lv_obj_add_style(obj, &styles->pr, LV_PART_SELECTED | LV_STATE_PRESSED); 386 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 387 lv_obj_add_style(obj, &styles->edit, LV_STATE_EDITED); 388 } 389 #endif 390 391 #if LV_USE_ARC 392 else if(lv_obj_check_type(obj, &lv_arc_class)) { 393 lv_obj_add_style(obj, &styles->card, 0); 394 lv_obj_add_style(obj, &styles->inv, LV_PART_INDICATOR); 395 lv_obj_add_style(obj, &styles->pad_zero, LV_PART_INDICATOR); 396 lv_obj_add_style(obj, &styles->card, LV_PART_KNOB); 397 lv_obj_add_style(obj, &styles->radius_circle, LV_PART_KNOB); 398 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 399 lv_obj_add_style(obj, &styles->edit, LV_STATE_EDITED); 400 } 401 #endif 402 403 #if LV_USE_METER 404 else if(lv_obj_check_type(obj, &lv_meter_class)) { 405 lv_obj_add_style(obj, &styles->card, 0); 406 } 407 #endif 408 409 #if LV_USE_TEXTAREA 410 else if(lv_obj_check_type(obj, &lv_textarea_class)) { 411 lv_obj_add_style(obj, &styles->card, 0); 412 lv_obj_add_style(obj, &styles->scrollbar, LV_PART_SCROLLBAR); 413 lv_obj_add_style(obj, &styles->ta_cursor, LV_PART_CURSOR | LV_STATE_FOCUSED); 414 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUSED); 415 lv_obj_add_style(obj, &styles->edit, LV_STATE_EDITED); 416 } 417 #endif 418 419 #if LV_USE_CALENDAR 420 else if(lv_obj_check_type(obj, &lv_calendar_class)) { 421 lv_obj_add_style(obj, &styles->card, 0); 422 lv_obj_add_style(obj, &styles->no_radius, 0); 423 lv_obj_add_style(obj, &styles->pr, LV_PART_ITEMS | LV_STATE_PRESSED); 424 lv_obj_add_style(obj, &styles->disabled, LV_PART_ITEMS | LV_STATE_DISABLED); 425 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 426 lv_obj_add_style(obj, &styles->edit, LV_STATE_EDITED); 427 lv_obj_add_style(obj, &styles->large_border, LV_PART_ITEMS | LV_STATE_FOCUS_KEY); 428 } 429 #endif 430 431 #if LV_USE_KEYBOARD 432 else if(lv_obj_check_type(obj, &lv_keyboard_class)) { 433 lv_obj_add_style(obj, &styles->card, 0); 434 lv_obj_add_style(obj, &styles->card, LV_PART_ITEMS); 435 lv_obj_add_style(obj, &styles->pr, LV_PART_ITEMS | LV_STATE_PRESSED); 436 lv_obj_add_style(obj, &styles->inv, LV_PART_ITEMS | LV_STATE_CHECKED); 437 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 438 lv_obj_add_style(obj, &styles->edit, LV_STATE_EDITED); 439 lv_obj_add_style(obj, &styles->large_border, LV_PART_ITEMS | LV_STATE_EDITED); 440 } 441 #endif 442 #if LV_USE_LIST 443 else if(lv_obj_check_type(obj, &lv_list_class)) { 444 lv_obj_add_style(obj, &styles->card, 0); 445 lv_obj_add_style(obj, &styles->scrollbar, LV_PART_SCROLLBAR); 446 return; 447 } 448 else if(lv_obj_check_type(obj, &lv_list_text_class)) { 449 450 } 451 else if(lv_obj_check_type(obj, &lv_list_btn_class)) { 452 lv_obj_add_style(obj, &styles->card, 0); 453 lv_obj_add_style(obj, &styles->pr, LV_STATE_PRESSED); 454 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 455 lv_obj_add_style(obj, &styles->large_border, LV_STATE_EDITED); 456 457 } 458 #endif 459 #if LV_USE_MSGBOX 460 else if(lv_obj_check_type(obj, &lv_msgbox_class)) { 461 lv_obj_add_style(obj, &styles->card, 0); 462 return; 463 } 464 #endif 465 #if LV_USE_SPINBOX 466 else if(lv_obj_check_type(obj, &lv_spinbox_class)) { 467 lv_obj_add_style(obj, &styles->card, 0); 468 lv_obj_add_style(obj, &styles->inv, LV_PART_CURSOR); 469 lv_obj_add_style(obj, &styles->focus, LV_STATE_FOCUS_KEY); 470 lv_obj_add_style(obj, &styles->edit, LV_STATE_EDITED); 471 } 472 #endif 473 #if LV_USE_TILEVIEW 474 else if(lv_obj_check_type(obj, &lv_tileview_class)) { 475 lv_obj_add_style(obj, &styles->scr, 0); 476 lv_obj_add_style(obj, &styles->scrollbar, LV_PART_SCROLLBAR); 477 } 478 else if(lv_obj_check_type(obj, &lv_tileview_tile_class)) { 479 lv_obj_add_style(obj, &styles->scrollbar, LV_PART_SCROLLBAR); 480 } 481 #endif 482 483 #if LV_USE_LED 484 else if(lv_obj_check_type(obj, &lv_led_class)) { 485 lv_obj_add_style(obj, &styles->card, 0); 486 } 487 #endif 488 } 489 490 /********************** 491 * STATIC FUNCTIONS 492 **********************/ 493 494 static void style_init_reset(lv_style_t * style) 495 { 496 if(inited) { 497 lv_style_reset(style); 498 } 499 else { 500 lv_style_init(style); 501 } 502 } 503 504 #endif