only send a Charging Only interface if nothing else is sent
[kugel-rb.git] / apps / menus / sound_menu.c
blob315fef81b3ef6115067ce8f19567a7dde8f35354
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 #if CONFIG_CODEC == SWCODEC
32 #include "pcmbuf.h"
33 #endif
34 #include "exported_menus.h"
35 #include "menu_common.h"
37 /***********************************/
38 /* SOUND MENU */
39 MENUITEM_SETTING(volume, &global_settings.volume, NULL);
40 MENUITEM_SETTING(bass, &global_settings.bass,
41 #ifdef HAVE_SW_TONE_CONTROLS
42 lowlatency_callback
43 #else
44 NULL
45 #endif
47 #ifdef HAVE_WM8758
48 MENUITEM_SETTING(bass_cutoff, &global_settings.bass_cutoff, NULL);
49 #endif
50 MENUITEM_SETTING(treble, &global_settings.treble,
51 #ifdef HAVE_SW_TONE_CONTROLS
52 lowlatency_callback
53 #else
54 NULL
55 #endif
57 #ifdef HAVE_WM8758
58 MENUITEM_SETTING(treble_cutoff, &global_settings.treble_cutoff, NULL);
59 #endif
60 MENUITEM_SETTING(balance, &global_settings.balance, NULL);
61 MENUITEM_SETTING(channel_config, &global_settings.channel_config,
62 #if CONFIG_CODEC == SWCODEC
63 lowlatency_callback
64 #else
65 NULL
66 #endif
68 MENUITEM_SETTING(stereo_width, &global_settings.stereo_width,
69 #if CONFIG_CODEC == SWCODEC
70 lowlatency_callback
71 #else
72 NULL
73 #endif
76 #if CONFIG_CODEC == SWCODEC
77 /* Crossfeed Submenu */
78 MENUITEM_SETTING(crossfeed, &global_settings.crossfeed, lowlatency_callback);
79 MENUITEM_SETTING(crossfeed_direct_gain,
80 &global_settings.crossfeed_direct_gain, lowlatency_callback);
81 MENUITEM_SETTING(crossfeed_cross_gain,
82 &global_settings.crossfeed_cross_gain, lowlatency_callback);
83 MENUITEM_SETTING(crossfeed_hf_attenuation,
84 &global_settings.crossfeed_hf_attenuation, lowlatency_callback);
85 MENUITEM_SETTING(crossfeed_hf_cutoff,
86 &global_settings.crossfeed_hf_cutoff, lowlatency_callback);
87 MAKE_MENU(crossfeed_menu,ID2P(LANG_CROSSFEED), NULL, Icon_NOICON,
88 &crossfeed, &crossfeed_direct_gain, &crossfeed_cross_gain,
89 &crossfeed_hf_attenuation, &crossfeed_hf_cutoff);
91 MENUITEM_SETTING(dithering_enabled,
92 &global_settings.dithering_enabled, lowlatency_callback);
93 #endif
95 #if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)
96 MENUITEM_SETTING(loudness, &global_settings.loudness, NULL);
97 MENUITEM_SETTING(avc, &global_settings.avc, NULL);
98 MENUITEM_SETTING(superbass, &global_settings.superbass, NULL);
99 MENUITEM_SETTING(mdb_enable, &global_settings.mdb_enable, NULL);
100 MENUITEM_SETTING(mdb_strength, &global_settings.mdb_strength, NULL);
101 MENUITEM_SETTING(mdb_harmonics, &global_settings.mdb_harmonics, NULL);
102 MENUITEM_SETTING(mdb_center, &global_settings.mdb_center, NULL);
103 MENUITEM_SETTING(mdb_shape, &global_settings.mdb_shape, NULL);
104 #endif
108 MAKE_MENU(sound_settings, ID2P(LANG_SOUND_SETTINGS), NULL, Icon_Audio,
109 &volume,
110 &bass,
111 #ifdef HAVE_WM8758
112 &bass_cutoff,
113 #endif
114 &treble,
115 #ifdef HAVE_WM8758
116 &treble_cutoff,
117 #endif
118 &balance,&channel_config,&stereo_width
119 #if CONFIG_CODEC == SWCODEC
120 ,&crossfeed_menu, &equalizer_menu, &dithering_enabled
121 #endif
122 #if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)
123 ,&loudness,&avc,&superbass,&mdb_enable,&mdb_strength
124 ,&mdb_harmonics,&mdb_center,&mdb_shape
125 #endif