summaryrefslogtreecommitdiffstats
path: root/ui/ncurses/nc-helpscreen.h
diff options
context:
space:
mode:
authorJeremy Kerr <jk@ozlabs.org>2014-06-24 13:18:03 +0800
committerJeremy Kerr <jk@ozlabs.org>2014-07-28 13:20:34 +0800
commit4e30f260106ac5f7007e213db1d1e54298393290 (patch)
tree1d215a8c2e5895844f486d8b371c731d3b34f83b /ui/ncurses/nc-helpscreen.h
parent494988c501287e03da3becba5c03cbce7c3d9d20 (diff)
downloadtalos-petitboot-4e30f260106ac5f7007e213db1d1e54298393290.tar.gz
talos-petitboot-4e30f260106ac5f7007e213db1d1e54298393290.zip
ui/ncurses: Use a separate type for help text
Because it's initialised statically, help text won't be directly gettext()-ed. Instead, we need to perform the gettext translation at runtime, and pass untranslated strings into the help_screen code. Instead of trusting callers to pass the untranslated strings though, we encapsulate the help text data into struct help_text, so we know we have an unstranslated string. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Diffstat (limited to 'ui/ncurses/nc-helpscreen.h')
-rw-r--r--ui/ncurses/nc-helpscreen.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/ui/ncurses/nc-helpscreen.h b/ui/ncurses/nc-helpscreen.h
index f104411..99b99f7 100644
--- a/ui/ncurses/nc-helpscreen.h
+++ b/ui/ncurses/nc-helpscreen.h
@@ -19,13 +19,24 @@
#define _NC_HELPSCREEN_H
struct help_screen;
+struct cui;
+
+/* Container struct for type-safety; we need to use gettext() before
+ * displaying the untranslated string. */
+struct help_text {
+ const char *text;
+};
+
+#define define_help_text(s) { .text = s }
struct nc_scr *help_screen_scr(struct help_screen *screen);
struct nc_scr *help_screen_return_scr(struct help_screen *screen);
struct help_screen *help_screen_init(struct cui *cui,
struct nc_scr *current_scr,
- const char *title_suffix, const char *text,
+ const char *title_suffix,
+ const struct help_text *text,
void (*on_exit)(struct cui *));
+
#endif /* defined _NC_HELPSCREEN_H */
OpenPOWER on IntegriCloud