summaryrefslogtreecommitdiffstats
path: root/src/target/ui-experiment/screen.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/target/ui-experiment/screen.h')
-rw-r--r--src/target/ui-experiment/screen.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/target/ui-experiment/screen.h b/src/target/ui-experiment/screen.h
new file mode 100644
index 00000000..1174d9e7
--- /dev/null
+++ b/src/target/ui-experiment/screen.h
@@ -0,0 +1,21 @@
+
+/**
+ * Screens - full-screen dialogs
+ *
+ * These compose the first level of interaction in the UI.
+ *
+ * There is always exactly one active screen, which is in
+ * control of the entire display on which it is displayed.
+ *
+ * Screen activations are stacked, providing interaction depth.
+ *
+ */
+struct screen {
+ const char *name;
+ void (*on_enter)(void);
+ void (*on_leave)(void);
+ void (*on_render)(void);
+ void (*on_key_press)(void);
+ void (*on_key_release)(void);
+};
+