44 void paint(Graphics& g)
override;
50 void mouseDown(
const MouseEvent& e)
override;
51 void mouseDrag(
const MouseEvent& e)
override;
52 void mouseMove(
const MouseEvent& e)
override;
53 void mouseExit(
const MouseEvent& e)
override;
67 int getHoverIndex(
const MouseEvent& e);
71 for (Listener* listener : listeners_)
72 listener->quantizeUpdated();
75 std::vector<Listener*> listeners_;
77 std::unique_ptr<ToggleButton> global_snap_button_;
111 void paint(Graphics& g)
override;
121 void mouseDown(
const MouseEvent& e)
override;
125 void mouseEnter(
const MouseEvent& e)
override;
129 void mouseExit(
const MouseEvent& e)
override;
147 std::vector<Listener*> listeners_;
A component that uses OpenGL to render a cached image of a JUCE component or custom drawing.
Definition open_gl_image_component.h:18
Base class for all synthesizer sections, providing UI layout, painting, and interaction logic.
Definition synth_section.h:193
Interface for objects that want to be notified when quantization changes.
Definition transpose_quantize.h:28
virtual void quantizeUpdated()=0
Called when the quantization selection or global snap changes.
virtual ~Listener()
Virtual destructor for proper cleanup.
Definition transpose_quantize.h:31
A callout component that allows selecting which notes are quantized for transposition.
Definition transpose_quantize.h:17
void buttonClicked(Button *clicked_button) override
Definition transpose_quantize.cpp:163
void mouseMove(const MouseEvent &e) override
Definition transpose_quantize.cpp:150
static constexpr float kTitleHeightRatio
The ratio of the title height to the total height.
Definition transpose_quantize.h:20
void mouseDrag(const MouseEvent &e) override
Definition transpose_quantize.cpp:124
void mouseExit(const MouseEvent &e) override
Definition transpose_quantize.cpp:158
TransposeQuantizeCallOut(bool *selected, bool *global_snap)
Definition transpose_quantize.cpp:56
void resized() override
Resizes and lays out the components within the callout.
Definition transpose_quantize.cpp:99
void mouseDown(const MouseEvent &e) override
Handles mouse events to enable/disable notes.
Definition transpose_quantize.cpp:107
static constexpr float kGlobalHeightRatio
The ratio of the global section height to the total height.
Definition transpose_quantize.h:22
void addQuantizeListener(Listener *listener)
Definition transpose_quantize.h:61
static constexpr float kTitleTextRatio
The ratio of the title text size to the title height.
Definition transpose_quantize.h:24
void paint(Graphics &g) override
Definition transpose_quantize.cpp:68
constexpr int kNotesPerOctave
Number of semitones per octave.
Definition common.h:51