Loading...
Searching...
No Matches
ScriptCommand.hpp
1#pragma once
2#include <JS/Commands/JSCommandFactory.hpp>
3
4#include <score/command/Command.hpp>
5
6#include <QByteArray>
7#include <QString>
8
9namespace JS
10{
27class ScriptCommand final : public score::Command
28{
29 SCORE_COMMAND_DECL(JS::CommandFactoryName(), ScriptCommand, "Script edit")
30public:
31 ScriptCommand(QString handler, QByteArray undoPayload, QByteArray redoPayload);
32
33 void undo(const score::DocumentContext& ctx) const override;
34 void redo(const score::DocumentContext& ctx) const override;
35
36private:
37 void serializeImpl(DataStreamInput& s) const override;
38 void deserializeImpl(DataStreamOutput& s) override;
39
40 void dispatch(const QByteArray& payload) const;
41
42 QString m_handler;
43 QByteArray m_undo;
44 QByteArray m_redo;
45};
46}
An undoable edit performed by a script.
Definition ScriptCommand.hpp:28
The Command class.
Definition Command.hpp:34
Definition DataStreamHelpers.hpp:99
Definition DataStreamHelpers.hpp:103
Definition DocumentContext.hpp:18