diff options
author | jack <0x6A73@pm.me> | 2024-02-18 23:01:25 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-18 23:01:25 -0700 |
commit | db1df185c9f779bc36f85786f87135e03cfafd29 (patch) | |
tree | e57605ff26e13abc785301fa437c564985557124 /keyboards/boardsource/equals/equals.c | |
parent | 9d9cdaaa2d035787b0b50c26f2975695fdbc16f4 (diff) |
Fixup boardsource/equals (#23106)
* initial
* reorder headers
Diffstat (limited to 'keyboards/boardsource/equals/equals.c')
-rw-r--r-- | keyboards/boardsource/equals/equals.c | 46 |
1 files changed, 41 insertions, 5 deletions
diff --git a/keyboards/boardsource/equals/equals.c b/keyboards/boardsource/equals/equals.c index 8eb933e70d..074fa3df3e 100644 --- a/keyboards/boardsource/equals/equals.c +++ b/keyboards/boardsource/equals/equals.c @@ -1,18 +1,54 @@ // Copyright 2023 @boardsource // SPDX-License-Identifier: GPL-2.0-or-later + #include "quantum.h" -__attribute__((weak)) void ui_init(void) {}; -__attribute__((weak)) void ui_task(void) {}; #ifdef QUANTUM_PAINTER_ENABLE +#include "qp.h" +#include "qp_st7735.h" +#include "graphics/thintel15.qff.c" + +static painter_device_t oled; +static painter_font_handle_t font; + +__attribute__((weak)) void ui_init(void) { + oled = qp_st7735_make_spi_device(128, 160, OLED_CS_PIN, OLED_DC_PIN, OLED_RST_PIN, 8, 0); + font = qp_load_font_mem(font_thintel15); + qp_init(oled, QP_ROTATION_0); + qp_rect(oled, 0, 0, 130, 162, 0, 0, 0, true); + qp_rect(oled, 20, 20, 108, 60, 55, 55, 55, true); + qp_rect(oled, 20, 80, 108, 120, 55, 55, 55, true); + qp_flush(oled); +} + +__attribute__((weak)) void ui_task(void) { + static const char *text = "Layer:"; + int16_t width = qp_textwidth(font, text); + qp_drawtext(oled, 20, 140, font, text); + + switch (get_highest_layer(layer_state)) { + case 0: + qp_drawtext(oled, (20 + width), 140, font, "QWERTY"); + break; + case 1: + qp_drawtext(oled, (20 + width), 140, font, "SYMBOL"); + break; + case 2: + qp_drawtext(oled, (20 + width), 140, font, "NUMBER"); + break; + default: + qp_drawtext(oled, (20 + width), 140, font, "_PANIC_"); + break; + } +} + void keyboard_post_init_kb(void) { - // Init the display ui_init(); keyboard_post_init_user(); } void housekeeping_task_kb(void) { - // Draw the display ui_task(); + housekeeping_task_user(); } -#endif //QUANTUM_PAINTER_ENABLE +#endif // QUANTUM_PAINTER_ENABLE |