Loading...
Searching...
No Matches
EffectLayer.hpp
1#pragma once
2#include <Process/LayerPresenter.hpp>
3#include <Process/LayerView.hpp>
4
5#include <verdigris>
6
7class QAction;
8namespace score
9{
10class QGraphicsDraggablePixmap;
11}
12namespace Process
13{
14
15class SCORE_LIB_PROCESS_EXPORT EffectLayerView : public Process::LayerView
16{
17public:
18 explicit EffectLayerView(QGraphicsItem* parent);
19 ~EffectLayerView() override;
20
21 void setWidth(qreal width, qreal defaultWidth);
22
23protected:
24 qreal m_defaultWidth{};
25
26private:
27 void paint_impl(QPainter*) const override;
28};
29
30class SCORE_LIB_PROCESS_EXPORT EffectLayerPresenter final
32{
33 W_OBJECT(EffectLayerPresenter)
34public:
37 const Process::Context& ctx, QObject* parent);
38 ~EffectLayerPresenter() override;
39
40 void setWidth(qreal width, qreal defaultWidth) override;
41 void setHeight(qreal val) override;
42 void putToFront() override;
43 void putBehind() override;
44 void on_zoomRatioChanged(ZoomRatio) override;
45 void parentGeometryChanged() override;
46 void fillContextMenu(
47 QMenu& menu, QPoint pos, QPointF scenepos,
48 const Process::LayerContextMenuManager&) final override;
49
50private:
52};
53
54SCORE_LIB_PROCESS_EXPORT
55void setupExternalUI(
56 const Process::ProcessModel& proc, const Process::LayerFactory& factory,
57 const score::DocumentContext& ctx, bool show);
58
59SCORE_LIB_PROCESS_EXPORT
60void setupExternalUI(
61 const Process::ProcessModel& proc, const score::DocumentContext& ctx, bool show);
62
63SCORE_LIB_PROCESS_EXPORT
64QGraphicsItem* makeExternalUIButton(
65 const Process::ProcessModel& proc, const score::DocumentContext& ctx, QObject* self,
66 QGraphicsItem* parent);
67
68SCORE_LIB_PROCESS_EXPORT
69score::QGraphicsDraggablePixmap* makePresetButton(
70 const Process::ProcessModel& proc, const score::DocumentContext& ctx, QObject* self,
71 QGraphicsItem* parent);
72
73SCORE_LIB_PROCESS_EXPORT
74void copyProcess(JSONReader& r, const Process::ProcessModel& proc);
75}
Definition JSONVisitor.hpp:52
Definition EffectLayer.hpp:32
Definition EffectLayer.hpp:16
Definition LayerContextMenu.hpp:38
Definition score-lib-process/Process/ProcessFactory.hpp:59
Definition LayerPresenter.hpp:34
Definition LayerView.hpp:21
The Process class.
Definition score-lib-process/Process/Process.hpp:61
Definition QGraphicsSelectablePixmapToggle.hpp:51
Base classes and tools to implement processes and layers.
Definition JSONVisitor.hpp:1324
Base toolkit upon which the software is built.
Definition Application.cpp:90
Definition ProcessContext.hpp:12
Definition DocumentContext.hpp:18