ShowRackInViewModel.hpp
1 #pragma once
2 #include <Scenario/Commands/ScenarioCommandFactory.hpp>
3 
4 #include <score/command/Command.hpp>
5 #include <score/model/Identifier.hpp>
6 #include <score/model/path/Path.hpp>
7 #include <score/tools/std/Optional.hpp>
8 
9 #include <score_plugin_scenario_export.h>
10 namespace Scenario
11 {
12 class IntervalModel;
13 namespace Command
14 {
21 class SCORE_PLUGIN_SCENARIO_EXPORT ShowRack final : public score::Command
22 {
23  SCORE_COMMAND_DECL(CommandFactoryName(), ShowRack, "Show a rack")
24 public:
26 
27  void undo(const score::DocumentContext& ctx) const override;
28  void redo(const score::DocumentContext& ctx) const override;
29 
30 protected:
31  void serializeImpl(DataStreamInput&) const override;
32  void deserializeImpl(DataStreamOutput&) override;
33 
34 private:
35  Path<IntervalModel> m_intervalViewPath;
36  bool m_old{};
37 };
38 }
39 }
The Path class is a typesafe wrapper around ObjectPath.
Definition: Path.hpp:52
The ShowRackInViewModel class.
Definition: ShowRackInViewModel.hpp:22
Definition: IntervalModel.hpp:50
The Command class.
Definition: Command.hpp:34
Main plug-in of score.
Definition: score-plugin-dataflow/Dataflow/PortItem.hpp:14
Definition: DataStreamHelpers.hpp:99
Definition: DataStreamHelpers.hpp:103
Definition: DocumentContext.hpp:18