|
| WavetableEditSection (int index, WavetableCreator *wavetable_creator) |
| Constructs a WavetableEditSection.
|
|
virtual | ~WavetableEditSection () |
| Destructor.
|
|
Rectangle< int > | getFrameEditBounds () |
| Gets the bounds of the frame editing area.
|
|
Rectangle< int > | getTimelineBounds () |
| Gets the bounds of the timeline area.
|
|
void | paintBackground (Graphics &g) override |
| Paints the background of the wavetable edit section, including children.
|
|
void | paintBackgroundShadow (Graphics &g) override |
| Paints any background shadow or tab shadows for the section.
|
|
void | resized () override |
| Called when the component is resized, arranges the layout of UI elements.
|
|
void | reset () override |
| Resets the editing section, clearing and re-initializing components.
|
|
void | visibilityChanged () override |
| Called when visibility changes, e.g., updating UI if made visible.
|
|
void | mouseWheelMove (const MouseEvent &e, const MouseWheelDetails &wheel) override |
| Handles mouse wheel movement for zooming frequency domain views.
|
|
void | componentAdded (WavetableComponent *component) override |
| Callback when a wavetable component is added to the list.
|
|
void | componentRemoved (WavetableComponent *component) override |
| Callback when a wavetable component is removed.
|
|
void | componentsReordered () override |
| Called when components are reordered.
|
|
void | componentsChanged () override |
| Callback when components in the list change.
|
|
int | getTopHeight () |
| Gets the top section height for title and controls.
|
|
void | playheadMoved (int position) override |
| Callback for when the playhead moves to a different frame.
|
|
void | setWaveFrameSlider (Slider *slider) |
| Sets the WaveFrame slider to reflect current editing frame position.
|
|
void | frameDoneEditing () override |
| Callback when a frame finishes editing, triggers a waveform re-render.
|
|
void | frameChanged () override |
| Callback when a frame changes, triggers a display re-render.
|
|
void | prevClicked () override |
| Callback when 'previous' is clicked, attempts to load previous wavetable.
|
|
void | nextClicked () override |
| Callback when 'next' is clicked, attempts to load next wavetable.
|
|
void | textMouseDown (const MouseEvent &e) override |
| Callback when text is clicked, possibly showing a browser to load wavetable.
|
|
void | loadDefaultWavetable () |
| Loads the default wavetable (initializes a blank state).
|
|
void | saveAsWavetable () |
| Saves the current wavetable state as a file.
|
|
void | importWavetable () |
| Imports an external wavetable file.
|
|
void | exportWavetable () |
| Exports the current wavetable as a .vitaltable file.
|
|
void | exportToWav () |
| Exports the current wavetable frames as a .wav file.
|
|
void | loadFile (const File &wavetable_file) override |
| Loads a wavetable file from disk.
|
|
File | getCurrentFile () override |
| Gets the current wavetable file being edited.
|
|
void | loadWavetable (json &wavetable_data) |
| Loads a wavetable from JSON data.
|
|
json | getWavetableJson () |
| Gets the current wavetable state as JSON.
|
|
bool | loadAudioAsWavetable (String name, InputStream *audio_stream, WavetableCreator::AudioFileLoadStyle style) |
| Loads audio data as a wavetable.
|
|
void | resynthesizeToWavetable () |
| Resynthesizes the current preset into a wavetable.
|
|
virtual void | buttonClicked (Button *clicked_button) override |
| Handles button clicks for menu, settings, exit, etc.
|
|
virtual void | positionsUpdated () override |
| Callback for when positions in the wavetable organizer are updated.
|
|
virtual void | frameSelected (WavetableKeyframe *keyframe) override |
| Callback when a frame is selected in the wavetable organizer.
|
|
virtual void | frameDragged (WavetableKeyframe *keyframe, int position) override |
| Callback when a frame is dragged to a new position.
|
|
virtual void | wheelMoved (const MouseEvent &e, const MouseWheelDetails &wheel) override |
| Callback for wheel movements in the component list area.
|
|
void | renderOpenGlComponents (OpenGlWrapper &open_gl, bool animate) override |
| Renders the OpenGL components, including overlays.
|
|
void | setPowerScale (bool power_scale) |
| Sets whether the frequency display uses power scale or amplitude scale.
|
|
void | setZoom (int zoom) |
| Sets the zoom level for frequency domain rendering.
|
|
void | clear () |
| Clears the current wavetable editing state.
|
|
void | init () |
| Initializes the wavetable state after loading or clearing.
|
|
std::string | getLastBrowsedWavetable () |
| Gets the last browsed wavetable file.
|
|
std::string | getName () |
| Gets the current wavetable name.
|
|
| 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.
|
|
virtual void | setSkinValues (const Skin &skin, bool top_level) |
| Sets skin values (colors, sizes) and applies them to sub-sections.
|
|
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 std::string | getFileName () |
| Gets the name of the currently loaded file. Overridden by subclasses.
|
|
virtual std::string | getFileAuthor () |
| Gets the author metadata of the currently loaded file. Overridden by subclasses.
|
|
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 | 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.
|
|
virtual void | setActive (bool active) |
| Sets the active state of this section and sub-sections.
|
|
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 | setAllValues (vital::control_map &controls) |
| Sets values for all known parameters from a control map.
|
|
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) |
|
A UI section for editing, visualizing, and managing wavetables.
This section provides a sophisticated interface for loading, editing, and saving wavetables. Users can manipulate time- and frequency-domain representations, resynthesize wavetables, and manage their frame components. The section uses multiple subcomponents such as waveform editors, frequency domain bar renderers, component lists, organizers, and overlays to facilitate detailed wavetable editing.