aboutsummaryrefslogtreecommitdiff
path: root/include/expo.h
diff options
context:
space:
mode:
authorSimon Glass2023-06-01 10:23:02 -0600
committerTom Rini2023-07-14 12:54:51 -0400
commita0874dc4ac7153f49f72c3fb818422d940ecbfea (patch)
tree301951243204c9654b3c85dc4b85db985d1e2e28 /include/expo.h
parent82cafee133ee5c087449761988c096fc26a17cf6 (diff)
expo: Add a configuration editor
Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include/expo.h')
-rw-r--r--include/expo.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/include/expo.h b/include/expo.h
index 9fec4d0cd84..0b1d944a169 100644
--- a/include/expo.h
+++ b/include/expo.h
@@ -11,6 +11,7 @@
#include <linux/list.h>
struct udevice;
+struct video_priv;
/**
* enum expoact_type - types of actions reported by the expo
@@ -379,6 +380,14 @@ int expo_calc_dims(struct expo *exp);
int expo_set_scene_id(struct expo *exp, uint scene_id);
/**
+ * expo_first_scene_id() - Get the ID of the first scene
+ *
+ * @exp: Expo to check
+ * Returns: Scene ID of first scene, or -ENOENT if there are no scenes
+ */
+int expo_first_scene_id(struct expo *exp);
+
+/**
* expo_render() - render the expo on the display / console
*
* @exp: Expo to render
@@ -667,4 +676,24 @@ int expo_apply_theme(struct expo *exp, ofnode node);
*/
int expo_build(ofnode root, struct expo **expp);
+/**
+ * cedit_arange() - Arrange objects in a configuration-editor scene
+ *
+ * @exp: Expo to update
+ * @vid_priv: Private info of the video device
+ * @scene_id: scene ID to arrange
+ * Returns: 0 if OK, -ve on error
+ */
+int cedit_arange(struct expo *exp, struct video_priv *vid_priv, uint scene_id);
+
+/**
+ * cedit_run() - Run a configuration editor
+ *
+ * This accepts input until the user quits with Escape
+ *
+ * @exp: Expo to use
+ * Returns: 0 if OK, -ve on error
+ */
+int cedit_run(struct expo *exp);
+
#endif /*__SCENE_H */