2 #include <Scenario/Document/Minimap/Minimap.hpp>
3 #include <Scenario/Document/ScenarioDocument/ScenarioScene.hpp>
4 #include <Scenario/Document/ScenarioDocument/TimeBar.hpp>
5 #include <Scenario/Document/TimeRuler/TimeRuler.hpp>
6 #include <Scenario/Document/TimeRuler/TimeRulerGraphicsView.hpp>
8 #include <score/graphics/ArrowDialog.hpp>
9 #include <score/graphics/GraphicsProxyObject.hpp>
10 #include <score/plugins/documentdelegate/DocumentDelegateView.hpp>
12 #include <QGraphicsView>
17 #include <score_plugin_scenario_export.h>
24 class ProcessGraphicsView;
32 class SceneGraduations;
36 struct DocumentContext;
37 struct GUIApplicationContext;
44 class IntervalDurations;
55 void scrollHorizontal(
double dx);
56 QRectF visibleRect()
const noexcept;
58 QPointer<score::ArrowDialog> currentPopup{};
62 bool timebarPlaying{};
63 bool timebarVisible{};
66 void drawForeground(QPainter* painter,
const QRectF& rect)
override;
67 void sizeChanged(
const QSize& arg_1)
68 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, sizeChanged, arg_1)
69 void scrolled(
int arg_1) E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, scrolled, arg_1)
70 void focusedOut() E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, focusedOut)
71 void horizontalZoom(QPointF pixDelta, QPointF pos)
72 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, horizontalZoom, pixDelta, pos)
73 void verticalZoom(QPointF pixDelta, QPointF pos)
74 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, verticalZoom, pixDelta, pos)
76 void visibleRectChanged(QRectF r)
77 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, visibleRectChanged, r)
78 void dropRequested(QPoint pos,
const QMimeData* mime)
79 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, dropRequested, pos, mime)
80 void emptyContextMenuRequested(QPoint pos)
81 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, emptyContextMenuRequested, pos)
84 void resizeEvent(QResizeEvent* ev)
override;
85 void scrollContentsBy(
int dx,
int dy)
override;
86 void wheelEvent(QWheelEvent* event)
override;
87 void keyPressEvent(QKeyEvent* event)
override;
88 void keyReleaseEvent(QKeyEvent* event)
override;
89 void focusOutEvent(QFocusEvent* event)
override;
90 void leaveEvent(QEvent* event)
override;
91 void mousePressEvent(QMouseEvent* event)
override;
92 void mouseMoveEvent(QMouseEvent* event)
override;
93 void mouseReleaseEvent(QMouseEvent* event)
override;
94 void dragEnterEvent(QDragEnterEvent* event)
override;
95 void dragMoveEvent(QDragMoveEvent* event)
override;
96 void dragLeaveEvent(QDragLeaveEvent* event)
override;
97 void dropEvent(QDropEvent* event)
override;
98 void contextMenuEvent(QContextMenuEvent* event)
override;
99 bool event(QEvent*)
override;
101 void hoverEnterEvent(QHoverEvent* event);
102 void hoverMoveEvent(QHoverEvent* event);
103 void hoverLeaveEvent(QHoverEvent* event);
105 void checkAndRemoveCurrentDialog(QPoint pos);
110 std::chrono::steady_clock::time_point m_lastwheel;
111 bool m_opengl{
false};
123 QWidget* getWidget()
override;
131 qreal viewWidth()
const;
133 QGraphicsView& rulerView() {
return m_timeRulerView; }
137 Minimap& minimap() {
return m_minimap; }
139 QRectF viewportRect()
const;
140 QRectF visibleSceneRect()
const;
142 void showRulers(
bool);
143 void ready()
override;
146 void elementsScaleChanged(
double arg_1) W_SIGNAL(elementsScaleChanged, arg_1);
147 void setLargeView() W_SIGNAL(setLargeView);
148 void timeRulerChanged() W_SIGNAL(timeRulerChanged);
151 void timerEvent(QTimerEvent* event)
override;
158 QGraphicsScene m_timeRulerScene;
161 QGraphicsScene m_minimapScene;
169 Q_DECLARE_METATYPE(
const QMimeData*)
170 W_REGISTER_ARGTYPE(
const QMimeData*)
Definition: GraphicsProxyObject.hpp:8
Definition: IntervalDurations.hpp:23
Definition: IntervalView.hpp:34
Definition: TimeRulerGraphicsView.hpp:11
Definition: Minimap.hpp:16
Definition: ScenarioDocumentView.hpp:48
Definition: ScenarioDocumentView.hpp:116
Definition: ScenarioScene.hpp:9
Definition: TimeRuler.hpp:36
Definition: TimeRulerGraphicsView.hpp:6
Definition: DocumentDelegateView.hpp:10
Main plug-in of score.
Definition: score-plugin-dataflow/Dataflow/PortItem.hpp:14
Base toolkit upon which the software is built.
Definition: Application.cpp:90
Definition: DocumentContext.hpp:18
Specializes ApplicationContext with the QMainWindow.
Definition: GUIApplicationContext.hpp:15