26class ArrangerGridCanvasItem :
public QCanvasPainterItem
29 QML_NAMED_ELEMENT (ArrangerGridCanvas)
35 qreal pxPerTick READ pxPerTick WRITE setPxPerTick NOTIFY pxPerTickChanged)
36 Q_PROPERTY (qreal scrollX READ scrollX WRITE setScrollX NOTIFY scrollXChanged)
38 qreal scrollXPlusWidth READ scrollXPlusWidth WRITE setScrollXPlusWidth
39 NOTIFY scrollXPlusWidthChanged)
41 QColor lineColor READ lineColor WRITE setLineColor NOTIFY lineColorChanged)
43 qreal barLineOpacity READ barLineOpacity WRITE setBarLineOpacity NOTIFY
44 barLineOpacityChanged)
46 qreal beatLineOpacity READ beatLineOpacity WRITE setBeatLineOpacity NOTIFY
47 beatLineOpacityChanged)
49 qreal sixteenthLineOpacity READ sixteenthLineOpacity WRITE
50 setSixteenthLineOpacity NOTIFY sixteenthLineOpacityChanged)
52 qreal detailMeasurePxThreshold READ detailMeasurePxThreshold WRITE
53 setDetailMeasurePxThreshold NOTIFY detailMeasurePxThresholdChanged)
56 explicit ArrangerGridCanvasItem (QQuickItem * parent =
nullptr);
58 QCanvasPainterItemRenderer * createItemRenderer ()
const override;
62 qreal pxPerTick ()
const {
return px_per_tick_; }
63 void setPxPerTick (qreal px);
64 qreal scrollX ()
const {
return scroll_x_; }
65 void setScrollX (qreal x);
66 qreal scrollXPlusWidth ()
const {
return scroll_x_plus_width_; }
67 void setScrollXPlusWidth (qreal w);
68 QColor lineColor ()
const {
return line_color_; }
69 void setLineColor (
const QColor &color);
70 qreal barLineOpacity ()
const {
return bar_line_opacity_; }
71 void setBarLineOpacity (qreal opacity);
72 qreal beatLineOpacity ()
const {
return beat_line_opacity_; }
73 void setBeatLineOpacity (qreal opacity);
74 qreal sixteenthLineOpacity ()
const {
return sixteenth_line_opacity_; }
75 void setSixteenthLineOpacity (qreal opacity);
76 qreal detailMeasurePxThreshold ()
const
78 return detail_measure_px_threshold_;
80 void setDetailMeasurePxThreshold (qreal threshold);
83 void tempoMapChanged ();
84 void pxPerTickChanged ();
85 void scrollXChanged ();
86 void scrollXPlusWidthChanged ();
87 void lineColorChanged ();
88 void barLineOpacityChanged ();
89 void beatLineOpacityChanged ();
90 void sixteenthLineOpacityChanged ();
91 void detailMeasurePxThresholdChanged ();
94 QPointer<dsp::TempoMapWrapper> tempo_map_;
95 qreal px_per_tick_ = 0.0;
96 qreal scroll_x_ = 0.0;
97 qreal scroll_x_plus_width_ = 0.0;
98 QColor line_color_ = Qt::gray;
99 qreal bar_line_opacity_ = 0.8;
100 qreal beat_line_opacity_ = 0.6;
101 qreal sixteenth_line_opacity_ = 0.4;
102 qreal detail_measure_px_threshold_ = 32.0;