Move language resources to a separate file. Only build and include langs when buildin...
[Rockbox.git] / apps / menus / sound_menu.c
blob1c1be388c4ebe1724c7b4bd711bac2cd66ae265c
2 /***************************************************************************
3 * __________ __ ___.
4 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
5 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
6 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
7 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
8 * \/ \/ \/ \/ \/
9 * $Id$
11 * Copyright (C) 2007 Jonathan Gordon
13 * All files in this archive are subject to the GNU General Public License.
14 * See the file COPYING in the source tree root for full license agreement.
16 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
17 * KIND, either express or implied.
19 ****************************************************************************/
21 #include <stdbool.h>
22 #include <stddef.h>
23 #include <limits.h>
24 #include "config.h"
25 #include "lang.h"
26 #include "action.h"
27 #include "settings.h"
28 #include "menu.h"
29 #include "sound_menu.h"
30 #include "eq_menu.h"
31 #include "exported_menus.h"
32 #include "menu_common.h"
34 /***********************************/
35 /* SOUND MENU */
36 MENUITEM_SETTING(volume, &global_settings.volume, NULL);
37 MENUITEM_SETTING(bass, &global_settings.bass,
38 #ifdef HAVE_SW_TONE_CONTROLS
39 lowlatency_callback
40 #else
41 NULL
42 #endif
44 #ifdef HAVE_WM8758
45 MENUITEM_SETTING(bass_cutoff, &global_settings.bass_cutoff, NULL);
46 #endif
47 MENUITEM_SETTING(treble, &global_settings.treble,
48 #ifdef HAVE_SW_TONE_CONTROLS
49 lowlatency_callback
50 #else
51 NULL
52 #endif
54 #ifdef HAVE_WM8758
55 MENUITEM_SETTING(treble_cutoff, &global_settings.treble_cutoff, NULL);
56 #endif
57 MENUITEM_SETTING(balance, &global_settings.balance, NULL);
58 MENUITEM_SETTING(channel_config, &global_settings.channel_config,
59 #if CONFIG_CODEC == SWCODEC
60 lowlatency_callback
61 #else
62 NULL
63 #endif
65 MENUITEM_SETTING(stereo_width, &global_settings.stereo_width,
66 #if CONFIG_CODEC == SWCODEC
67 lowlatency_callback
68 #else
69 NULL
70 #endif
73 #if CONFIG_CODEC == SWCODEC
74 /* Crossfeed Submenu */
75 MENUITEM_SETTING(crossfeed, &global_settings.crossfeed, lowlatency_callback);
76 MENUITEM_SETTING(crossfeed_direct_gain,
77 &global_settings.crossfeed_direct_gain, lowlatency_callback);
78 MENUITEM_SETTING(crossfeed_cross_gain,
79 &global_settings.crossfeed_cross_gain, lowlatency_callback);
80 MENUITEM_SETTING(crossfeed_hf_attenuation,
81 &global_settings.crossfeed_hf_attenuation, lowlatency_callback);
82 MENUITEM_SETTING(crossfeed_hf_cutoff,
83 &global_settings.crossfeed_hf_cutoff, lowlatency_callback);
84 MAKE_MENU(crossfeed_menu,ID2P(LANG_CROSSFEED), NULL, Icon_NOICON,
85 &crossfeed, &crossfeed_direct_gain, &crossfeed_cross_gain,
86 &crossfeed_hf_attenuation, &crossfeed_hf_cutoff);
88 MENUITEM_SETTING(dithering_enabled,
89 &global_settings.dithering_enabled, lowlatency_callback);
90 #endif
92 #if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)
93 MENUITEM_SETTING(loudness, &global_settings.loudness, NULL);
94 MENUITEM_SETTING(avc, &global_settings.avc, NULL);
95 MENUITEM_SETTING(superbass, &global_settings.superbass, NULL);
96 MENUITEM_SETTING(mdb_enable, &global_settings.mdb_enable, NULL);
97 MENUITEM_SETTING(mdb_strength, &global_settings.mdb_strength, NULL);
98 MENUITEM_SETTING(mdb_harmonics, &global_settings.mdb_harmonics, NULL);
99 MENUITEM_SETTING(mdb_center, &global_settings.mdb_center, NULL);
100 MENUITEM_SETTING(mdb_shape, &global_settings.mdb_shape, NULL);
101 #endif
105 MAKE_MENU(sound_settings, ID2P(LANG_SOUND_SETTINGS), NULL, Icon_Audio,
106 &volume,
107 &bass,
108 #ifdef HAVE_WM8758
109 &bass_cutoff,
110 #endif
111 &treble,
112 #ifdef HAVE_WM8758
113 &treble_cutoff,
114 #endif
115 &balance,&channel_config,&stereo_width
116 #if CONFIG_CODEC == SWCODEC
117 ,&crossfeed_menu, &equalizer_menu, &dithering_enabled
118 #endif
119 #if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)
120 ,&loudness,&avc,&superbass,&mdb_enable,&mdb_strength
121 ,&mdb_harmonics,&mdb_center,&mdb_shape
122 #endif