summaryrefslogtreecommitdiff
path: root/apps/plugins/lib/display_text.h
diff options
context:
space:
mode:
authorJohannes Schwarz <ubuntuxer@rockbox.org>2009-06-28 09:48:12 +0000
committerJohannes Schwarz <ubuntuxer@rockbox.org>2009-06-28 09:48:12 +0000
commit8a21372e5bcfddabac0aa05b9dd9e3dc5e85da9b (patch)
tree9e5e3c67cbafd8b4b6806f0b5e777500e6b0135b /apps/plugins/lib/display_text.h
parent41baca7de673d8b3935fa21fb6d6b10722b10b7e (diff)
downloadrockbox-8a21372e5bcfddabac0aa05b9dd9e3dc5e85da9b.zip
rockbox-8a21372e5bcfddabac0aa05b9dd9e3dc5e85da9b.tar.gz
rockbox-8a21372e5bcfddabac0aa05b9dd9e3dc5e85da9b.tar.bz2
rockbox-8a21372e5bcfddabac0aa05b9dd9e3dc5e85da9b.tar.xz
FS#10099: new lib, which displays formatted text on every target; also supports viewport
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21537 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/lib/display_text.h')
-rw-r--r--apps/plugins/lib/display_text.h47
1 files changed, 47 insertions, 0 deletions
diff --git a/apps/plugins/lib/display_text.h b/apps/plugins/lib/display_text.h
new file mode 100644
index 0000000..9f21d23
--- /dev/null
+++ b/apps/plugins/lib/display_text.h
@@ -0,0 +1,47 @@
+/***************************************************************************
+ * __________ __ ___.
+ * Open \______ \ ____ ____ | | _\_ |__ _______ ___
+ * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
+ * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
+ * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
+ * \/ \/ \/ \/ \/
+ * $Id$
+ *
+ * Copyright (C) 2009 Johannes Schwarz
+ * based on Will Robertson code in superdom
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ****************************************************************************/
+#include "plugin.h"
+/*
+ * basic usage:
+ * #define WORDS (sizeof text / sizeof (char*))
+ * char *text[] = {"normal", "centering", "red,underline"};
+ * struct style_text formation[WORDS]={
+ * [1] = { TEXT_CENTER },
+ * [2] = { C_RED|TEXT_UNDERLINE },
+ * };
+ * if (display_text(WORDS, text, formation, NULL))
+ * return PLUGIN_USB_CONNECTED;
+ */
+
+enum ecolor { STANDARD, C_YELLOW, C_RED, C_BLUE, C_GREEN , C_ORANGE };
+#define TEXT_COLOR_MASK 0x00ff
+#define TEXT_CENTER 0x0100
+#define TEXT_UNDERLINE 0x0200
+
+struct style_text {
+ unsigned short flags;
+};
+
+/* style and vp_text is optional.
+ * return true if usb is connected. */
+bool display_text(short words, char** text, struct style_text* style,
+ struct viewport* vp_text);