Daniel Stenberg | 1c0c861 | 2002-05-17 12:22:24 +0000 | [diff] [blame] | 1 | /*************************************************************************** |
| 2 | * __________ __ ___. |
| 3 | * Open \______ \ ____ ____ | | _\_ |__ _______ ___ |
| 4 | * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / |
| 5 | * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < |
| 6 | * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ |
| 7 | * \/ \/ \/ \/ \/ |
| 8 | * $Id$ |
| 9 | * |
| 10 | * Copyright (C) 2002 Robert E. Hak |
| 11 | * |
Daniel Stenberg | 2acc0ac | 2008-06-28 18:10:04 +0000 | [diff] [blame] | 12 | * This program is free software; you can redistribute it and/or |
| 13 | * modify it under the terms of the GNU General Public License |
| 14 | * as published by the Free Software Foundation; either version 2 |
| 15 | * of the License, or (at your option) any later version. |
Daniel Stenberg | 1c0c861 | 2002-05-17 12:22:24 +0000 | [diff] [blame] | 16 | * |
| 17 | * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY |
| 18 | * KIND, either express or implied. |
| 19 | * |
| 20 | ****************************************************************************/ |
Björn Stenberg | fb00c21 | 2004-05-21 20:08:24 +0000 | [diff] [blame] | 21 | #ifndef _ICONS_H_ |
| 22 | #define _ICONS_H_ |
| 23 | |
Jonathan Gordon | 5599d68 | 2007-02-14 06:58:30 +0000 | [diff] [blame] | 24 | #ifndef PLUGIN |
| 25 | |
Daniel Stenberg | 1c0c861 | 2002-05-17 12:22:24 +0000 | [diff] [blame] | 26 | #include <lcd.h> |
Björn Stenberg | 51b45d5 | 2008-10-15 06:38:51 +0000 | [diff] [blame] | 27 | #include "metadata.h" |
Daniel Stenberg | 1c0c861 | 2002-05-17 12:22:24 +0000 | [diff] [blame] | 28 | |
Dave Chapman | 95538f6 | 2006-02-21 01:23:30 +0000 | [diff] [blame] | 29 | #ifdef HAVE_LCD_BITMAP |
| 30 | |
| 31 | /* External bitmaps */ |
| 32 | |
Björn Stenberg | ac488f8 | 2008-11-03 14:37:50 +0000 | [diff] [blame] | 33 | #include "bitmaps/rockboxlogo.h" |
Dave Chapman | 95538f6 | 2006-02-21 01:23:30 +0000 | [diff] [blame] | 34 | #ifdef HAVE_REMOTE_LCD |
Björn Stenberg | ac488f8 | 2008-11-03 14:37:50 +0000 | [diff] [blame] | 35 | #include "bitmaps/remote_rockboxlogo.h" |
Dave Chapman | 95538f6 | 2006-02-21 01:23:30 +0000 | [diff] [blame] | 36 | #endif |
| 37 | |
Daniel Stenberg | 1c0c861 | 2002-05-17 12:22:24 +0000 | [diff] [blame] | 38 | |
Björn Stenberg | abe11fd | 2002-09-03 15:58:47 +0000 | [diff] [blame] | 39 | /* Symbolic names for icons */ |
| 40 | enum icons_5x8 { |
Kevin Ferrare | f57d022 | 2005-11-22 21:55:05 +0000 | [diff] [blame] | 41 | Icon_Lock_Main, |
| 42 | Icon_Lock_Remote, |
Martin Scarratt | 617b67e | 2006-09-02 17:30:30 +0000 | [diff] [blame] | 43 | Icon_Stereo, |
| 44 | Icon_Mono, |
Martin Scarratt | 183499a | 2006-09-26 11:56:59 +0000 | [diff] [blame] | 45 | #if CONFIG_CODEC != SWCODEC |
| 46 | Icon_q, |
| 47 | #endif |
Kevin Ferrare | f57d022 | 2005-11-22 21:55:05 +0000 | [diff] [blame] | 48 | Icon5x8Last |
Björn Stenberg | abe11fd | 2002-09-03 15:58:47 +0000 | [diff] [blame] | 49 | }; |
| 50 | |
| 51 | enum icons_7x8 { |
| 52 | Icon_Plug, |
Jens Arnold | 97a8049 | 2005-06-23 02:18:29 +0000 | [diff] [blame] | 53 | Icon_USBPlug, |
Björn Stenberg | abe11fd | 2002-09-03 15:58:47 +0000 | [diff] [blame] | 54 | Icon_Mute, |
| 55 | Icon_Play, |
| 56 | Icon_Stop, |
| 57 | Icon_Pause, |
| 58 | Icon_FastForward, |
| 59 | Icon_FastBackward, |
| 60 | Icon_Record, |
| 61 | Icon_RecPause, |
Anton Oleynikov | 2c83634 | 2005-11-19 20:45:32 +0000 | [diff] [blame] | 62 | Icon_Radio, |
| 63 | Icon_Radio_Mute, |
Björn Stenberg | abe11fd | 2002-09-03 15:58:47 +0000 | [diff] [blame] | 64 | Icon_Repeat, |
Björn Stenberg | 7e23c70 | 2002-10-08 10:24:29 +0000 | [diff] [blame] | 65 | Icon_RepeatOne, |
Björn Stenberg | abe11fd | 2002-09-03 15:58:47 +0000 | [diff] [blame] | 66 | Icon_Shuffle, |
Björn Stenberg | 0ad2010 | 2002-09-03 20:47:23 +0000 | [diff] [blame] | 67 | Icon_DownArrow, |
| 68 | Icon_UpArrow, |
Linus Nielsen Feltzing | 0ad617c | 2005-08-21 23:01:12 +0000 | [diff] [blame] | 69 | Icon_RepeatAB, |
Kevin Ferrare | f57d022 | 2005-11-22 21:55:05 +0000 | [diff] [blame] | 70 | Icon7x8Last |
Björn Stenberg | abe11fd | 2002-09-03 15:58:47 +0000 | [diff] [blame] | 71 | }; |
| 72 | |
Michael Sevakis | 0f5cb94 | 2006-11-06 18:07:30 +0000 | [diff] [blame] | 73 | #if CONFIG_CODEC == SWCODEC && defined (HAVE_RECORDING) |
| 74 | #define BM_GLYPH_WIDTH 4 |
| 75 | enum Glyphs_4x8 { |
| 76 | Glyph_4x8_0 = 0, |
| 77 | Glyph_4x8_1, |
| 78 | Glyph_4x8_2, |
| 79 | Glyph_4x8_3, |
| 80 | Glyph_4x8_4, |
| 81 | Glyph_4x8_5, |
| 82 | Glyph_4x8_6, |
| 83 | Glyph_4x8_7, |
| 84 | Glyph_4x8_8, |
| 85 | Glyph_4x8_9, |
| 86 | Glyph_4x8_k, |
| 87 | Glyph_4x8Last |
Martin Scarratt | d7fa569 | 2006-09-12 18:26:27 +0000 | [diff] [blame] | 88 | }; |
Michael Sevakis | 0f5cb94 | 2006-11-06 18:07:30 +0000 | [diff] [blame] | 89 | extern const unsigned char bitmap_glyphs_4x8[Glyph_4x8Last][4]; |
Martin Scarratt | d7fa569 | 2006-09-12 18:26:27 +0000 | [diff] [blame] | 90 | |
Michael Sevakis | 0f5cb94 | 2006-11-06 18:07:30 +0000 | [diff] [blame] | 91 | #define BM_MPA_L3_M_WIDTH 6 |
Björn Stenberg | 51b45d5 | 2008-10-15 06:38:51 +0000 | [diff] [blame] | 92 | |
Michael Sevakis | 0f5cb94 | 2006-11-06 18:07:30 +0000 | [diff] [blame] | 93 | /* This enum is redundant but sort of in keeping with the style */ |
| 94 | enum rec_format_18x8 { |
Michael Sevakis | 0729b92 | 2006-11-24 19:49:04 +0000 | [diff] [blame] | 95 | Format_18x8_AIFF = REC_FORMAT_AIFF, |
Michael Sevakis | 0f5cb94 | 2006-11-06 18:07:30 +0000 | [diff] [blame] | 96 | Format_18x8_MPA_L3 = REC_FORMAT_MPA_L3, |
| 97 | Format_18x8_WAVPACK = REC_FORMAT_WAVPACK, |
| 98 | Format_18x8_PCM_WAV = REC_FORMAT_PCM_WAV, |
| 99 | Format_18x8Last = REC_NUM_FORMATS |
Martin Scarratt | 617b67e | 2006-09-02 17:30:30 +0000 | [diff] [blame] | 100 | }; |
Michael Sevakis | 0f5cb94 | 2006-11-06 18:07:30 +0000 | [diff] [blame] | 101 | extern const unsigned char bitmap_formats_18x8[Format_18x8Last][18]; |
Björn Stenberg | 51b45d5 | 2008-10-15 06:38:51 +0000 | [diff] [blame] | 102 | |
Michael Sevakis | 0f5cb94 | 2006-11-06 18:07:30 +0000 | [diff] [blame] | 103 | #endif /* CONFIG_CODEC == SWCODEC && defined (HAVE_RECORDING) */ |
Magnus Holmgren | 1ecdbcc | 2006-09-12 20:32:06 +0000 | [diff] [blame] | 104 | |
Kevin Ferrare | f57d022 | 2005-11-22 21:55:05 +0000 | [diff] [blame] | 105 | extern const unsigned char bitmap_icons_5x8[Icon5x8Last][5]; |
Kevin Ferrare | f57d022 | 2005-11-22 21:55:05 +0000 | [diff] [blame] | 106 | extern const unsigned char bitmap_icons_7x8[Icon7x8Last][7]; |
Jörg Hohensohn | f5e7a76 | 2005-03-01 22:55:52 +0000 | [diff] [blame] | 107 | extern const unsigned char bitmap_icon_disk[]; |
Daniel Stenberg | 1c0c861 | 2002-05-17 12:22:24 +0000 | [diff] [blame] | 108 | |
Markus Braun | de8fbf0 | 2002-08-07 10:35:26 +0000 | [diff] [blame] | 109 | #define STATUSBAR_X_POS 0 |
Robert Hak | 648ccc8 | 2003-02-26 21:39:13 +0000 | [diff] [blame] | 110 | #define STATUSBAR_Y_POS 0 /* MUST be a multiple of 8 */ |
Markus Braun | de8fbf0 | 2002-08-07 10:35:26 +0000 | [diff] [blame] | 111 | #define STATUSBAR_HEIGHT 8 |
| 112 | #define STATUSBAR_WIDTH LCD_WIDTH |
| 113 | #define ICON_BATTERY_X_POS 0 |
| 114 | #define ICON_BATTERY_WIDTH 18 |
| 115 | #define ICON_PLUG_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+2 |
| 116 | #define ICON_PLUG_WIDTH 7 |
| 117 | #define ICON_VOLUME_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+ICON_PLUG_WIDTH+2+2 |
Markus Braun | 11d208c | 2002-08-20 20:32:08 +0000 | [diff] [blame] | 118 | #define ICON_VOLUME_WIDTH 16 |
Markus Braun | de8fbf0 | 2002-08-07 10:35:26 +0000 | [diff] [blame] | 119 | #define ICON_PLAY_STATE_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+ICON_PLUG_WIDTH+ICON_VOLUME_WIDTH+2+2+2 |
| 120 | #define ICON_PLAY_STATE_WIDTH 7 |
| 121 | #define ICON_PLAY_MODE_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+ICON_PLUG_WIDTH+ICON_VOLUME_WIDTH+ICON_PLAY_STATE_WIDTH+2+2+2+2 |
| 122 | #define ICON_PLAY_MODE_WIDTH 7 |
| 123 | #define ICON_SHUFFLE_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+ICON_PLUG_WIDTH+ICON_VOLUME_WIDTH+ICON_PLAY_STATE_WIDTH+ICON_PLAY_MODE_WIDTH+2+2+2+2+2 |
| 124 | #define ICON_SHUFFLE_WIDTH 7 |
| 125 | #define LOCK_X_POS STATUSBAR_X_POS+ICON_BATTERY_WIDTH+ICON_PLUG_WIDTH+ICON_VOLUME_WIDTH+ICON_PLAY_STATE_WIDTH+ICON_PLAY_MODE_WIDTH+ICON_SHUFFLE_WIDTH+2+2+2+2+2+2 |
| 126 | #define LOCK_WIDTH 5 |
Jörg Hohensohn | f5e7a76 | 2005-03-01 22:55:52 +0000 | [diff] [blame] | 127 | #define ICON_DISK_WIDTH 12 |
Jörg Hohensohn | c76fbf7 | 2005-02-19 00:34:15 +0000 | [diff] [blame] | 128 | #define ICON_DISK_X_POS STATUSBAR_WIDTH-ICON_DISK_WIDTH |
Markus Braun | 11d208c | 2002-08-20 20:32:08 +0000 | [diff] [blame] | 129 | #define TIME_X_END STATUSBAR_WIDTH-1 |
Markus Braun | de8fbf0 | 2002-08-07 10:35:26 +0000 | [diff] [blame] | 130 | |
Daniel Stenberg | 1c0c861 | 2002-05-17 12:22:24 +0000 | [diff] [blame] | 131 | #endif /* End HAVE_LCD_BITMAP */ |
Jonathan Gordon | 5599d68 | 2007-02-14 06:58:30 +0000 | [diff] [blame] | 132 | #endif /* PLUGIN */ |
Björn Stenberg | fb00c21 | 2004-05-21 20:08:24 +0000 | [diff] [blame] | 133 | #endif /* _ICONS_H_ */ |