载入中...
搜索中...
未找到
eve::editor::ActionTimelineDocumentWorkspace类 参考

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]

eve::editor::ActionTimelineDocumentWorkspace::ActionTimelineDocumentWorkspace ( DocumentService &  documents)
explicit

Bind a non-owning document service that outlives this workspace.

在文件 ActionTimelineEditor.cpp 第 1132 行定义.

◆ ActionTimelineDocumentWorkspace() [2/3]

eve::editor::ActionTimelineDocumentWorkspace::ActionTimelineDocumentWorkspace ( const ActionTimelineDocumentWorkspace &  )
delete

Tab editors are uniquely owned; the workspace is move-only.

◆ ActionTimelineDocumentWorkspace() [3/3]

eve::editor::ActionTimelineDocumentWorkspace::ActionTimelineDocumentWorkspace ( ActionTimelineDocumentWorkspace &&  )
default

Action timeline document workspace.

成员函数说明

◆ activate()

Result< void > eve::editor::ActionTimelineDocumentWorkspace::activate ( const DocumentId &  document)

Activate an already-open tab.

在文件 ActionTimelineEditor.cpp 第 1195 行定义.

◆ activeDocument()

const DocumentId & eve::editor::ActionTimelineDocumentWorkspace::activeDocument ( ) const
inlinenoexcept

Stable active document identity, or empty when no tab is open.

在文件 ActionTimelineEditor.h 第 395 行定义.

◆ activeEditor()

ActionTimelineEditor * eve::editor::ActionTimelineDocumentWorkspace::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.

参数
keyStable asset key; Timeline is the expected document kind.
titleUser-visible tab title.
resourceUriDocumentService resource URI used for persistence.
initialTimelineInitial 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]

ActionTimelineDocumentWorkspace & eve::editor::ActionTimelineDocumentWorkspace::operator= ( ActionTimelineDocumentWorkspace &&  )
default

Operator =.

◆ operator=() [2/2]

ActionTimelineDocumentWorkspace & eve::editor::ActionTimelineDocumentWorkspace::operator= ( const ActionTimelineDocumentWorkspace &  )
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().


该类的文档由以下文件生成: