LeviLamina
Loading...
Searching...
No Matches
ModalToolContainer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/scripting/runtime/Result.h"
7#include "mc/editor/datastore/EventType.h"
8#include "mc/editor/datastore/container/Container.h"
9
10// auto generated forward declare list
11// clang-format off
12namespace Editor::DataStore { struct PayloadDescription; }
13namespace Json { class Value; }
14// clang-format on
15
16namespace Editor::DataStore {
17
19public:
20 // member variables
21 // NOLINTBEGIN
24 // NOLINTEND
25
26public:
27 // prevent constructor by default
28 ModalToolContainer& operator=(ModalToolContainer const&);
31
32public:
33 // virtual functions
34 // NOLINTBEGIN
35 // vIndex: 0
36 virtual ~ModalToolContainer() /*override*/ = default;
37
38 // vIndex: 1
39 virtual void clear() /*override*/;
40 // NOLINTEND
41
42public:
43 // member functions
44 // NOLINTBEGIN
45 MCFOLD bool _createTool(::std::string const& id, ::Json::Value const& payload);
46
47 MCAPI void _onSelectedToolUpdated(::Json::Value const& current, ::Json::Value const& prev);
48
49 MCAPI void _onToolCreated(::std::string const& id);
50
51 MCAPI void _onToolDestroyed(::std::string const& id);
52
53 MCAPI void _onToolUpdated(::std::string const& id, ::std::string const& propName);
54
55 MCFOLD bool _removeTool(::std::string const& id);
56
57 MCFOLD ::Json::Value getDataPayload(::Editor::DataStore::PayloadDescription const& desc) const;
58
59 MCAPI ::Scripting::Result<void> handleDataEvent(
60 ::Editor::DataStore::EventType eventType,
61 ::Json::Value const& payload,
63 );
64
65 MCAPI ::Scripting::Result<void> handleSelectedToolEvent(
66 ::Editor::DataStore::EventType eventType,
67 ::Json::Value const& payload,
68 bool isNetworkEvent
69 );
70 // NOLINTEND
71
72public:
73 // static variables
74 // NOLINTBEGIN
75 MCAPI static ::std::add_lvalue_reference_t<char const[]> TAG_DATA();
76
77 MCAPI static ::std::add_lvalue_reference_t<char const[]> TAG_SELECTED_TOOL();
78 // NOLINTEND
79
80public:
81 // destructor thunk
82 // NOLINTBEGIN
83
84 // NOLINTEND
85
86public:
87 // virtual function thunks
88 // NOLINTBEGIN
89 MCAPI void $clear();
90 // NOLINTEND
91
92public:
93 // vftables
94 // NOLINTBEGIN
95 MCAPI static void** $vftable();
96 // NOLINTEND
97};
98
99} // namespace Editor::DataStore
Definition Container.h:7
Definition ModalToolContainer.h:18
Definition Value.h:16
Definition PayloadDescription.h:7
Definition Alias.h:14