void lcd_progressbar(uint8_t progress) { lcd_lib_draw_box(3, 38, 124, 46); for(uint8_t n=0; n<progress; n++) { if (n>120) break; uint8_t m = (progress-n-1) % 12; if (m < 5) lcd_lib_draw_vline(4 + n, 40, 40+m); else if (m < 10) lcd_lib_draw_vline(4 + n, 40+m-5, 44); } }
void lcd_progressbar(uint8_t progress) { lcd_lib_draw_box(3, 38, 124, 46); static uint8_t moveContinue=0; for(uint8_t n=0; n<progress; n++) { if (n>120) break; uint8_t m = (progress-n-1+moveContinue) % 12; if (m < 5) lcd_lib_draw_vline(4 + n, 40, 40+m); else if (m < 10) lcd_lib_draw_vline(4 + n, 40+m-5, 44); } moveContinue++; if (moveContinue==12) { moveContinue=0; } }
void lcd_tripple_menu(const char* left, const char* right, const char* bottom) { if (lcd_lib_encoder_pos != ENCODER_NO_SELECTION) { if (lcd_lib_encoder_pos < 0) lcd_lib_encoder_pos += 3*ENCODER_TICKS_PER_MAIN_MENU_ITEM; if (lcd_lib_encoder_pos >= 3*ENCODER_TICKS_PER_MAIN_MENU_ITEM) lcd_lib_encoder_pos -= 3*ENCODER_TICKS_PER_MAIN_MENU_ITEM; } lcd_lib_clear(); lcd_lib_draw_vline(64, 5, 45); lcd_lib_draw_hline(3, 124, 48); if (IS_SELECTED_MAIN(0)) { lcd_lib_draw_box(3+2, 5+2, 64-3-2, 45-2); lcd_lib_set(3+3, 5+3, 64-3-3, 45-3); lcd_lib_clear_string_center_atP(33, 22, left); }else{ lcd_lib_draw_string_center_atP(33, 22, left); } if (IS_SELECTED_MAIN(1)) { lcd_lib_draw_box(64+3+2, 5+2, 125-2, 45-2); lcd_lib_set(64+3+3, 5+3, 125-3, 45-3); lcd_lib_clear_string_center_atP(64 + 33, 22, right); }else{ lcd_lib_draw_string_center_atP(64 + 33, 22, right); } if (bottom != NULL) { if (IS_SELECTED_MAIN(2)) { lcd_lib_draw_box(3+2, 49+2, 125-2, 63-2); lcd_lib_set(3+3, 49+3, 125-3, 63-3); lcd_lib_clear_string_centerP(53, bottom); }else{ lcd_lib_draw_string_centerP(53, bottom); } } }