Multi-document Montage workspace backed by the engine document service. 更多...
#include <ActionTimelineEditor.h>
Public 成员函数 | |
| ActionTimelineDocumentWorkspace (DocumentService &documents) | |
| Bind a non-owning document service that outlives this workspace. | |
| ActionTimelineDocumentWorkspace (const ActionTimelineDocumentWorkspace &)=delete | |
| Tab editors are uniquely owned; the workspace is move-only. | |
| ActionTimelineDocumentWorkspace & | operator= (const ActionTimelineDocumentWorkspace &)=delete |
| ActionTimelineDocumentWorkspace (ActionTimelineDocumentWorkspace &&)=default | |
| Action timeline document workspace. | |
| ActionTimelineDocumentWorkspace & | operator= (ActionTimelineDocumentWorkspace &&)=default |
| Operator =. | |
| Result< DocumentId > | open (DocumentKey key, std::string title, std::string resourceUri, action::ActionTimeline initialTimeline) |
| Open or activate one Montage asset document. | |
| Result< void > | activate (const DocumentId &document) |
| Activate an already-open tab. | |
| Result< DocumentSnapshot > | save (const DocumentId &document) |
| Save one exact canonical editor revision through DocumentService CAS persistence. | |
| Result< DocumentSnapshot > | reconcile (const DocumentId &document) |
| Reconcile a tab with external persistence, rejecting dirty conflicts without data loss. | |
| Result< void > | close (const DocumentId &document, ActionTimelineCloseMode mode) |
| Close a tab, rejecting unsaved work unless explicit discard is requested. | |
| Result< std::vector< ActionTimelineTabSnapshot > > | tabs () const |
| Ordered immutable tab projections for rendering a document bar. | |
| ActionTimelineEditor * | activeEditor () noexcept |
| Borrow the active editor. | |
| const DocumentId & | activeDocument () const noexcept |
| Stable active document identity, or empty when no tab is open. | |
详细描述
Multi-document Montage workspace backed by the engine document service.
This owner-thread-only coordinator owns tab editors and one shared deep-copy clipboard. The injected DocumentService remains the persistence authority and must outlive the workspace. Each save publishes the editor's canonical target snapshot to DocumentService before requesting its revision-qualified CAS save.
在文件 ActionTimelineEditor.h 第 355 行定义.
构造及析构函数说明
◆ ActionTimelineDocumentWorkspace() [1/3]
|
explicit |
Bind a non-owning document service that outlives this workspace.
在文件 ActionTimelineEditor.cpp 第 1132 行定义.
◆ ActionTimelineDocumentWorkspace() [2/3]
|
delete |
Tab editors are uniquely owned; the workspace is move-only.
◆ ActionTimelineDocumentWorkspace() [3/3]
|
default |
Action timeline document workspace.
成员函数说明
◆ activate()
| Result< void > eve::editor::ActionTimelineDocumentWorkspace::activate | ( | const DocumentId & | document | ) |
Activate an already-open tab.
在文件 ActionTimelineEditor.cpp 第 1195 行定义.
◆ activeDocument()
|
inlinenoexcept |
Stable active document identity, or empty when no tab is open.
在文件 ActionTimelineEditor.h 第 395 行定义.
◆ activeEditor()
|
noexcept |
Borrow the active editor.
- 返回
- Pointer owned by this workspace, invalidated by closing that tab. @lifetime Valid until close() removes the active document tab.
在文件 ActionTimelineEditor.cpp 第 1288 行定义.
◆ close()
| Result< void > eve::editor::ActionTimelineDocumentWorkspace::close | ( | const DocumentId & | document, |
| ActionTimelineCloseMode | mode | ||
| ) |
Close a tab, rejecting unsaved work unless explicit discard is requested.
在文件 ActionTimelineEditor.cpp 第 1251 行定义.
引用了 eve::editor::DocumentService::close(), dirty, eve::Result< T >::failure(), found, index, eve::editor::ProtectDirty , 以及 eve::editor::DocumentService::snapshot().
◆ open()
| Result< DocumentId > eve::editor::ActionTimelineDocumentWorkspace::open | ( | DocumentKey | key, |
| std::string | title, | ||
| std::string | resourceUri, | ||
| action::ActionTimeline | initialTimeline | ||
| ) |
Open or activate one Montage asset document.
- 参数
-
key Stable asset key; Timeline is the expected document kind. title User-visible tab title. resourceUri DocumentService resource URI used for persistence. initialTimeline Initial value used only when the store has no document.
在文件 ActionTimelineEditor.cpp 第 1156 行定义.
引用了 eve::editor::DocumentService::content(), eve::Result< T >::failure(), key, eve::editor::DocumentService::open(), eve::editor::Timeline, title, eve::editor::toEditorValue(), eve::action::ActionTimeline::toValue(), valid, eve::action::ActionTimeline::validate() , 以及 eve::UuidIdAdapter< Tag >::value().
◆ operator=() [1/2]
|
default |
Operator =.
◆ operator=() [2/2]
|
delete |
◆ reconcile()
| Result< DocumentSnapshot > eve::editor::ActionTimelineDocumentWorkspace::reconcile | ( | const DocumentId & | document | ) |
Reconcile a tab with external persistence, rejecting dirty conflicts without data loss.
在文件 ActionTimelineEditor.cpp 第 1227 行定义.
引用了 eve::editor::DocumentService::content(), eve::Result< T >::failure(), ok , 以及 eve::editor::DocumentService::reconcileExternal().
◆ save()
| Result< DocumentSnapshot > eve::editor::ActionTimelineDocumentWorkspace::save | ( | const DocumentId & | document | ) |
Save one exact canonical editor revision through DocumentService CAS persistence.
在文件 ActionTimelineEditor.cpp 第 1212 行定义.
引用了 eve::editor::DocumentService::executeSave(), eve::Result< T >::failure(), ok , 以及 eve::editor::DocumentService::requestSave().
◆ tabs()
| Result< std::vector< ActionTimelineTabSnapshot > > eve::editor::ActionTimelineDocumentWorkspace::tabs | ( | ) | const |
Ordered immutable tab projections for rendering a document bar.
在文件 ActionTimelineEditor.cpp 第 1274 行定义.
引用了 eve::editor::DocumentService::snapshot() , 以及 eve::UuidIdAdapter< Tag >::value().
该类的文档由以下文件生成:
- src/modules/action/editor/ActionTimelineEditor.h
- src/modules/action/editor/ActionTimelineEditor.cpp