LeviLamina
Loading...
Searching...
No Matches
TransactionManagerServiceProvider.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/editor/EntityOperation.h"
7#include "mc/deps/scripting/runtime/Result.h"
8#include "mc/deps/scripting/runtime/Result_deprecated.h"
9
10// auto generated forward declare list
11// clang-format off
12class Actor;
13class BlockPos;
15namespace Editor::Selection { class SelectionContainer; }
16namespace Editor::Transactions { class TransactionContext; }
17namespace Scripting { struct Error; }
18// clang-format on
19
20namespace Editor::Services {
21
23public:
24 // virtual functions
25 // NOLINTBEGIN
26 // vIndex: 0
27 virtual ~TransactionManagerServiceProvider() = default;
28
29 // vIndex: 1
30 virtual void addTransaction(::std::unique_ptr<::Editor::Transactions::TransactionContext>) = 0;
31
32 // vIndex: 2
33 virtual void clearTransactions() = 0;
34
35 // vIndex: 3
36 virtual ::Scripting::Result<void> undo() = 0;
37
38 // vIndex: 4
39 virtual ::Scripting::Result<void> redo() = 0;
40
41 // vIndex: 5
42 virtual uint64 undoSize() const = 0;
43
44 // vIndex: 6
45 virtual uint64 redoSize() const = 0;
46
47 // vIndex: 7
48 virtual ::Scripting::Result_deprecated<bool> trackBlockChangeList(::std::vector<::BlockPos> const&) = 0;
49
50 // vIndex: 8
51 virtual ::Scripting::Result_deprecated<bool> trackBlockChangeArea(::BlockPos const&, ::BlockPos const&) = 0;
52
53 // vIndex: 9
54 virtual ::Scripting::Result_deprecated<bool>
55 trackBlockChangeSelection(::Editor::Selection::SelectionContainer const&) = 0;
56
57 // vIndex: 10
58 virtual ::Scripting::Result_deprecated<bool> trackBlockChangeCompoundBlockVolume(::CompoundBlockVolume const&) = 0;
59
60 // vIndex: 11
61 virtual ::Scripting::Result<bool, ::Scripting::Error>
62 addEntityOperation(::Actor*, ::Editor::Transactions::EntityOperation::OperationType const) = 0;
63
64 // vIndex: 12
65 virtual ::Scripting::Result_deprecated<int> commitTrackedChanges() = 0;
66
67 // vIndex: 13
68 virtual ::Scripting::Result_deprecated<int> discardTrackedChanges() = 0;
69
70 // vIndex: 14
71 virtual ::Scripting::Result_deprecated<bool> openTransaction(::std::string const& name) = 0;
72
73 // vIndex: 15
74 virtual ::Scripting::Result_deprecated<bool> commitOpenTransaction() = 0;
75
76 // vIndex: 16
77 virtual ::Scripting::Result_deprecated<bool> discardOpenTransaction() = 0;
78
79 // vIndex: 17
80 virtual ::Scripting::Result_deprecated<bool>
81 addUserDefinedOperation(::std::string const&, ::std::string const&, ::std::function<::Scripting::Result<void>(::std::string const&)>, ::std::function<::Scripting::Result<void>(::std::string const&)>) = 0;
82
83 // vIndex: 18
84 virtual uint64 pendingOperationsSize() const = 0;
85
86 // vIndex: 19
87 virtual bool hasOpenTransaction() const = 0;
88
89 // vIndex: 20
90 virtual void clearAllTransactionData() = 0;
91
92 // vIndex: 21
93 virtual bool isBusy() const = 0;
94 // NOLINTEND
95
96public:
97 // static variables
98 // NOLINTBEGIN
99 MCAPI static ::std::add_lvalue_reference_t<char const[]> ERROR_BUSY_SERVICE();
100
101 MCAPI static ::std::add_lvalue_reference_t<char const[]> ERROR_NO_OPEN_TRANSACTION();
102 // NOLINTEND
103
104public:
105 // destructor thunk
106 // NOLINTBEGIN
107
108 // NOLINTEND
109
110public:
111 // virtual function thunks
112 // NOLINTBEGIN
113
114 // NOLINTEND
115};
116
117} // namespace Editor::Services
Definition Actor.h:104
Definition BlockPos.h:18
Definition CompoundBlockVolume.h:18
Definition SelectionContainer.h:26
Definition TransactionManagerServiceProvider.h:22
Definition Result.h:8
Definition TransactionContext.h:5