1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-11-01 10:56:02 +01:00

expo: Draw popup menus in both opened and closed states

When a popup menu is closed it shows only the selected item. When it is
open it shows a background and all items, with a highlight that can be
moved between the items.

Add the drawing logic for this.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2023-06-01 10:22:57 -06:00
committed by Tom Rini
parent 3f33b9c722
commit 756c9559e6
4 changed files with 130 additions and 2 deletions

View File

@@ -412,6 +412,36 @@ int scene_new(struct expo *exp, const char *name, uint id, struct scene **scnp);
*/
struct scene *expo_lookup_scene_id(struct expo *exp, uint scene_id);
/**
* scene_highlight_first() - Highlight the first item in a scene
*
* This highlights the first item, so that the user can see that it is pointed
* to
*
* @scn: Scene to update
*/
void scene_highlight_first(struct scene *scn);
/**
* scene_set_highlight_id() - Set the object which is highlighted
*
* Sets a new object to highlight in the scene
*
* @scn: Scene to update
* @id: ID of object to highlight
*/
void scene_set_highlight_id(struct scene *scn, uint id);
/**
* scene_set_open() - Set whether an item is open or not
*
* @scn: Scene to update
* @id: ID of object to update
* @open: true to open the object, false to close it
* Returns: 0 if OK, -ENOENT if @id is invalid
*/
int scene_set_open(struct scene *scn, uint id, bool open);
/**
* scene_title_set() - set the scene title
*