diff options
Diffstat (limited to 'apps/player/icons.c')
-rw-r--r-- | apps/player/icons.c | 89 |
1 files changed, 87 insertions, 2 deletions
diff --git a/apps/player/icons.c b/apps/player/icons.c index 3f9b7c1547..6717eb12bd 100644 --- a/apps/player/icons.c +++ b/apps/player/icons.c | |||
@@ -7,7 +7,7 @@ | |||
7 | * \/ \/ \/ \/ \/ | 7 | * \/ \/ \/ \/ \/ |
8 | * $Id$ | 8 | * $Id$ |
9 | * | 9 | * |
10 | * Copyright (C) 2002 Justin Heiner | 10 | * Copyright (C) 2007 Jonathan Gordon |
11 | * | 11 | * |
12 | * All files in this archive are subject to the GNU General Public License. | 12 | * All files in this archive are subject to the GNU General Public License. |
13 | * See the file COPYING in the source tree root for full license agreement. | 13 | * See the file COPYING in the source tree root for full license agreement. |
@@ -17,8 +17,93 @@ | |||
17 | * | 17 | * |
18 | ****************************************************************************/ | 18 | ****************************************************************************/ |
19 | #include "lcd.h" | 19 | #include "lcd.h" |
20 | #include "icons.h" | 20 | #include "icon.h" |
21 | 21 | ||
22 | #ifdef HAVE_LCD_CHARCELLS | 22 | #ifdef HAVE_LCD_CHARCELLS |
23 | /* For the moment, charcell cant load custom maps... */ | ||
24 | |||
25 | enum old_values{ | ||
26 | old_Icon_Queued = 'Q', | ||
27 | old_Icon_Moving = 'M', | ||
28 | old_Icon_Unknown = 0xe100, | ||
29 | old_Icon_Bookmark, | ||
30 | old_Icon_Plugin, | ||
31 | old_Icon_Folder, | ||
32 | old_Icon_Firmware, | ||
33 | old_Icon_Language, | ||
34 | old_Icon_Audio, | ||
35 | old_Icon_Wps, | ||
36 | old_Icon_Playlist, | ||
37 | old_Icon_Text, | ||
38 | old_Icon_Config, | ||
39 | }; | ||
40 | |||
41 | static const long icon_unknown = old_Icon_Unknown; | ||
42 | static const long icons[Icon_Last_Themeable] = { | ||
43 | [0 ... Icon_Last_Themeable-1] = 0, | ||
44 | |||
45 | [Icon_Audio] = old_Icon_Audio, | ||
46 | [Icon_Folder] = old_Icon_Folder, | ||
47 | [Icon_Playlist] = old_Icon_Playlist, | ||
48 | [Icon_Cursor] = CURSOR_CHAR, | ||
49 | [Icon_Wps] = old_Icon_Wps, | ||
50 | [Icon_Firmware] = old_Icon_Firmware, | ||
51 | [Icon_Language] = old_Icon_Language, | ||
52 | [Icon_Config] = old_Icon_Config, | ||
53 | [Icon_Plugin] = old_Icon_Plugin, | ||
54 | [Icon_Bookmark] = old_Icon_Bookmark, | ||
55 | [Icon_Queued] = 'Q', | ||
56 | [Icon_Moving] = 'M', | ||
57 | |||
58 | /* | ||
59 | [Icon_Keyboard] = , | ||
60 | [Icon_Font] = , | ||
61 | [Icon_Preset] = , | ||
62 | [Icon_Reverse_Cursor] = , | ||
63 | [Icon_Questionmark] = , | ||
64 | [Icon_Menu_setting] = , | ||
65 | [Icon_Menu_functioncall] = , | ||
66 | [Icon_Submenu] = , | ||
67 | [Icon_Submenu_Entered] = , | ||
68 | [Icon_Recording] = , | ||
69 | [Icon_Voice] = , | ||
70 | [Icon_General_settings_menu] = , | ||
71 | [Icon_System_menu] = , | ||
72 | [Icon_Playback_menu] = , | ||
73 | [Icon_Display_menu] = , | ||
74 | [Icon_Remote_Display_menu] = , | ||
75 | [Icon_Radio_screen] = , | ||
76 | [Icon_file_view_menu] = , | ||
77 | [Icon_EQ] = , | ||
78 | [Icon_Rockbox] = , | ||
79 | */ | ||
80 | }; | ||
81 | |||
82 | /* as above, but x,y are letter position, NOT PIXEL */ | ||
83 | extern void screen_put_iconxy(struct screen * screen, | ||
84 | int x, int y, enum themable_icons icon) | ||
85 | { | ||
86 | if (icon == -1) | ||
87 | screen->putc(x, y, icon_unknown); | ||
88 | else if ((icon==Icon_NOICON) && (icons[icon]!=0)) | ||
89 | screen->putc(x, y, ' '); | ||
90 | else | ||
91 | screen->putc(x, y, icons[icon]); | ||
92 | } | ||
93 | |||
94 | void screen_put_cursorxy(struct screen * display, int x, int y, bool on) | ||
95 | { | ||
96 | screen_put_iconxy(display, x, y, on?Icon_Cursor:-1); | ||
97 | |||
98 | } | ||
99 | |||
100 | void icons_init(void) | ||
101 | { | ||
102 | } | ||
103 | |||
104 | |||
105 | |||
106 | |||
107 | |||
23 | 108 | ||
24 | #endif | 109 | #endif |