Dialogs
Messages, single choice, multiple choice, text input.
For the full list see "UI development". Each call below comes with a one-line usage note and an example; signatures come from
Lib/c/vml_ui.h(the authoritative source).
ui_dlg_input(char* title, char* prompt, char* buf, int cap)
Asks for one line of text. The result is written into the buffer you supply.
char buf[64];
ui_dlg_input("Rename", "New name:", buf, 64);
ui_dlg_msg(char* title, char* body, int style)
Shows a message box (pass 0 for style). It blocks until the user dismisses it - perfect for reporting the result when a game ends.
ui_dlg_msg("Game over", "Score 120", 0);
ui_dlg_multi(char* title, char* body, char* opts, int n)
A multiple-choice dialog: opts is the option string, n the number of options. Returns how many were selected.
int n = ui_dlg_multi("Settings", "Which ones?", opts, 3);
ui_dlg_select(char* title, char* body, char* opts, int n, int def)
A single-choice dialog: opts is the option string, n the number of options and def the option selected by default. Returns the selected index (-1 = cancelled).
int r = ui_dlg_select("Game over", "Play again?", opts, 2, 0);