Loading...
Searching...
No Matches
FullViewIntervalView.hpp
1#pragma once
2#include <Scenario/Document/Interval/IntervalView.hpp>
3
4#include <QRect>
5
6#include <verdigris>
7
8class QGraphicsItem;
9class QPainter;
10class QStyleOptionGraphicsItem;
11class QWidget;
12
13namespace Scenario
14{
15class FullViewIntervalPresenter;
17{
18 W_OBJECT(FullViewIntervalView)
19
20public:
21 FullViewIntervalView(FullViewIntervalPresenter& presenter, QGraphicsItem* parent);
22
23 ~FullViewIntervalView() override;
24
25 void drawPaths(
26 QPainter& p, QRectF visibleRect, const score::Brush& defaultColor,
27 const Process::Style& skin);
28 void updatePaths() final override;
29 void updatePlayPaths() final override;
30 void updateOverlayPos();
31
32 QRectF boundingRect() const override;
33 void paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget)
34 override;
35
36 void setGuiWidth(double);
37
38 void setSelected(bool selected);
39 void setSnapLine(std::optional<double>);
40
41private:
42 void drawDashedPath(QPainter& p, QRectF visibleRect, const Process::Style& skin);
43 void drawPlayDashedPath(QPainter& p, QRectF visibleRect, const Process::Style& skin);
44 double m_guiWidth{};
45 std::optional<double> m_snapLine{};
46};
47}
Definition FullViewIntervalPresenter.hpp:30
Definition FullViewIntervalView.hpp:17
Definition IntervalView.hpp:34
Main plug-in of score.
Definition score-plugin-dataflow/Dataflow/PortItem.hpp:13
Definition ScenarioStyle.hpp:13
Definition Skin.hpp:55