diff options
Diffstat (limited to 'apps')
-rw-r--r-- | apps/menus/display_menu.c | 63 | ||||
-rw-r--r-- | apps/menus/theme_menu.c | 67 | ||||
-rw-r--r-- | apps/settings_list.c | 13 |
3 files changed, 75 insertions, 68 deletions
diff --git a/apps/menus/display_menu.c b/apps/menus/display_menu.c index 04360d8251..5559ecebe7 100644 --- a/apps/menus/display_menu.c +++ b/apps/menus/display_menu.c | |||
@@ -306,67 +306,6 @@ MAKE_MENU(scroll_settings_menu, ID2P(LANG_SCROLL_MENU), 0, Icon_NOICON, | |||
306 | /***********************************/ | 306 | /***********************************/ |
307 | 307 | ||
308 | /***********************************/ | 308 | /***********************************/ |
309 | /* BARS MENU */ | ||
310 | #ifdef HAVE_LCD_BITMAP | ||
311 | static int statusbar_callback_ex(int action,const struct menu_item_ex *this_item, | ||
312 | enum screen_type screen) | ||
313 | { | ||
314 | (void)this_item; | ||
315 | /* we save the old statusbar value here, so the old statusbars can get | ||
316 | * removed and cleared from the display properly on exiting | ||
317 | * (in gui_statusbar_changed() ) */ | ||
318 | static enum statusbar_values old_bar[NB_SCREENS]; | ||
319 | switch (action) | ||
320 | { | ||
321 | case ACTION_ENTER_MENUITEM: | ||
322 | old_bar[screen] = statusbar_position(screen); | ||
323 | case ACTION_EXIT_MENUITEM: | ||
324 | gui_statusbar_changed(screen, old_bar[screen]); | ||
325 | send_event(GUI_EVENT_STATUSBAR_TOGGLE, NULL); | ||
326 | send_event(GUI_EVENT_ACTIONUPDATE, (void*)true); | ||
327 | break; | ||
328 | } | ||
329 | return action; | ||
330 | } | ||
331 | |||
332 | #ifdef HAVE_REMOTE_LCD | ||
333 | static int statusbar_callback_remote(int action,const struct menu_item_ex *this_item) | ||
334 | { | ||
335 | return statusbar_callback_ex(action, this_item, SCREEN_REMOTE); | ||
336 | } | ||
337 | #endif | ||
338 | static int statusbar_callback(int action,const struct menu_item_ex *this_item) | ||
339 | { | ||
340 | return statusbar_callback_ex(action, this_item, SCREEN_MAIN); | ||
341 | } | ||
342 | MENUITEM_SETTING(scrollbar_item, &global_settings.scrollbar, NULL); | ||
343 | MENUITEM_SETTING(scrollbar_width, &global_settings.scrollbar_width, NULL); | ||
344 | MENUITEM_SETTING(statusbar, &global_settings.statusbar, | ||
345 | statusbar_callback); | ||
346 | #ifdef HAVE_REMOTE_LCD | ||
347 | MENUITEM_SETTING(remote_statusbar, &global_settings.remote_statusbar, | ||
348 | statusbar_callback_remote); | ||
349 | #endif | ||
350 | #if CONFIG_KEYPAD == RECORDER_PAD | ||
351 | MENUITEM_SETTING(buttonbar, &global_settings.buttonbar, NULL); | ||
352 | #endif | ||
353 | MENUITEM_SETTING(volume_type, &global_settings.volume_type, NULL); | ||
354 | MENUITEM_SETTING(battery_display, &global_settings.battery_display, NULL); | ||
355 | MAKE_MENU(bars_menu, ID2P(LANG_BARS_MENU), 0, Icon_NOICON, | ||
356 | &scrollbar_item, &scrollbar_width, &statusbar, | ||
357 | #ifdef HAVE_REMOTE_LCD | ||
358 | &remote_statusbar, | ||
359 | #endif | ||
360 | #if CONFIG_KEYPAD == RECORDER_PAD | ||
361 | &buttonbar, | ||
362 | #endif | ||
363 | &volume_type, &battery_display); | ||
364 | #endif /* HAVE_LCD_BITMAP */ | ||
365 | /* BARS MENU */ | ||
366 | /***********************************/ | ||
367 | |||
368 | |||
369 | /***********************************/ | ||
370 | /* PEAK METER MENU */ | 309 | /* PEAK METER MENU */ |
371 | 310 | ||
372 | #ifdef HAVE_LCD_BITMAP | 311 | #ifdef HAVE_LCD_BITMAP |
@@ -563,7 +502,7 @@ MAKE_MENU(display_menu, ID2P(LANG_DISPLAY), | |||
563 | #endif | 502 | #endif |
564 | &scroll_settings_menu, | 503 | &scroll_settings_menu, |
565 | #ifdef HAVE_LCD_BITMAP | 504 | #ifdef HAVE_LCD_BITMAP |
566 | &bars_menu, &peak_meter_menu, | 505 | &peak_meter_menu, |
567 | #endif | 506 | #endif |
568 | &codepage_setting, | 507 | &codepage_setting, |
569 | #ifdef HAVE_TOUCHSCREEN | 508 | #ifdef HAVE_TOUCHSCREEN |
diff --git a/apps/menus/theme_menu.c b/apps/menus/theme_menu.c index 233d673da1..f2e4579864 100644 --- a/apps/menus/theme_menu.c +++ b/apps/menus/theme_menu.c | |||
@@ -138,6 +138,72 @@ MAKE_MENU(colors_settings, ID2P(LANG_COLORS_MENU), | |||
138 | /* LCD MENU */ | 138 | /* LCD MENU */ |
139 | /***********************************/ | 139 | /***********************************/ |
140 | 140 | ||
141 | |||
142 | /************************************/ | ||
143 | /* BARS MENU */ | ||
144 | /* */ | ||
145 | |||
146 | |||
147 | #ifdef HAVE_LCD_BITMAP | ||
148 | static int statusbar_callback_ex(int action,const struct menu_item_ex *this_item, | ||
149 | enum screen_type screen) | ||
150 | { | ||
151 | (void)this_item; | ||
152 | /* we save the old statusbar value here, so the old statusbars can get | ||
153 | * removed and cleared from the display properly on exiting | ||
154 | * (in gui_statusbar_changed() ) */ | ||
155 | static enum statusbar_values old_bar[NB_SCREENS]; | ||
156 | switch (action) | ||
157 | { | ||
158 | case ACTION_ENTER_MENUITEM: | ||
159 | old_bar[screen] = statusbar_position(screen); | ||
160 | case ACTION_EXIT_MENUITEM: | ||
161 | gui_statusbar_changed(screen, old_bar[screen]); | ||
162 | send_event(GUI_EVENT_STATUSBAR_TOGGLE, NULL); | ||
163 | send_event(GUI_EVENT_ACTIONUPDATE, (void*)true); | ||
164 | break; | ||
165 | } | ||
166 | return action; | ||
167 | } | ||
168 | |||
169 | #ifdef HAVE_REMOTE_LCD | ||
170 | static int statusbar_callback_remote(int action,const struct menu_item_ex *this_item) | ||
171 | { | ||
172 | return statusbar_callback_ex(action, this_item, SCREEN_REMOTE); | ||
173 | } | ||
174 | #endif | ||
175 | static int statusbar_callback(int action,const struct menu_item_ex *this_item) | ||
176 | { | ||
177 | return statusbar_callback_ex(action, this_item, SCREEN_MAIN); | ||
178 | } | ||
179 | MENUITEM_SETTING(scrollbar_item, &global_settings.scrollbar, NULL); | ||
180 | MENUITEM_SETTING(scrollbar_width, &global_settings.scrollbar_width, NULL); | ||
181 | MENUITEM_SETTING(statusbar, &global_settings.statusbar, | ||
182 | statusbar_callback); | ||
183 | #ifdef HAVE_REMOTE_LCD | ||
184 | MENUITEM_SETTING(remote_statusbar, &global_settings.remote_statusbar, | ||
185 | statusbar_callback_remote); | ||
186 | #endif | ||
187 | #if CONFIG_KEYPAD == RECORDER_PAD | ||
188 | MENUITEM_SETTING(buttonbar, &global_settings.buttonbar, NULL); | ||
189 | #endif | ||
190 | MENUITEM_SETTING(volume_type, &global_settings.volume_type, NULL); | ||
191 | MENUITEM_SETTING(battery_display, &global_settings.battery_display, NULL); | ||
192 | MAKE_MENU(bars_menu, ID2P(LANG_BARS_MENU), 0, Icon_NOICON, | ||
193 | &scrollbar_item, &scrollbar_width, &statusbar, | ||
194 | #ifdef HAVE_REMOTE_LCD | ||
195 | &remote_statusbar, | ||
196 | #endif | ||
197 | #if CONFIG_KEYPAD == RECORDER_PAD | ||
198 | &buttonbar, | ||
199 | #endif | ||
200 | &volume_type, &battery_display); | ||
201 | #endif /* HAVE_LCD_BITMAP */ | ||
202 | |||
203 | /* */ | ||
204 | /* BARS MENU */ | ||
205 | /************************************/ | ||
206 | |||
141 | #ifdef HAVE_LCD_BITMAP | 207 | #ifdef HAVE_LCD_BITMAP |
142 | static struct browse_folder_info fonts = {FONT_DIR, SHOW_FONT}; | 208 | static struct browse_folder_info fonts = {FONT_DIR, SHOW_FONT}; |
143 | #endif | 209 | #endif |
@@ -191,6 +257,7 @@ MAKE_MENU(theme_menu, ID2P(LANG_THEME_MENU), | |||
191 | &clear_main_bd, | 257 | &clear_main_bd, |
192 | #endif | 258 | #endif |
193 | #ifdef HAVE_LCD_BITMAP | 259 | #ifdef HAVE_LCD_BITMAP |
260 | &bars_menu, | ||
194 | &cursor_style, | 261 | &cursor_style, |
195 | #endif | 262 | #endif |
196 | #ifdef HAVE_LCD_COLOR | 263 | #ifdef HAVE_LCD_COLOR |
diff --git a/apps/settings_list.c b/apps/settings_list.c index 23424f94cc..23f07cb24c 100644 --- a/apps/settings_list.c +++ b/apps/settings_list.c | |||
@@ -612,19 +612,20 @@ const struct settings_list settings[] = { | |||
612 | NULL, 3, ID2P(LANG_OFF), ID2P(LANG_STATUSBAR_TOP), | 612 | NULL, 3, ID2P(LANG_OFF), ID2P(LANG_STATUSBAR_TOP), |
613 | ID2P(LANG_STATUSBAR_BOTTOM)), | 613 | ID2P(LANG_STATUSBAR_BOTTOM)), |
614 | #endif | 614 | #endif |
615 | CHOICE_SETTING(F_TEMPVAR, scrollbar, | 615 | CHOICE_SETTING(F_THEMESETTING|F_TEMPVAR, scrollbar, |
616 | LANG_SCROLL_BAR, SCROLLBAR_LEFT, "scrollbar","off,left,right", | 616 | LANG_SCROLL_BAR, SCROLLBAR_LEFT, "scrollbar","off,left,right", |
617 | NULL, 3, ID2P(LANG_OFF), ID2P(LANG_LEFT), ID2P(LANG_RIGHT)), | 617 | NULL, 3, ID2P(LANG_OFF), ID2P(LANG_LEFT), ID2P(LANG_RIGHT)), |
618 | INT_SETTING(0, scrollbar_width, LANG_SCROLLBAR_WIDTH, 6, "scrollbar width", | 618 | INT_SETTING(F_THEMESETTING, scrollbar_width, LANG_SCROLLBAR_WIDTH, 6, |
619 | UNIT_INT, 3, LCD_WIDTH/10, 1, NULL, NULL, NULL), | 619 | "scrollbar width",UNIT_INT, 3, MAX(LCD_WIDTH/10,25), 1, |
620 | NULL, NULL, NULL), | ||
620 | #if CONFIG_KEYPAD == RECORDER_PAD | 621 | #if CONFIG_KEYPAD == RECORDER_PAD |
621 | OFFON_SETTING(0,buttonbar, LANG_BUTTON_BAR ,true,"buttonbar", NULL), | 622 | OFFON_SETTING(F_THEMESETTING,buttonbar, LANG_BUTTON_BAR ,true,"buttonbar", NULL), |
622 | #endif | 623 | #endif |
623 | CHOICE_SETTING(0, volume_type, LANG_VOLUME_DISPLAY, 0, | 624 | CHOICE_SETTING(F_THEMESETTING, volume_type, LANG_VOLUME_DISPLAY, 0, |
624 | "volume display", graphic_numeric, NULL, 2, | 625 | "volume display", graphic_numeric, NULL, 2, |
625 | ID2P(LANG_DISPLAY_GRAPHIC), | 626 | ID2P(LANG_DISPLAY_GRAPHIC), |
626 | ID2P(LANG_DISPLAY_NUMERIC)), | 627 | ID2P(LANG_DISPLAY_NUMERIC)), |
627 | CHOICE_SETTING(0, battery_display, LANG_BATTERY_DISPLAY, 0, | 628 | CHOICE_SETTING(F_THEMESETTING, battery_display, LANG_BATTERY_DISPLAY, 0, |
628 | "battery display", graphic_numeric, NULL, 2, | 629 | "battery display", graphic_numeric, NULL, 2, |
629 | ID2P(LANG_DISPLAY_GRAPHIC), ID2P(LANG_DISPLAY_NUMERIC)), | 630 | ID2P(LANG_DISPLAY_GRAPHIC), ID2P(LANG_DISPLAY_NUMERIC)), |
630 | #if CONFIG_RTC | 631 | #if CONFIG_RTC |