From a2ad1a7a9cd3e608f3fb4e5a694540a9cfef9c69 Mon Sep 17 00:00:00 2001 From: eunhhu Date: Sun, 18 Oct 2026 23:54:06 +0100 Subject: Size to the module what is the module's (Pure 027's 4f-3a): timers grow to its inputs, the focus marks to its views, the accessibility tree's children to their count; a table shows its first VEGA_COLUMNS (64) columns, Vega's own count --- surfaces/vega.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'surfaces/vega.h') diff --git a/surfaces/vega.h b/surfaces/vega.h index 7cf26ed..1ffcd8d 100644 --- a/surfaces/vega.h +++ b/surfaces/vega.h @@ -15,7 +15,8 @@ * - every other number or text view is a field. * A tone says what a value means (lib/vega.aup); each surface decides how it * looks or sounds. Surfaces evaluate only the cells they present. */ -enum { VEGA_PARTS = 64, VEGA_TEXT = 1024 }; +/* The parts a screen shows and the columns a table shows, at most: a surface's own counts (not a module's). */ +enum { VEGA_PARTS = 64, VEGA_COLUMNS = 64, VEGA_TEXT = 1024 }; typedef enum { VEGA_NORMAL, VEGA_MUTED, VEGA_ACCENT, VEGA_GOOD, VEGA_WARNING, VEGA_DANGER, VEGA_TONES } VegaTone; typedef enum { VEGA_FIELD, VEGA_LIST, VEGA_TABLE } VegaKind; @@ -25,7 +26,7 @@ typedef struct { int focus; /* number view with the focused row, or -1 */ int pointer; /* the input pointing at this table's rows (focus = at.position), or -1 */ int label, tone, detail, badge; /* columns, or -1 */ - uint32_t columns[PURE_MODULE_VIEWS]; /* a table's shown columns, in order */ + uint32_t columns[VEGA_COLUMNS]; /* a table's shown columns, in order (its first VEGA_COLUMNS) */ unsigned column_count; } VegaPart; @@ -50,7 +51,7 @@ double vega_clock(void); * at clock (a tick sees the wall clock, vega_now) and gives the * milliseconds until the next, or -1 without timers; ticked says whether * any did. Missed ticks are not made up. */ -typedef struct { double next[PURE_MODULE_INPUTS]; } VegaTimers; +typedef struct { double *next; uint32_t count; } VegaTimers; /* zeroed before its first start; one an input */ void vega_timers_start(VegaTimers *, const PureModule *, double clock); long vega_timers_run(VegaTimers *, PureApp *, double clock, bool *ticked); /* What a module seems to mean but does not meet: a list label that is not -- cgit v1.2.3