2#include <Process/LayerView.hpp>
3#include <Process/Process.hpp>
4#include <Process/ProcessFactory.hpp>
6#include <Effect/EffectLayer.hpp>
8#include <score/graphics/RectItem.hpp>
12template <
typename Model_T>
22 QString prettyName()
const noexcept override
26 QString category()
const noexcept override
31 Descriptor descriptor(QString)
const noexcept override;
39 QString customConstructionData()
const noexcept override;
45 return new Model_T{duration, data, id, parent};
50 QObject* parent)
final override
52 return score::deserialize_dyn(vis, [&](
auto&& deserializer) {
53 return new Model_T{deserializer, parent};
58template <
typename Model_T>
61 static_assert(std::is_same<Model_T, void>::value,
"can't be used like this");
65template <
typename Model_T,
typename Item_T,
typename ExtView_T =
void>
79 QGraphicsItem* parent)
const final override
89 safe_cast<const Model_T&>(lm), safe_cast<EffectLayerView*>(v), context, parent};
92 auto item = makeItem(lm, context, rect);
93 item->setParentItem(rect);
99 QGraphicsItem* parent)
const override
101 return new Item_T{safe_cast<const Model_T&>(proc), ctx, parent};
108 return ((Model_T&)proc).hasExternalUI();
111 QWidget* makeExternalUI(
113 QWidget* parent)
const final override
118 if constexpr(!std::is_same_v<ExtView_T, void>)
119 return new ExtView_T{safe_cast<const Model_T&>(proc), ctx, parent};
Definition EffectFactory.hpp:67
Definition EffectLayer.hpp:32
Definition EffectLayer.hpp:16
Definition EffectFactory.hpp:14
Definition score-lib-process/Process/ProcessFactory.hpp:59
Definition LayerPresenter.hpp:34
Definition LayerView.hpp:21
The ProcessFactory class.
Definition score-lib-process/Process/ProcessFactory.hpp:35
The Process class.
Definition score-lib-process/Process/Process.hpp:61
Definition UuidKey.hpp:343
The id_base_t class.
Definition Identifier.hpp:57
Definition RectItem.hpp:64
Definition RectItem.hpp:12
Base classes and tools to implement processes and layers.
Definition JSONVisitor.hpp:1324
ProcessFlags
Various settings for processes.
Definition ProcessFlags.hpp:17
Definition ProcessContext.hpp:12
Definition score-lib-process/Process/ProcessMetadata.hpp:37
Definition TimeValue.hpp:21
The VisitorVariant struct.
Definition VisitorInterface.hpp:26
Definition ObjectMatches.hpp:6
Definition DocumentContext.hpp:18