A modern Music Player Daemon based on Rockbox open source high quality audio player
libadwaita
audio
rust
zig
deno
mpris
rockbox
mpd
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2009 Johannes Schwarz
11 * based on Will Robertson code in superdom
12 *
13 * This program is free software; you can redistribute it and/or
14 * modify it under the terms of the GNU General Public License
15 * as published by the Free Software Foundation; either version 2
16 * of the License, or (at your option) any later version.
17 *
18 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
19 * KIND, either express or implied.
20 *
21 ****************************************************************************/
22#ifndef _DISPLAY_TEXT_H
23#define _DISPLAY_TEXT_H
24
25#include "plugin.h"
26
27/*
28 * basic usage:
29 * char *text[] = {"normal", "centering", "red,underline"};
30 * struct style_text formation[]={
31 * { 1, TEXT_CENTER },
32 * { 2, C_RED|TEXT_UNDERLINE },
33 * LAST_STYLE_ITEM
34 * };
35 * if (display_text(ARRAYLEN(text), text, formation, NULL, true))
36 * return PLUGIN_USB_CONNECTED;
37 */
38
39enum ecolor { STANDARD, C_YELLOW, C_RED, C_BLUE, C_GREEN , C_ORANGE };
40#define TEXT_COLOR_MASK 0x00ff
41#define TEXT_CENTER 0x0100
42#define TEXT_UNDERLINE 0x0200
43#define LAST_STYLE_ITEM { -1, 0 }
44
45struct style_text {
46 unsigned short index;
47 unsigned short flags;
48};
49
50/*
51 * display text.
52 * - words : number of words in text.
53 * - text : array of word to be displayed. use empty string for newline.
54 * - style : (optional) set style of each word. must be sorted by index.
55 * - vp_text : (optional) viewport to display text.
56 * - wait_key : set true to wait button press after all words is displayed.
57 * return true if usb is connected, false otherwise.
58 */
59bool display_text(unsigned short words, char** text, struct style_text* style,
60 struct viewport* vp_text, bool wait_key);
61
62#endif /* _DISPLAY_TEXT_H */