|
| OscillatorSection (Authentication *auth, int index, const vital::output_map &mono_modulations, const vital::output_map &poly_modulations) |
| Constructs a new OscillatorSection.
|
|
virtual | ~OscillatorSection () |
| Destructor.
|
|
void | setSkinValues (const Skin &skin, bool top_level) override |
| Sets visual skin values.
|
|
void | paintBackground (Graphics &g) override |
| Paints the background of this section.
|
|
void | paintBackgroundShadow (Graphics &g) override |
| Paints the background shadow if active.
|
|
void | resized () override |
| Called when the component is resized. Handles layout.
|
|
void | reset () override |
| Resets the oscillator section and marks the wavetable as dirty.
|
|
void | buttonClicked (Button *clicked_button) override |
| Handles button clicks.
|
|
void | setAllValues (vital::control_map &controls) override |
| Sets all control values from a given control map.
|
|
void | textEditorReturnKeyPressed (TextEditor &text_editor) override |
| Handles the return key press in the text editor.
|
|
void | textEditorFocusLost (TextEditor &text_editor) override |
| Handles focus loss in the text editor.
|
|
void | timerCallback () override |
| Timer callback for handling transient states (e.g. error messages).
|
|
void | setActive (bool active) override |
| Sets the active state of the oscillator section.
|
|
void | setName (String name) |
| Sets the display name of the oscillator section.
|
|
void | resetOscillatorModulationDistortionType () |
| Resets the oscillator modulation distortion type to default.
|
|
void | addListener (Listener *listener) |
| Adds a listener for oscillator section events.
|
|
std::string | loadWavetableFromText (const String &text) |
| Loads a wavetable from text input (TTWT - text to wavetable).
|
|
Slider * | getWaveFrameSlider () |
| Gets the wave frame slider.
|
|
void | setDistortionSelected (int selection) |
| Sets the currently selected distortion type.
|
|
int | getDistortion () const |
| Gets the current distortion type.
|
|
void | setSpectralMorphSelected (int selection) |
| Sets the currently selected spectral morph type.
|
|
void | setDestinationSelected (int selection) |
| Sets the currently selected destination routing.
|
|
void | toggleFilterInput (int filter_index, bool on) |
| Toggles filter input on or off.
|
|
void | loadBrowserState () |
| Loads the browser state for wavetable preset selection.
|
|
void | setIndexSelected () |
| Sets the language index for the text-to-wavetable functionality.
|
|
void | setLanguage (int index) |
| Sets the language for text-to-wavetable processing.
|
|
void | languageSelectCancelled () |
| Cancels the language selection for TTWT.
|
|
void | prevClicked () override |
| Loads the previous wavetable in the browser.
|
|
void | nextClicked () override |
| Loads the next wavetable in the browser.
|
|
void | textMouseDown (const MouseEvent &e) override |
| Handles mouse-down events on textual components.
|
|
void | quantizeUpdated () override |
| Called when transpose quantization is updated.
|
|
bool | loadAudioAsWavetable (String name, InputStream *audio_stream, WavetableCreator::AudioFileLoadStyle style) override |
| Loads audio data as a wavetable.
|
|
void | loadWavetable (json &wavetable_data) override |
| Loads a wavetable from JSON data.
|
|
void | loadDefaultWavetable () override |
| Loads the default (init) wavetable.
|
|
void | resynthesizeToWavetable () override |
| Resynthesizes the current source to a wavetable.
|
|
void | textToWavetable () override |
| Converts entered text to a wavetable (TTWT).
|
|
void | saveWavetable () override |
| Saves the current wavetable to disk.
|
|
void | loadFile (const File &wavetable_file) override |
| Loads a wavetable file from disk.
|
|
File | getCurrentFile () override |
| Gets the current wavetable file.
|
|
std::string | getFileName () override |
| Gets the name of the loaded wavetable file.
|
|
std::string | getFileAuthor () override |
| Gets the author of the loaded wavetable file.
|
|
int | index () const |
| Gets the oscillator index.
|
|
SynthSlider * | getVoicesSlider () const |
| Gets the unison voices slider.
|
|
const SynthSlider * | getWaveFrameSlider () const |
| Gets the wave frame slider.
|
|
const SynthSlider * | getSpectralMorphSlider () const |
| Gets the spectral morph slider.
|
|
const SynthSlider * | getDistortionSlider () const |
| Gets the distortion slider.
|
|
Rectangle< float > | getWavetableRelativeBounds () |
| Gets the relative bounds of the wavetable display area.
|
|
| SynthSection (const String &name) |
| Constructs a SynthSection with a given name.
|
|
virtual | ~SynthSection ()=default |
|
void | setParent (const SynthSection *parent) |
| Sets the parent SynthSection.
|
|
float | findValue (Skin::ValueId value_id) const |
| Finds a value in the skin overrides or from the parent if not found locally.
|
|
virtual void | paint (Graphics &g) override |
| Called when the component should paint itself.
|
|
virtual void | paintSidewaysHeadingText (Graphics &g) |
| Paints the section name heading text vertically if sideways_heading_ is true.
|
|
virtual void | paintHeadingText (Graphics &g) |
| Paints the heading text for this section, either sideways or horizontally.
|
|
void | setSkinOverride (Skin::SectionOverride skin_override) |
|
virtual void | repaintBackground () |
| Requests a repaint of the background.
|
|
void | showPopupBrowser (SynthSection *owner, Rectangle< int > bounds, std::vector< File > directories, String extensions, std::string passthrough_name, std::string additional_folders_name) |
| Shows a file browser popup (e.g., for loading samples or wavetables).
|
|
void | updatePopupBrowser (SynthSection *owner) |
| Updates the currently visible popup browser if any.
|
|
void | showPopupSelector (Component *source, Point< int > position, const PopupItems &options, std::function< void(int)> callback, std::function< void()> cancel={ }) |
| Shows a popup selector with options.
|
|
void | showDualPopupSelector (Component *source, Point< int > position, int width, const PopupItems &options, std::function< void(int)> callback) |
| Shows a dual popup selector for hierarchical selection.
|
|
void | showPopupDisplay (Component *source, const std::string &text, BubbleComponent::BubblePlacement placement, bool primary) |
| Shows a brief popup display (like a tooltip).
|
|
void | hidePopupDisplay (bool primary) |
| Hides the currently shown popup display.
|
|
virtual void | paintContainer (Graphics &g) |
| Paints the container background, body, heading, etc.
|
|
virtual void | paintBody (Graphics &g, Rectangle< int > bounds) |
| Paints the body background within given bounds.
|
|
virtual void | paintBorder (Graphics &g, Rectangle< int > bounds) |
| Paints the border around given bounds.
|
|
virtual void | paintBody (Graphics &g) |
| Paints the section body background using the entire component area.
|
|
virtual void | paintBorder (Graphics &g) |
| Paints the border around the entire component.
|
|
int | getComponentShadowWidth () |
| Gets the width of shadow around components.
|
|
virtual void | paintTabShadow (Graphics &g) |
| Paints a tab-like shadow effect around the component.
|
|
void | paintTabShadow (Graphics &g, Rectangle< int > bounds) |
| Paints a tab shadow effect within specified bounds.
|
|
virtual void | setSizeRatio (float ratio) |
| Sets the size ratio for scaling UI elements.
|
|
void | paintKnobShadows (Graphics &g) |
| Paints knob shadows for all sliders.
|
|
Font | getLabelFont () |
| Gets a suitable font for label text.
|
|
void | setLabelFont (Graphics &g) |
| Sets the Graphics context font and color for labels.
|
|
void | drawLabelConnectionForComponents (Graphics &g, Component *left, Component *right) |
| Draws a rectangular connection between labels of two components.
|
|
void | drawLabelBackground (Graphics &g, Rectangle< int > bounds, bool text_component=false) |
| Draws a background for a label area.
|
|
void | drawLabelBackgroundForComponent (Graphics &g, Component *component) |
| Draws label background for a specific component.
|
|
Rectangle< int > | getDividedAreaBuffered (Rectangle< int > full_area, int num_sections, int section, int buffer) |
| Divides an area into equal sections with buffering, returns the specified section.
|
|
Rectangle< int > | getDividedAreaUnbuffered (Rectangle< int > full_area, int num_sections, int section, int buffer) |
| Divides an area into equal sections without extra buffering, returns the specified section.
|
|
Rectangle< int > | getLabelBackgroundBounds (Rectangle< int > bounds, bool text_component=false) |
| Gets the background bounds for a label.
|
|
Rectangle< int > | getLabelBackgroundBounds (Component *component, bool text_component=false) |
| Gets the label background bounds for a component.
|
|
void | drawLabel (Graphics &g, String text, Rectangle< int > component_bounds, bool text_component=false) |
| Draws a label text below a component.
|
|
void | drawLabelForComponent (Graphics &g, String text, Component *component, bool text_component=false) |
| Draws a label for a given component.
|
|
void | drawTextBelowComponent (Graphics &g, String text, Component *component, int space, int padding=0) |
| Draws text below a component with optional padding.
|
|
virtual void | paintChildrenShadows (Graphics &g) |
| Paints shadows for child sections.
|
|
void | paintChildrenBackgrounds (Graphics &g) |
| Paints the backgrounds for all child sections.
|
|
void | paintOpenGlChildrenBackgrounds (Graphics &g) |
| Paints the backgrounds for all OpenGL child components.
|
|
void | paintChildBackground (Graphics &g, SynthSection *child) |
| Paints a child's background specifically.
|
|
void | paintChildShadow (Graphics &g, SynthSection *child) |
| Paints a child's shadow specifically.
|
|
void | paintOpenGlBackground (Graphics &g, OpenGlComponent *child) |
| Paints the background of an OpenGlComponent child.
|
|
void | drawTextComponentBackground (Graphics &g, Rectangle< int > bounds, bool extend_to_label) |
| Draws a background for a text component area.
|
|
void | drawTempoDivider (Graphics &g, Component *sync) |
| Draws a divider line for tempo-related controls.
|
|
virtual void | initOpenGlComponents (OpenGlWrapper &open_gl) |
| Initializes all OpenGL components in this section and sub-sections.
|
|
virtual void | renderOpenGlComponents (OpenGlWrapper &open_gl, bool animate) |
| Renders all OpenGL components in this section and sub-sections.
|
|
virtual void | destroyOpenGlComponents (OpenGlWrapper &open_gl) |
| Destroys all OpenGL components in this section and sub-sections.
|
|
virtual void | sliderValueChanged (Slider *moved_slider) override |
| Called when a slider value changes. Updates the synth parameter accordingly.
|
|
virtual void | guiChanged (SynthButton *button) override |
| Called when a SynthButton state changes (GUI interaction).
|
|
std::map< std::string, SynthSlider * > | getAllSliders () |
| Gets all sliders registered in this section.
|
|
std::map< std::string, ToggleButton * > | getAllButtons () |
| Gets all toggle buttons registered in this section.
|
|
std::map< std::string, ModulationButton * > | getAllModulationButtons () |
| Gets all modulation buttons registered in this section.
|
|
bool | isActive () const |
| Checks if the section is currently active.
|
|
virtual void | animate (bool animate) |
| Triggers animation state change in sub-sections if needed.
|
|
virtual void | setValue (const std::string &name, vital::mono_float value, NotificationType notification) |
| Sets a single parameter value for a known control.
|
|
void | addModulationButton (ModulationButton *button, bool show=true) |
| Adds a modulation button to this section.
|
|
void | addSubSection (SynthSection *section, bool show=true) |
| Adds a subsection (another SynthSection) as a child.
|
|
void | removeSubSection (SynthSection *section) |
| Removes a previously added subsection.
|
|
virtual void | setScrollWheelEnabled (bool enabled) |
| Enables or disables scroll wheel support for this section and sub-sections.
|
|
ToggleButton * | activator () const |
| Gets the activator toggle button if any.
|
|
void | setSkinValues (std::map< Skin::ValueId, float > values) |
| Sets custom skin values for this section.
|
|
void | setSkinValue (Skin::ValueId id, float value) |
| Sets a single skin value override.
|
|
float | getTitleWidth () |
|
float | getPadding () |
|
float | getPowerButtonOffset () const |
|
float | getKnobSectionHeight () |
|
float | getSliderWidth () |
|
float | getSliderOverlap () |
|
float | getSliderOverlapWithSpace () |
|
float | getTextComponentHeight () |
|
float | getStandardKnobSize () |
|
float | getTotalKnobHeight () |
|
float | getTextSectionYOffset () |
|
float | getModButtonWidth () |
|
float | getModFontSize () |
|
float | getWidgetMargin () |
|
float | getWidgetRounding () |
|
float | getSizeRatio () const |
|
int | getPopupWidth () const |
|
int | getDualPopupWidth () const |
|
virtual | ~ButtonListener () |
| Virtual destructor.
|
|
virtual | ~Listener () |
| Virtual destructor for proper cleanup.
|
|
virtual void | textMouseUp (const MouseEvent &e) |
|
virtual | ~Listener () |
|
virtual | ~Listener () |
| Virtual destructor.
|
|
A UI section representing an oscillator in the synthesizer.
This class manages the visual and interactive components of a single oscillator, including wavetable display, parameter controls (spectral morph, distortion, destination routing, unison parameters), pitch quantization, and preset selection. It integrates with the Vital backend via modulations and can load and manipulate wavetables.