ra8-firmware
0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
ra8_widget_nav_bar.h
Go to the documentation of this file.
1
24
25
#pragma once
26
27
#ifdef __cplusplus
28
extern
"C"
{
29
#endif
30
31
#include <stdint.h>
32
33
#include "
ra8_err.h
"
34
#include "
ra8_widget.h
"
35
66
typedef
struct
ra8_widget_nav_bar
{
67
const
ra8_widget_paint_t
*
paint
;
68
const
char
*
const
*
items
;
70
void (*
on_select
)(
struct
ra8_widget
* w, uint16_t index);
71
uint32_t
bg
;
72
uint32_t
fg_active
;
73
uint32_t
fg_muted
;
74
uint16_t
count
;
75
uint16_t
active
;
76
uint16_t
selected
;
77
}
ra8_widget_nav_bar_t
;
78
99
const
ra8_widget_vtable_t
*
ra8_widget_nav_bar_vtable
(
void
);
100
126
[[nodiscard]]
ra8_err_t
ra8_widget_nav_bar_init
(
ra8_widget_t
* w,
ra8_widget_nav_bar_t
* nav);
127
128
#ifdef __cplusplus
129
}
130
#endif
ra8_err.h
Error Code Definitions for ra8-firmware.
ra8_err_t
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
Definition
ra8_err.h:546
ra8_widget.h
Zero-heap composable widget layer (dwm-style) over ra8_box + ra8_ui.
ra8_widget_nav_bar_vtable
const ra8_widget_vtable_t * ra8_widget_nav_bar_vtable(void)
Return the shared vtable backing every navigation-strip widget.
Definition
ra8_widget_nav_bar.c:226
ra8_widget_nav_bar_init
ra8_err_t ra8_widget_nav_bar_init(ra8_widget_t *w, ra8_widget_nav_bar_t *nav)
Bind a widget instance to a navigation strip.
Definition
ra8_widget_nav_bar.c:231
ra8_widget_nav_bar_t
An equal-cell navigation strip: N labels, one active, each tappable.
ra8_widget_nav_bar
Definition
ra8_widget_nav_bar.h:66
ra8_widget_nav_bar::selected
uint16_t selected
Last-tapped item index (observable).
Definition
ra8_widget_nav_bar.h:76
ra8_widget_nav_bar::bg
uint32_t bg
Strip background colour, 0xRRGGBB.
Definition
ra8_widget_nav_bar.h:71
ra8_widget_nav_bar::count
uint16_t count
Number of items / cells.
Definition
ra8_widget_nav_bar.h:74
ra8_widget_nav_bar::active
uint16_t active
Highlighted item index.
Definition
ra8_widget_nav_bar.h:75
ra8_widget_nav_bar::paint
const ra8_widget_paint_t * paint
Draw backend (NULL -> draws nothing).
Definition
ra8_widget_nav_bar.h:67
ra8_widget_nav_bar::items
const char *const * items
Array of count label strings.
Definition
ra8_widget_nav_bar.h:68
ra8_widget_nav_bar::fg_active
uint32_t fg_active
Active-item text colour, 0xRRGGBB.
Definition
ra8_widget_nav_bar.h:72
ra8_widget_nav_bar::fg_muted
uint32_t fg_muted
Inactive-item text colour, 0xRRGGBB.
Definition
ra8_widget_nav_bar.h:73
ra8_widget_nav_bar::on_select
void(* on_select)(struct ra8_widget *w, uint16_t index)
Tap callback (opt/NULL).
Definition
ra8_widget_nav_bar.h:70
ra8_widget_paint_t
Drawing backend the concrete leaf widgets paint through (a DI seam).
ra8_widget_t
One widget instance (caller-owned, no allocation).
ra8_widget_vtable_t
Behaviour table shared by all widgets of one kind.
Definition
ra8_widget.h:121
ra8_widget
Definition
ra8_widget.h:159
libs
ra8_widget
inc
ra8_widget_nav_bar.h
Generated by
1.16.1