23class WaveformCanvasItem :
public QCanvasPainterItem
28 QColor waveformColor READ waveformColor WRITE setWaveformColor NOTIFY
31 QColor outlineColor READ outlineColor WRITE setOutlineColor NOTIFY
35 explicit WaveformCanvasItem (QQuickItem * parent =
nullptr);
37 QCanvasPainterItemRenderer * createItemRenderer ()
const override;
39 QColor waveformColor ()
const {
return waveform_color_; }
40 void setWaveformColor (
const QColor &color);
41 QColor outlineColor ()
const {
return outline_color_; }
42 void setOutlineColor (
const QColor &color);
44 const juce::AudioSampleBuffer * audioBuffer ()
const
46 return (audio_buffer_.getNumSamples () > 0) ? &audio_buffer_ :
nullptr;
65 juce::AudioSampleBuffer audio_buffer_;
68 void waveformColorChanged ();
69 void outlineColorChanged ();
72 QColor waveform_color_;
73 QColor outline_color_;
74 uint64_t buffer_generation_ = 0;