Deluge Firmware 1.3.0
Build date: 2025.04.16
Loading...
Searching...
No Matches
g_menus.inc
1// clang-format off
2filter::FilterParam lpfFreqMenu{STRING_FOR_FREQUENCY, STRING_FOR_LPF_FREQUENCY, params::LOCAL_LPF_FREQ, filter::FilterSlot::LPF, filter::FilterParamType::FREQUENCY};
3filter::FilterParam lpfResMenu{STRING_FOR_RESONANCE, STRING_FOR_LPF_RESONANCE, params::LOCAL_LPF_RESONANCE, filter::FilterSlot::LPF, filter::FilterParamType::RESONANCE};
4filter::FilterParam lpfMorphMenu{STRING_FOR_LPF_MORPH, params::LOCAL_LPF_MORPH, filter::FilterSlot::LPF, filter::FilterParamType::MORPH};
5filter::FilterModeSelection lpfModeMenu{STRING_FOR_MODE, STRING_FOR_LPF_MODE, filter::FilterSlot::LPF};
6std::array<MenuItem*, 4> child0 = {
7 &lpfFreqMenu,
8 &lpfResMenu,
9 &lpfMorphMenu,
10 &lpfModeMenu,
11};
12HorizontalMenu lpfMenu{STRING_FOR_LPF, child0};
13filter::FilterParam hpfFreqMenu{STRING_FOR_FREQUENCY, STRING_FOR_HPF_FREQUENCY, params::LOCAL_HPF_FREQ, filter::FilterSlot::HPF, filter::FilterParamType::FREQUENCY};
14filter::FilterParam hpfResMenu{STRING_FOR_RESONANCE, STRING_FOR_HPF_RESONANCE, params::LOCAL_HPF_RESONANCE, filter::FilterSlot::HPF, filter::FilterParamType::RESONANCE};
15filter::FilterParam hpfMorphMenu{STRING_FOR_HPF_MORPH, params::LOCAL_HPF_MORPH, filter::FilterSlot::HPF, filter::FilterParamType::MORPH};
16filter::FilterModeSelection hpfModeMenu{STRING_FOR_MODE, STRING_FOR_HPF_MODE, filter::FilterSlot::HPF};
17std::array<MenuItem*, 4> child1 = {
18 &hpfFreqMenu,
19 &hpfResMenu,
20 &hpfMorphMenu,
21 &hpfModeMenu,
22};
23HorizontalMenu hpfMenu{STRING_FOR_HPF, child1};
24FilterRouting filterRoutingMenu{STRING_FOR_FILTER_ROUTE};
25std::array<MenuItem*, 3> child2 = {
26 &lpfMenu,
27 &hpfMenu,
28 &filterRoutingMenu,
29};
30Submenu soundFiltersMenu{STRING_FOR_FILTERS, child2};
31audio_compressor::CompParam threshold{STRING_FOR_THRESHOLD, STRING_FOR_COMP_THRESHOLD_MENU_TITLE, params::UNPATCHED_COMPRESSOR_THRESHOLD};
32audio_compressor::Ratio compRatio{STRING_FOR_RATIO, STRING_FOR_RATIO};
33audio_compressor::Attack compAttack{STRING_FOR_ATTACK, STRING_FOR_ATTACK};
34audio_compressor::Release compRelease{STRING_FOR_RELEASE, STRING_FOR_RELEASE};
35audio_compressor::SideHPF compHPF{STRING_FOR_HPF, STRING_FOR_HPF};
36audio_compressor::Blend compBlend{STRING_FOR_BLEND, STRING_FOR_BLEND};
37std::array<MenuItem*, 6> child3 = {
38 &threshold,
39 &compRatio,
40 &compAttack,
41 &compRelease,
42 &compHPF,
43 &compBlend,
44};
45Submenu audioCompMenu{STRING_FOR_COMMUNITY_FEATURE_MASTER_COMPRESSOR, child3};
46unison::Count numUnisonMenu{STRING_FOR_UNISON_NUMBER};
47unison::Detune unisonDetuneMenu{STRING_FOR_UNISON_DETUNE};
48unison::StereoSpread unison::stereoSpreadMenu{STRING_FOR_UNISON_STEREO_SPREAD};
49std::array<MenuItem*, 3> child4 = {
50 &numUnisonMenu,
51 &unisonDetuneMenu,
52 &unison::stereoSpreadMenu,
53};
54Submenu unisonMenu{STRING_FOR_UNISON, child4};
55envelope::Segment envAttackMenu{STRING_FOR_ATTACK, STRING_FOR_ENV_ATTACK_MENU_TITLE, params::LOCAL_ENV_0_ATTACK};
56envelope::Segment envDecayMenu{STRING_FOR_DECAY, STRING_FOR_ENV_DECAY_MENU_TITLE, params::LOCAL_ENV_0_DECAY};
57envelope::Segment envSustainMenu{STRING_FOR_SUSTAIN, STRING_FOR_ENV_SUSTAIN_MENU_TITLE, params::LOCAL_ENV_0_SUSTAIN};
58envelope::Segment envReleaseMenu{STRING_FOR_RELEASE, STRING_FOR_ENV_RELEASE_MENU_TITLE, params::LOCAL_ENV_0_RELEASE};
59std::array<MenuItem*, 4> child5 = {
60 &envAttackMenu,
61 &envDecayMenu,
62 &envSustainMenu,
63 &envReleaseMenu,
64};
65submenu::Envelope env0Menu{STRING_FOR_ENVELOPE_1, child5, 0};
66submenu::Envelope env1Menu{STRING_FOR_ENVELOPE_2, child5, 1};
67submenu::Envelope env2Menu{STRING_FOR_ENVELOPE_3, child5, 2};
68submenu::Envelope env3Menu{STRING_FOR_ENVELOPE_4, child5, 3};
69osc::Type oscTypeMenu{STRING_FOR_TYPE, STRING_FOR_OSC_TYPE_MENU_TITLE};
70osc::source::Volume sourceVolumeMenu{STRING_FOR_VOLUME_LEVEL, STRING_FOR_OSC_LEVEL_MENU_TITLE, params::LOCAL_OSC_A_VOLUME};
71osc::source::WaveIndex sourceWaveIndexMenu{STRING_FOR_WAVE_INDEX, STRING_FOR_OSC_WAVE_IND_MENU_TITLE, params::LOCAL_OSC_A_WAVE_INDEX};
72osc::source::Feedback sourceFeedbackMenu{STRING_FOR_FEEDBACK, STRING_FOR_CARRIER_FEED_MENU_TITLE, params::LOCAL_CARRIER_0_FEEDBACK};
73FileSelector deluge::gui::menu_item::fileSelectorMenu{STRING_FOR_FILE_BROWSER};
74osc::AudioRecorder audioRecorderMenu{STRING_FOR_RECORD_AUDIO};
75sample::Reverse sampleReverseMenu{STRING_FOR_REVERSE, STRING_FOR_SAMP_REVERSE_MENU_TITLE};
76sample::Repeat sampleRepeatMenu{STRING_FOR_REPEAT_MODE, STRING_FOR_SAMP_REPEAT_MENU_TITLE};
77sample::Start sampleStartMenu{STRING_FOR_START_POINT};
78sample::End sampleEndMenu{STRING_FOR_END_POINT};
79sample::Transpose sourceTransposeMenu{STRING_FOR_TRANSPOSE, STRING_FOR_OSC_TRANSPOSE_MENU_TITLE, params::LOCAL_OSC_A_PITCH_ADJUST};
80sample::PitchSpeed samplePitchSpeedMenu{STRING_FOR_PITCH_SPEED};
81sample::TimeStretch timeStretchMenu{STRING_FOR_SPEED, STRING_FOR_SAMP_SPEED_MENU_TITLE};
82sample::Interpolation interpolationMenu{STRING_FOR_INTERPOLATION, STRING_FOR_SAMP_INTERP_MENU_TITLE};
83osc::PulseWidth pulseWidthMenu{STRING_FOR_PULSE_WIDTH, STRING_FOR_OSC_P_WIDTH_MENU_TITLE, params::LOCAL_OSC_A_PHASE_WIDTH};
84osc::Sync oscSyncMenu{STRING_FOR_OSCILLATOR_SYNC};
85osc::RetriggerPhase oscPhaseMenu{STRING_FOR_RETRIGGER_PHASE, STRING_FOR_OSC_R_PHASE_MENU_TITLE, false};
86std::array<MenuItem*, 17> child6 = {
87 &oscTypeMenu,
88 &sourceVolumeMenu,
89 &sourceWaveIndexMenu,
90 &sourceFeedbackMenu,
91 &deluge::gui::menu_item::fileSelectorMenu,
92 &audioRecorderMenu,
93 &sampleReverseMenu,
94 &sampleRepeatMenu,
95 &sampleStartMenu,
96 &sampleEndMenu,
97 &sourceTransposeMenu,
98 &samplePitchSpeedMenu,
99 &timeStretchMenu,
100 &interpolationMenu,
101 &pulseWidthMenu,
102 &oscSyncMenu,
103 &oscPhaseMenu,
104};
105submenu::ActualSource source0Menu{STRING_FOR_OSCILLATOR_1, child6, 0};
106submenu::ActualSource source1Menu{STRING_FOR_OSCILLATOR_2, child6, 1};
107// clang-format on