载入中...
搜索中...
未找到
EditorTransactionService.h
浏览该文件的文档.
48class EVENGINE_API_ORCHESTRATION LocalTransactionBackend final : public IEditorTransactionBackend {
Final validation and commit boundary for editor mutations.
Definition EditingAuthority.h:16
Editor consumer of the common transaction participant/coordinator protocol.
Definition EditorTransactionConsumer.h:69
Transaction boundary consumed by editor property and other UI models.
Definition EditorTransactionService.h:17
virtual Result< TransactionReceipt > redo()=0
Reapply the latest compensated transaction.
virtual Result< void > discard()=0
Discard pending work after reverting any provisional preview.
virtual Result< TransactionReceipt > undo()=0
Compensate the latest committed transaction.
virtual Result< TransactionReceipt > commit()=0
Publish the pending transaction and retain it for undo.
virtual Result< TransactionReceipt > retry()=0
Retry a failed commit while retaining its original operation list.
virtual ~IEditorTransactionBackend()=default
Releases IEditorTransactionBackend resources.
virtual Result< void > append(DomainOperation operation)=0
Append a serializable operation to the pending transaction.
virtual bool active() const noexcept=0
Whether a transaction is currently pending.
virtual Result< EditorDryRunReport > preview()=0
Validate the pending transaction without publishing target state.
virtual bool canUndo() const noexcept=0
Whether committed history can be compensated.
virtual bool canRedo() const noexcept=0
Whether compensated history can be reapplied.
virtual Result< TransactionId > begin(TransactionSpec specification)=0
Begin an explicit transaction without mutating its target.
Local transaction coordinator backed by an injected edit authority.
Definition EditorTransactionService.h:48
bool canUndo() const noexcept override
True when one or more committed transactions can be compensated.
Definition EditorTransactionService.h:77
void clear()
Clear pending work and local undo/redo history without mutating the authority target.
Definition EditorTransactionService.h:81
LocalTransactionBackend(IEditAuthority *authority=nullptr)
Bind a non-owning authority that outlives this backend.
Definition EditorTransactionService.h:51
bool active() const noexcept override
True while begin/append has an uncommitted transaction.
Definition EditorTransactionService.h:75
bool canRedo() const noexcept override
True when one or more compensated transactions can be reapplied.
Definition EditorTransactionService.h:79
Definition ActionPreviewController.cpp:6
ssq::Table project(HSQUIRRELVM vm, const eve::Result< void > &result)
Project a completed editing result that has no payload.
Definition EditorScriptProjection.h:28