diff options
Diffstat (limited to 'apps/wps.c')
-rw-r--r-- | apps/wps.c | 61 |
1 files changed, 47 insertions, 14 deletions
diff --git a/apps/wps.c b/apps/wps.c index 438152cf8e..d2c3676d6f 100644 --- a/apps/wps.c +++ b/apps/wps.c | |||
@@ -50,9 +50,16 @@ | |||
50 | #define LINE_Y 0 /* Y position the entry-list starts at */ | 50 | #define LINE_Y 0 /* Y position the entry-list starts at */ |
51 | #endif /* HAVE_LCD_BITMAP */ | 51 | #endif /* HAVE_LCD_BITMAP */ |
52 | 52 | ||
53 | #define PLAY_DISPLAY_DEFAULT 0 | 53 | #ifdef HAVE_LCD_BITMAP |
54 | #define PLAY_DISPLAY_FILENAME_SCROLL 1 | 54 | #define PLAY_DISPLAY_2LINEID3 0 |
55 | #define PLAY_DISPLAY_TRACK_TITLE 2 | 55 | #define PLAY_DISPLAY_FILENAME_SCROLL 1 |
56 | #define PLAY_DISPLAY_TRACK_TITLE 2 | ||
57 | #else | ||
58 | #define PLAY_DISPLAY_1LINEID3 0 | ||
59 | #define PLAY_DISPLAY_2LINEID3 1 | ||
60 | #define PLAY_DISPLAY_FILENAME_SCROLL 2 | ||
61 | #define PLAY_DISPLAY_TRACK_TITLE 3 | ||
62 | #endif | ||
56 | 63 | ||
57 | #ifdef HAVE_RECORDER_KEYPAD | 64 | #ifdef HAVE_RECORDER_KEYPAD |
58 | #define RELEASE_MASK (BUTTON_F1 | BUTTON_DOWN | BUTTON_LEFT | BUTTON_RIGHT | BUTTON_UP) | 65 | #define RELEASE_MASK (BUTTON_F1 | BUTTON_DOWN | BUTTON_LEFT | BUTTON_RIGHT | BUTTON_UP) |
@@ -121,16 +128,28 @@ static void draw_screen(struct mp3entry* id3) | |||
121 | } | 128 | } |
122 | case PLAY_DISPLAY_FILENAME_SCROLL: | 129 | case PLAY_DISPLAY_FILENAME_SCROLL: |
123 | { | 130 | { |
131 | char buffer[64]; | ||
124 | char ch = '/'; | 132 | char ch = '/'; |
125 | char* szLast = strrchr(id3->path, ch); | 133 | char* szLast = strrchr(id3->path, ch); |
126 | 134 | ||
127 | if (szLast) | 135 | if (szLast) |
128 | lcd_puts_scroll(0,LINE_Y, (++szLast)); | 136 | { |
137 | snprintf(buffer, sizeof(buffer), "%d/%d: %s", | ||
138 | id3->index + 1, | ||
139 | playlist.amount, | ||
140 | ++szLast); | ||
141 | } | ||
129 | else | 142 | else |
130 | lcd_puts_scroll(0,LINE_Y, id3->path); | 143 | { |
144 | snprintf(buffer, sizeof(buffer), "%d/%d: %s", | ||
145 | id3->index + 1, | ||
146 | playlist.amount, | ||
147 | id3->path); | ||
148 | } | ||
149 | lcd_puts_scroll(0,LINE_Y, buffer); | ||
131 | break; | 150 | break; |
132 | } | 151 | } |
133 | case PLAY_DISPLAY_DEFAULT: | 152 | case PLAY_DISPLAY_2LINEID3: |
134 | { | 153 | { |
135 | int l = LINE_Y; | 154 | int l = LINE_Y; |
136 | #ifdef HAVE_LCD_BITMAP | 155 | #ifdef HAVE_LCD_BITMAP |
@@ -168,6 +187,21 @@ static void draw_screen(struct mp3entry* id3) | |||
168 | #endif | 187 | #endif |
169 | break; | 188 | break; |
170 | } | 189 | } |
190 | #ifdef HAVE_LCD_CHARCELLS | ||
191 | case PLAY_DISPLAY_1LINEID3: | ||
192 | { | ||
193 | char buffer[64]; | ||
194 | |||
195 | snprintf(buffer, sizeof(buffer), "%d/%d: %s - %s", | ||
196 | id3->index + 1, | ||
197 | playlist.amount, | ||
198 | id3->artist?id3->artist:"<no artist>", | ||
199 | id3->title?id3->title:"<no title>"); | ||
200 | |||
201 | lcd_puts_scroll(0, 0, buffer); | ||
202 | break; | ||
203 | } | ||
204 | #endif | ||
171 | } | 205 | } |
172 | } | 206 | } |
173 | status_draw(); | 207 | status_draw(); |
@@ -313,7 +347,8 @@ static void display_file_time(unsigned int elapsed, unsigned int length) | |||
313 | /* Display time with the filename scroll only because | 347 | /* Display time with the filename scroll only because |
314 | the screen has room. */ | 348 | the screen has room. */ |
315 | if ((global_settings.wps_display == PLAY_DISPLAY_FILENAME_SCROLL) || | 349 | if ((global_settings.wps_display == PLAY_DISPLAY_FILENAME_SCROLL) || |
316 | ff_rewind ) | 350 | global_settings.wps_display == PLAY_DISPLAY_1LINEID3 || |
351 | ff_rewind) | ||
317 | { | 352 | { |
318 | snprintf(buffer,sizeof(buffer), "%d:%02d/%d:%02d ", | 353 | snprintf(buffer,sizeof(buffer), "%d:%02d/%d:%02d ", |
319 | elapsed / 60000, | 354 | elapsed / 60000, |
@@ -601,7 +636,7 @@ int wps_show(void) | |||
601 | { | 636 | { |
602 | if (menu_button_is_down) | 637 | if (menu_button_is_down) |
603 | { | 638 | { |
604 | sleep(HZ/2); | 639 | sleep(HZ/6); |
605 | draw_screen(id3); | 640 | draw_screen(id3); |
606 | } | 641 | } |
607 | 642 | ||
@@ -642,7 +677,7 @@ int wps_show(void) | |||
642 | { | 677 | { |
643 | if (menu_button_is_down) | 678 | if (menu_button_is_down) |
644 | { | 679 | { |
645 | sleep(HZ/2); | 680 | sleep(HZ/6); |
646 | draw_screen(id3); | 681 | draw_screen(id3); |
647 | } | 682 | } |
648 | 683 | ||
@@ -687,9 +722,8 @@ int wps_show(void) | |||
687 | if(global_settings.volume < mpeg_sound_min(SOUND_VOLUME)) | 722 | if(global_settings.volume < mpeg_sound_min(SOUND_VOLUME)) |
688 | global_settings.volume = mpeg_sound_min(SOUND_VOLUME); | 723 | global_settings.volume = mpeg_sound_min(SOUND_VOLUME); |
689 | mpeg_sound_set(SOUND_VOLUME, global_settings.volume); | 724 | mpeg_sound_set(SOUND_VOLUME, global_settings.volume); |
690 | #ifdef HAVE_PLAYER_KEYPAD | ||
691 | display_volume_level(global_settings.volume); | 725 | display_volume_level(global_settings.volume); |
692 | #endif | 726 | |
693 | status_draw(); | 727 | status_draw(); |
694 | settings_save(); | 728 | settings_save(); |
695 | break; | 729 | break; |
@@ -701,9 +735,8 @@ int wps_show(void) | |||
701 | if(global_settings.volume > mpeg_sound_max(SOUND_VOLUME)) | 735 | if(global_settings.volume > mpeg_sound_max(SOUND_VOLUME)) |
702 | global_settings.volume = mpeg_sound_max(SOUND_VOLUME); | 736 | global_settings.volume = mpeg_sound_max(SOUND_VOLUME); |
703 | mpeg_sound_set(SOUND_VOLUME, global_settings.volume); | 737 | mpeg_sound_set(SOUND_VOLUME, global_settings.volume); |
704 | #ifdef HAVE_PLAYER_KEYPAD | 738 | display_volume_level(global_settings.volume); |
705 | display_volume_level(global_settings.volume); | 739 | |
706 | #endif | ||
707 | status_draw(); | 740 | status_draw(); |
708 | settings_save(); | 741 | settings_save(); |
709 | break; | 742 | break; |