summaryrefslogtreecommitdiff
path: root/include/expo.h
diff options
context:
space:
mode:
authorSimon Glass <[email protected]>2025-05-02 08:46:42 -0600
committerSimon Glass <[email protected]>2025-05-30 09:49:32 +0100
commit03f9ce815cbba660bb4c8e7cd28cfc19219631c8 (patch)
treeca2e859d84c856306b5798eca216ef3f2d108a33 /include/expo.h
parentb62a8cfbb6d365c650f64396963becf192b5255a (diff)
expo: Support rendering multiple lines of text
Use the measurement info to write each line of text separately, thus respecting word-wrapping and newlines. Fix up the comment for scene_obj_render() while we are here. Since a lineedit does not support alignment, add a special case to just display the text if there is no measurement. This happens assuming the lineedit is initially empty. Signed-off-by: Simon Glass <[email protected]>
Diffstat (limited to 'include/expo.h')
-rw-r--r--include/expo.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/expo.h b/include/expo.h
index 7c6ab4bf630..a79aa1da74f 100644
--- a/include/expo.h
+++ b/include/expo.h
@@ -8,6 +8,7 @@
#define __EXPO_H
#include <abuf.h>
+#include <alist.h>
#include <dm/ofnode_decl.h>
#include <linux/bitops.h>
#include <linux/list.h>
@@ -296,11 +297,14 @@ struct scene_obj_img {
* @str_id: ID of the text string to display
* @font_name: Name of font (allocated by caller)
* @font_size: Nominal size of font in pixels
+ * @lines: alist of struct vidconsole_mline with a separate record for each
+ * line of text
*/
struct scene_txt_generic {
uint str_id;
const char *font_name;
uint font_size;
+ struct alist lines;
};
/**