122 void pointChanged(
int index, Point<float> position,
bool mouse_up)
override;
135 void pointAdded(
int index, Point<float> position)
override;
148 void pointsAdded(
int index,
int num_points_added)
override;
155 void pointsRemoved(
int index,
int num_points_removed)
override;
Interface for classes that want to receive notifications about line editor changes.
Definition line_editor.h:86
virtual void renderOpenGlComponents(OpenGlWrapper &open_gl, bool animate)
Renders all OpenGL components in this section and sub-sections.
Definition synth_section.cpp:357
virtual void animate(bool animate)
Triggers animation state change in sub-sections if needed.
Definition synth_section.cpp:822
float getSizeRatio() const
Definition synth_section.h:765
A keyframe class that represents a particular line-based waveform configuration at a given position.
Definition wave_line_source.h:36
A WavetableComponent that generates waveforms from a series of line segments.
Definition wave_line_source.h:23
An overlay for controlling a WaveLineSource in the wavetable editor.
Definition wave_line_source_overlay.h:18
void lineEditorScrolled(const MouseEvent &e, const MouseWheelDetails &wheel) override
Called when the line editor is scrolled.
Definition wave_line_source_overlay.cpp:141
static constexpr int kDefaultXGrid
Default horizontal grid size.
Definition wave_line_source_overlay.h:20
std::unique_ptr< SynthSlider > vertical_grid_
Control for vertical grid size.
Definition wave_line_source_overlay.h:188
void togglePaintMode(bool enabled, bool temporary_switch) override
Toggles painting mode (not used in this overlay).
Definition wave_line_source_overlay.h:99
std::unique_ptr< LineEditor > editor_
Line editor for modifying line source points.
Definition wave_line_source_overlay.h:184
std::unique_ptr< SynthSlider > horizontal_grid_
Control for horizontal grid size.
Definition wave_line_source_overlay.h:187
std::unique_ptr< LineGenerator > default_line_generator_
Default line generator model.
Definition wave_line_source_overlay.h:183
void powersChanged(bool mouse_up) override
Callback when line powers/curvature change.
Definition wave_line_source_overlay.cpp:160
std::unique_ptr< SynthSlider > pull_power_
Control for pull power parameter.
Definition wave_line_source_overlay.h:186
WaveLineSource * line_source_
The associated WaveLineSource.
Definition wave_line_source_overlay.h:180
std::unique_ptr< Component > vertical_incrementers_
Incrementer buttons for vertical grid slider.
Definition wave_line_source_overlay.h:191
WaveLineSourceOverlay()
Constructor.
Definition wave_line_source_overlay.cpp:8
void sliderValueChanged(Slider *moved_slider) override
Called when a slider in this overlay changes its value.
Definition wave_line_source_overlay.cpp:242
virtual void setEditBounds(Rectangle< int > bounds) override
Sets the editing bounds for the UI controls.
Definition wave_line_source_overlay.cpp:104
void sliderDragEnded(Slider *moved_slider) override
Called when a slider in this overlay finishes being dragged.
Definition wave_line_source_overlay.cpp:258
void pointsRemoved(int index, int num_points_removed) override
Callback when multiple points are removed.
Definition wave_line_source_overlay.cpp:222
std::unique_ptr< Slider > interpolation_selector_
Possibly unused, defined in code for future functionality.
Definition wave_line_source_overlay.h:193
void pointAdded(int index, Point< float > position) override
Callback when a line point is added.
Definition wave_line_source_overlay.cpp:167
virtual void frameDragged(WavetableKeyframe *keyframe, int position) override
Called when a frame is dragged, but this overlay does not respond to frame dragging.
Definition wave_line_source_overlay.h:56
std::unique_ptr< Component > horizontal_incrementers_
Incrementer buttons for horizontal grid slider.
Definition wave_line_source_overlay.h:190
void importLfo() override
Imports an LFO (not used in this overlay).
Definition wave_line_source_overlay.h:109
virtual bool setTimeDomainBounds(Rectangle< int > bounds) override
Sets the bounding box for the time domain display area (line editor).
Definition wave_line_source_overlay.cpp:136
void pointsAdded(int index, int num_points_added) override
Callback when multiple points are added.
Definition wave_line_source_overlay.cpp:185
void renderOpenGlComponents(OpenGlWrapper &open_gl, bool animate) override
Renders any openGL components, including the line editor.
Definition wave_line_source_overlay.h:76
void setPhase(float phase) override
Sets the waveform phase (not used here).
Definition wave_line_source_overlay.h:85
static constexpr int kDefaultYGrid
Default vertical grid size.
Definition wave_line_source_overlay.h:21
void pointChanged(int index, Point< float > position, bool mouse_up) override
Callback when a line point changes its position.
Definition wave_line_source_overlay.cpp:153
virtual void frameSelected(WavetableKeyframe *keyframe) override
Called when a new frame is selected in the wavetable editor.
Definition wave_line_source_overlay.cpp:85
void setLineSource(WaveLineSource *line_source)
Sets the WaveLineSource associated with this overlay.
Definition wave_line_source_overlay.h:173
static constexpr float kFillAlpha
Alpha value for fill rendering.
Definition wave_line_source_overlay.h:22
void fileLoaded() override
Callback for file loading completion (not used here).
Definition wave_line_source_overlay.cpp:149
virtual ~WaveLineSourceOverlay()
Destructor.
Definition wave_line_source_overlay.cpp:75
void exportLfo() override
Exports an LFO (not used in this overlay).
Definition wave_line_source_overlay.h:114
WaveLineSource::WaveLineSourceKeyframe * current_frame_
Currently selected frame data.
Definition wave_line_source_overlay.h:181
void pointRemoved(int index) override
Callback when a point is removed.
Definition wave_line_source_overlay.cpp:205
void resized() override
Called when the overlay is resized.
Definition wave_line_source_overlay.cpp:77
A base overlay component for editing and interacting with a wavetable component's parameters.
Definition wavetable_component_overlay.h:22
Represents a single state of a waveform at a specific position in a wavetable.
Definition wavetable_keyframe.h:35
A helper struct containing references to OpenGL context, shaders, and display scale.
Definition shaders.h:174