Rendu graphique principal de l’interface Brick sur OLED. Plus de détails...
#include "ui_renderer.h"
#include "drv_display.h"
#include "font.h"
#include "ui_widgets.h"
#include "ui_types.h"
#include "ui_backend.h"
#include "ui_overlay.h"
#include "seq_led_bridge.h"
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
Macros | |
#define | MENU_FRAME_X 32 /* position X du cadre titre */ |
#define | MENU_FRAME_Y 0 /* position Y du cadre titre */ |
#define | MENU_FRAME_W 70 /* largeur du cadre titre */ |
#define | MENU_FRAME_H 12 /* hauteur du cadre titre */ |
Fonctions | |
const ui_state_t * | ui_get_state (void) |
const ui_cart_spec_t * | ui_get_cart (void) |
const ui_menu_spec_t * | ui_resolve_menu (uint8_t bm_index) |
void | ui_draw_frame (const ui_cart_spec_t *cart, const ui_state_t *st) |
Rendu complet d’une frame à partir d’une cart et d’un état. | |
void | ui_render (void) |
Appelle ui_draw_frame() avec la cartouche et l’état actuels. | |
Rendu graphique principal de l’interface Brick sur OLED.
Convertit l’état logique de l’UI (ui_state_t
) en pixels :
Invariants & architecture :
ui_state_t
).ui_backend_get_mode_label()
(ex. "SEQ", "ARP", "KEY+1"). Les overlays peuvent temporairement écraser ce label via le backend.ui_widgets
(switch, icônes par TEXTE, knob).Hiérarchie (respectée) : ui_renderer → ui_widgets → ui_icons → drv_display
#define MENU_FRAME_H 12 /* hauteur du cadre titre */ |
#define MENU_FRAME_W 70 /* largeur du cadre titre */ |
#define MENU_FRAME_X 32 /* position X du cadre titre */ |
#define MENU_FRAME_Y 0 /* position Y du cadre titre */ |
void ui_draw_frame | ( | const ui_cart_spec_t * | cart, |
const ui_state_t * | st | ||
) |
Rendu complet d’une frame à partir d’une cart et d’un état.
cart | Spécification immuable de la cartouche. |
st | État courant UI (indices de menu/page et valeurs). |
const ui_cart_spec_t * ui_get_cart | ( | void | ) |
const ui_state_t * ui_get_state | ( | void | ) |
void ui_render | ( | void | ) |
Appelle ui_draw_frame() avec la cartouche et l’état actuels.
Rendu simplifié : appelle ui_draw_frame()
avec l’état global.
const ui_menu_spec_t * ui_resolve_menu | ( | uint8_t | bm_index | ) |