summaryrefslogtreecommitdiff
path: root/apps/sound_menu.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/sound_menu.c')
-rw-r--r--apps/sound_menu.c74
1 files changed, 31 insertions, 43 deletions
diff --git a/apps/sound_menu.c b/apps/sound_menu.c
index c7d72cf553..2938e3a527 100644
--- a/apps/sound_menu.c
+++ b/apps/sound_menu.c
@@ -26,6 +26,7 @@
26#include "mpeg.h" 26#include "mpeg.h"
27#include "settings.h" 27#include "settings.h"
28#include "status.h" 28#include "status.h"
29#include "screens.h"
29#ifdef HAVE_LCD_BITMAP 30#ifdef HAVE_LCD_BITMAP
30#include "icons.h" 31#include "icons.h"
31#endif 32#endif
@@ -38,7 +39,7 @@ static char *fmt[] =
38 "%d.%02d %s " /* 2 decimals */ 39 "%d.%02d %s " /* 2 decimals */
39}; 40};
40 41
41void set_sound(char* string, 42bool set_sound(char* string,
42 int* variable, 43 int* variable,
43 int setting) 44 int setting)
44{ 45{
@@ -120,20 +121,10 @@ void set_sound(char* string,
120#endif 121#endif
121 done = true; 122 done = true;
122 break; 123 break;
123#ifdef HAVE_RECORDER_KEYPAD 124
124 case BUTTON_F3: 125 case SYS_USB_CONNECTED:
125#ifdef HAVE_LCD_BITMAP 126 usb_screen();
126 global_settings.statusbar = !global_settings.statusbar; 127 return true;
127 settings_save();
128 if(global_settings.statusbar)
129 lcd_setmargins(0, STATUSBAR_HEIGHT);
130 else
131 lcd_setmargins(0, 0);
132 lcd_clear_display();
133 lcd_puts_scroll(0, 0, string);
134#endif
135 break;
136#endif
137 } 128 }
138 if (changed) { 129 if (changed) {
139 mpeg_sound_set(setting, *variable); 130 mpeg_sound_set(setting, *variable);
@@ -144,43 +135,41 @@ void set_sound(char* string,
144 } 135 }
145 } 136 }
146 lcd_stop_scroll(); 137 lcd_stop_scroll();
138 return false;
147} 139}
148 140
149static Menu volume(void) 141static bool volume(void)
150{ 142{
151 set_sound(str(LANG_VOLUME), &global_settings.volume, SOUND_VOLUME); 143 return set_sound(str(LANG_VOLUME), &global_settings.volume, SOUND_VOLUME);
152 return MENU_OK;
153} 144}
154 145
155static Menu balance(void) 146static bool balance(void)
156{ 147{
157 set_sound(str(LANG_BALANCE), &global_settings.balance, SOUND_BALANCE); 148 return set_sound(str(LANG_BALANCE), &global_settings.balance,
158 return MENU_OK; 149 SOUND_BALANCE);
159} 150}
160 151
161static Menu bass(void) 152static bool bass(void)
162{ 153{
163 set_sound(str(LANG_BASS), &global_settings.bass, SOUND_BASS); 154 return set_sound(str(LANG_BASS), &global_settings.bass, SOUND_BASS);
164 return MENU_OK;
165}; 155};
166 156
167static Menu treble(void) 157static bool treble(void)
168{ 158{
169 set_sound(str(LANG_TREBLE), &global_settings.treble, SOUND_TREBLE); 159 return set_sound(str(LANG_TREBLE), &global_settings.treble, SOUND_TREBLE);
170 return MENU_OK;
171} 160}
172 161
173#ifdef HAVE_MAS3587F 162#ifdef HAVE_MAS3587F
174static Menu loudness(void) 163static bool loudness(void)
175{ 164{
176 set_sound(str(LANG_LOUDNESS), &global_settings.loudness, SOUND_LOUDNESS); 165 return set_sound(str(LANG_LOUDNESS), &global_settings.loudness,
177 return MENU_OK; 166 SOUND_LOUDNESS);
178}; 167};
179 168
180static Menu bass_boost(void) 169static bool bass_boost(void)
181{ 170{
182 set_sound(str(LANG_BBOOST), &global_settings.bass_boost, SOUND_SUPERBASS); 171 return set_sound(str(LANG_BBOOST), &global_settings.bass_boost,
183 return MENU_OK; 172 SOUND_SUPERBASS);
184}; 173};
185 174
186static void set_avc(int val) 175static void set_avc(int val)
@@ -188,11 +177,11 @@ static void set_avc(int val)
188 mpeg_sound_set(SOUND_AVC, val); 177 mpeg_sound_set(SOUND_AVC, val);
189} 178}
190 179
191static Menu avc(void) 180static bool avc(void)
192{ 181{
193 char* names[] = { str(LANG_OFF), "2s", "4s", "8s" }; 182 char* names[] = { str(LANG_OFF), "2s", "4s", "8s" };
194 set_option(str(LANG_DECAY), &global_settings.avc, names, 4, set_avc ); 183 return set_option(str(LANG_DECAY), &global_settings.avc,
195 return MENU_OK; 184 names, 4, set_avc);
196} 185}
197#endif /* ARCHOS_RECORDER */ 186#endif /* ARCHOS_RECORDER */
198 187
@@ -201,19 +190,18 @@ static void set_chanconf(int val)
201 mpeg_sound_set(SOUND_CHANNELS, val); 190 mpeg_sound_set(SOUND_CHANNELS, val);
202} 191}
203 192
204static Menu chanconf(void) 193static bool chanconf(void)
205{ 194{
206 char *names[] = {str(LANG_CHANNEL_STEREO), str(LANG_CHANNEL_MONO), 195 char *names[] = {str(LANG_CHANNEL_STEREO), str(LANG_CHANNEL_MONO),
207 str(LANG_CHANNEL_LEFT),str(LANG_CHANNEL_RIGHT) }; 196 str(LANG_CHANNEL_LEFT), str(LANG_CHANNEL_RIGHT) };
208 set_option(str(LANG_CHANNEL), 197 return set_option(str(LANG_CHANNEL), &global_settings.channel_config,
209 &global_settings.channel_config, names, 4, set_chanconf ); 198 names, 4, set_chanconf );
210 return MENU_OK;
211} 199}
212 200
213Menu sound_menu(void) 201bool sound_menu(void)
214{ 202{
215 int m; 203 int m;
216 Menu result; 204 bool result;
217 struct menu_items items[] = { 205 struct menu_items items[] = {
218 { str(LANG_VOLUME), volume }, 206 { str(LANG_VOLUME), volume },
219 { str(LANG_BASS), bass }, 207 { str(LANG_BASS), bass },