76 void reset()
override;
108 std::unique_ptr<ModulationTabSelector> envelope_tab_selector_;
118 std::unique_ptr<ModulationTabSelector> lfo_tab_selector_;
128 std::unique_ptr<ModulationTabSelector> random_tab_selector_;
133 std::unique_ptr<ModulationTabSelector> keyboard_modulations_top_;
138 std::unique_ptr<ModulationTabSelector> keyboard_modulations_bottom_;
A UI section for configuring and visualizing ADSR envelopes.
Definition envelope_section.h:66
A user interface section that displays and controls an LFO (Low Frequency Oscillator) in the synthesi...
Definition lfo_section.h:33
A class for generating and storing a line shape, defined by a series of points and associated powers.
Definition line_generator.h:20
A user interface section for managing and viewing various modulation sources like envelopes,...
Definition modulation_interface.h:28
~ModulationInterface()
Destructor.
Definition modulation_interface.cpp:105
static constexpr int kMinLfoModulationsToShow
Minimum LFOs to show.
Definition modulation_interface.h:34
static constexpr int kMinTotalModulations
Definition modulation_interface.h:36
void checkNumShown()
Checks and adjusts the number of shown modulations in each category to maintain consistency with the ...
Definition modulation_interface.cpp:220
void paintBackground(Graphics &g) override
Paints the background of the modulation interface.
Definition modulation_interface.cpp:107
void reset() override
Resets all visible modulation sections to their default states.
Definition modulation_interface.cpp:198
void setFocus()
Gives keyboard focus to this component.
Definition modulation_interface.h:97
void resized() override
Called when the component is resized.
Definition modulation_interface.cpp:146
void modulationSelected(ModulationTabSelector *selector, int index) override
Called when a modulation tab is selected.
Definition modulation_interface.cpp:228
void paintBackgroundShadow(Graphics &g) override
Paints shadows behind the modulation sections.
Definition modulation_interface.cpp:135
static constexpr int kMinEnvelopeModulationsToShow
The minimum number of envelopes, LFOs, and random modulations to show by default.
Definition modulation_interface.h:33
ModulationInterface(SynthGuiData *synth_data)
Constructs the ModulationInterface.
Definition modulation_interface.cpp:26
static constexpr int kMinRandomModulationsToShow
Minimum random modulations to show.
Definition modulation_interface.h:35
Interface for objects interested in ModulationTabSelector events.
Definition modulation_tab_selector.h:22
A section of the GUI providing multiple modulation sources as tabs.
Definition modulation_tab_selector.h:16
A section of the UI dedicated to controlling a random mod source, such as a random LFO.
Definition random_section.h:19
Base class for all synthesizer sections, providing UI layout, painting, and interaction logic.
Definition synth_section.h:193
constexpr int kNumRandomLfos
Number of random LFO sources (random modulation generators).
Definition synth_constants.h:25
constexpr int kNumEnvelopes
Number of envelope generators in Vital.
Definition synth_constants.h:22
constexpr int kNumLfos
Number of LFO sources available in the Vital synthesizer.
Definition synth_constants.h:13
A struct holding references and data used by the GUI to interact with the SynthBase.
Definition synth_gui_interface.h:27