Loading...
Searching...
No Matches
score-lib-process/Process/Commands/Properties.hpp
1#pragma once
2#include <Process/Commands/ProcessCommandFactory.hpp>
3#include <Process/Process.hpp>
4#include <Process/TimeValueSerialization.hpp>
5
6#include <score/command/AggregateCommand.hpp>
7#include <score/command/PropertyCommand.hpp>
8#include <score/model/path/PathSerialization.hpp>
9#include <score/tools/Unused.hpp>
10
11PROPERTY_COMMAND_T(Process, SetLoop, ProcessModel::p_loops, "Set process looping")
12SCORE_COMMAND_DECL_T(Process::SetLoop)
13PROPERTY_COMMAND_T(
14 Process, SetStartOffset, ProcessModel::p_startOffset, "Set start offset")
15SCORE_COMMAND_DECL_T(Process::SetStartOffset)
16PROPERTY_COMMAND_T(
17 Process, SetLoopDuration, ProcessModel::p_loopDuration, "Set loop duration")
18SCORE_COMMAND_DECL_T(Process::SetLoopDuration)
19
20PROPERTY_COMMAND_T(Process, MoveNode, ProcessModel::p_position, "Move node")
21SCORE_COMMAND_DECL_T(Process::MoveNode)
22PROPERTY_COMMAND_T(Process, ResizeNode, ProcessModel::p_size, "Resize node")
23SCORE_COMMAND_DECL_T(Process::ResizeNode)
24
25namespace Process
26{
27class MoveNodes final : public score::Command
28{
29 SCORE_COMMAND_DECL(Process::CommandFactoryName(), MoveNodes, "Move nodes")
30public:
31 MoveNodes(std::vector<const ProcessModel*> processes, QPointF delta);
32
33 void undo(const score::DocumentContext& ctx) const override;
34 void redo(const score::DocumentContext& ctx) const override;
35
36 void update(unused_t, QPointF delta);
37
38protected:
39 void serializeImpl(DataStreamInput& s) const override;
40 void deserializeImpl(DataStreamOutput& s) override;
41
42private:
43 std::vector<std::pair<Path<ProcessModel>, QPointF>> m_models;
44 QPointF m_delta;
45};
46
48{
49 SCORE_COMMAND_DECL(CommandFactoryName(), MoveNodesMacro, "Move nodes")
50};
51}
Definition score-lib-process/Process/Commands/Properties.hpp:28
Definition score-lib-process/Process/Commands/Properties.hpp:48
Allows for grouping of multiple commands in a single one.
Definition AggregateCommand.hpp:15
The Command class.
Definition Command.hpp:34
Base classes and tools to implement processes and layers.
Definition JSONVisitor.hpp:1115
Definition DataStreamHelpers.hpp:99
Definition DataStreamHelpers.hpp:103
Definition DocumentContext.hpp:18
Definition Unused.hpp:3