RancioLib
interfaccia menu testuale minimale
Struttura
un menu e' un albero, terminato da foglie
la struttura del menu e' definita con un array di strutture C:
struct node { char node_name[16]; // nome uint16_t parent_node_id; // id del padre uint16_t node_type_id; // id del tipo };
i tipi dei dati sono definiti in un array di strutture C:
struct type { uint32_t value_min; // valore minimo uint32_t value_max; // valore massimo uint32_t enum[16]; // valori predeterminati uint32_t step[16]; // incrementi possibili }
Input
la navigazione richiede ALMENO 6 tasti:
- UP seleziona il fratello precedente
- DOWN seleziona il fratello sucessivo
- LEFT decrementa il valore
- RIGHT incrementa il valore
- IN entra nel nodo selezionato
- OUT entra nel padre
Output
gli elementi grafici eventualmente visualizzabili sono:
- nome del nodo padre
- nome del nodo fratello precedente
- nome del nodo corrente necessario se foglia
- nome del nodo selezionato necessario se non-foglia
- nome del nodo fratello successivo
- valore del nodo (se foglia) necessario