From 642c3c69a69220170e2f68c2bf6c898e6cb5b20b Mon Sep 17 00:00:00 2001 From: Benji Dial Date: Wed, 17 Feb 2021 00:13:06 -0500 Subject: win+space, mkpopup --- src/user/mkpopup/main.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 src/user/mkpopup/main.c (limited to 'src/user/mkpopup/main.c') diff --git a/src/user/mkpopup/main.c b/src/user/mkpopup/main.c new file mode 100644 index 0000000..5b56889 --- /dev/null +++ b/src/user/mkpopup/main.c @@ -0,0 +1,36 @@ +#include + +#include + +#include +#include + +void main(const char *text) { + uint32_t required_new_length = 0; + bool needs_new = false; + for (const char *c = text; c[0]; ++c) { + ++required_new_length; + if ((c[0] == '\\') && (c[1] == 'n')) { + ++c; + needs_new = true; + } + } + + if (needs_new) { + char *new_text = get_block(required_new_length); + const char *ci; + char *co; + for (ci = text, co = new_text; *ci; ++ci, ++co) + if ((ci[0] == '\\') && (ci[1] == 'n')) { + *co = '\n'; + ++ci; + } + else + *co = *ci; + text = new_text; + } + + struct popup p; + info_popup(&p, text, 0x10, 0x07); + make_modal(&p); +} \ No newline at end of file -- cgit v1.2.3