载入中...
搜索中...
未找到
eve::material_editing::MaterialDocumentTarget类 参考final

UI-neutral, serializable material authoring target. 更多...

#include <MaterialTarget.h>

类 eve::material_editing::MaterialDocumentTarget 继承关系图:
eve::editing::EditableTargetState eve::editing::IEditableTarget eve::editing::IDomainOperationTarget eve::editing::IDomainOperationTargetStaging eve::editing::IEditingSnapshotProvider eve::editing::IPropertyProvider eve::editing::IEditableTarget eve::editing::IEditableTarget

Public 成员函数

 MaterialDocumentTarget (std::string id)
 Material document target.
 
TargetId targetId () const override
 Target id.
 
TargetDescriptor describe () const override
 Describe.
 
void * queryCapability (const CapabilityId &capability) override
 Query an optional target capability.
 
Result< void > applyDomainOperation (const DomainOperation &operation) override
 Applies domain operation.
 
std::unique_ptr< IDomainOperationTarget > cloneDomainState () const override
 Clones domain state.
 
Result< void > commitDomainState (std::unique_ptr< IDomainOperationTarget > candidate) override
 Commits domain state.
 
eve::Result< eve::Revision > currentRevision (const SelectionSnapshot &selection) const override
 Current revision.
 
PropertySchema schema (const SelectionSnapshot &selection) const override
 Schema.
 
PropertyReadResult read (const SelectionSnapshot &selection, const PropertyPath &path) const override
 Reads .
 
Result< DomainOperation > makeSet (const SelectionSnapshot &selection, const PropertyPath &path, const EditorValue &value, PropertySetMode mode) const override
 Make set.
 
Result< DomainOperation > makeReset (const SelectionSnapshot &selection, const PropertyPath &path) const override
 Make reset.
 
EditorValue snapshotValue () const override
 Capture deterministic content suitable for DocumentService persistence.
 
Result< void > loadSnapshot (const EditorValue &snapshot)
 Replace content when opening a persisted material document.
 
std::vector< EditorDiagnostic > validate () const
 Validate cross-field authoring rules without mutating the target.
 
- Public 成员函数 继承自 eve::editing::EditableTargetState
 EditableTargetState (Revision initial=1)
 Constructs the shared state with an explicit initial revision.
 
EditRegion dirtyRegion () const override
 Return the accumulated dirty region.
 
void clearDirtyRegion () override
 Discard the dirty region; the revision does not change.
 
std::uint64_t revision () const override
 Return the current revision.
 
Revision revisionValue () const noexcept
 Return the revision as the shared protocol revision type.
 
- Public 成员函数 继承自 eve::editing::IEditableTarget
virtual ~IEditableTarget ()=default
 Releases IEditableTarget resources.
 
virtual void * queryCapability (const CapabilityId &capability)
 Query an optional stable capability.
 
template<class C >
eve::OptionalRef< C > capability ()
 Query a capability through its interface-owned stable identity.
 
template<class C >
eve::OptionalRef< const C > capability () const
 Capability.
 
template<class C >
C * query ()
 Queries query.
 
template<class C >
const C * query () const
 Queries query.
 
- Public 成员函数 继承自 eve::editing::IDomainOperationTarget
 ~IDomainOperationTarget () override=default
 Releases IDomainOperationTarget resources.
 
- Public 成员函数 继承自 eve::editing::IDomainOperationTargetStaging
virtual ~IDomainOperationTargetStaging ()=default
 Releases IDomainOperationTargetStaging resources.
 
- Public 成员函数 继承自 eve::editing::IEditingSnapshotProvider
virtual ~IEditingSnapshotProvider ()=default
 Releases IEditingSnapshotProvider resources.
 
- Public 成员函数 继承自 eve::editing::IPropertyProvider
virtual ~IPropertyProvider ()=default
 Releases IPropertyProvider resources.
 
virtual Result< DomainOperation > makeSet (const SelectionSnapshot &selection, const PropertyPath &path, const Value &value, PropertySetMode mode) const =0
 Make set.
 

额外继承的成员函数

- 静态 Public 成员函数 继承自 eve::editing::IEditingSnapshotProvider
static CapabilityId editingCapabilityId ()
 Stable capability identity shared by every editable domain target.
 
- 静态 Public 成员函数 继承自 eve::editing::IPropertyProvider
static CapabilityId editingCapabilityId ()
 Stable capability identity for generic property editing.
 
- Protected 成员函数 继承自 eve::editing::EditableTargetState
void widenDirty (int x, int y)
 Widen the dirty region without advancing the revision.
 
void widenDirty (const EditRegion &region)
 Widen the dirty region without advancing the revision.
 
void widenDirty ()
 Mark an unknown area dirty without advancing the revision.
 
void bumpRevision ()
 Advance the revision without touching the dirty region.
 
void setRevision (Revision revision)
 Adopt a revision observed elsewhere, without advancing it.
 
void setDirtyRegion (const EditRegion &region)
 Replace the dirty region wholesale, without advancing the revision.
 
void markDirty (int x, int y)
 Include one cell in the dirty region and advance the revision.
 
void markDirty (const EditRegion &region)
 Include a whole region and advance the revision.
 
void markDirty ()
 Mark an unknown area dirty and advance the revision.
 

详细描述

UI-neutral, serializable material authoring target.

在文件 MaterialTarget.h 第 27 行定义.

构造及析构函数说明

◆ MaterialDocumentTarget()

eve::material_editing::MaterialDocumentTarget::MaterialDocumentTarget ( std::string  id)
explicit

Material document target.

在文件 MaterialTarget.cpp 第 31 行定义.

成员函数说明

◆ applyDomainOperation()

Result< void > eve::material_editing::MaterialDocumentTarget::applyDomainOperation ( const DomainOperation &  operation)
overridevirtual

◆ cloneDomainState()

std::unique_ptr< IDomainOperationTarget > eve::material_editing::MaterialDocumentTarget::cloneDomainState ( ) const
overridevirtual

Clones domain state.

实现了 eve::editing::IDomainOperationTargetStaging.

在文件 MaterialTarget.cpp 第 77 行定义.

◆ commitDomainState()

Result< void > eve::material_editing::MaterialDocumentTarget::commitDomainState ( std::unique_ptr< IDomainOperationTarget >  candidate)
overridevirtual

Commits domain state.

实现了 eve::editing::IDomainOperationTargetStaging.

在文件 MaterialTarget.cpp 第 81 行定义.

◆ currentRevision()

eve::Result< eve::Revision > eve::material_editing::MaterialDocumentTarget::currentRevision ( const SelectionSnapshot &  selection) const
overridevirtual

◆ describe()

◆ loadSnapshot()

Result< void > eve::material_editing::MaterialDocumentTarget::loadSnapshot ( const EditorValue &  snapshot)

◆ makeReset()

Result< DomainOperation > eve::material_editing::MaterialDocumentTarget::makeReset ( const SelectionSnapshot &  selection,
const PropertyPath &  path 
) const
overridevirtual

Make reset.

实现了 eve::editing::IPropertyProvider.

在文件 MaterialTarget.cpp 第 148 行定义.

引用了 descriptor, eve::editing::PropertySchema::find(), makeSet(), path , 以及 eve::UuidIdAdapter< Tag >::value().

被这些函数引用 makeSet().

◆ makeSet()

Result< DomainOperation > eve::material_editing::MaterialDocumentTarget::makeSet ( const SelectionSnapshot &  selection,
const PropertyPath &  path,
const EditorValue &  value,
PropertySetMode  mode 
) const
override

◆ queryCapability()

void * eve::material_editing::MaterialDocumentTarget::queryCapability ( const CapabilityId &  capability)
override

Query an optional target capability.

返回
Borrowed pointer owned by this target, or null. @lifetime Valid until this target is destroyed or mutated.

在文件 MaterialTarget.cpp 第 44 行定义.

引用了 eve::editing::IEditableTarget::capability(), eve::editing::IEditingSnapshotProvider::editingCapabilityId() , 以及 eve::editing::IPropertyProvider::editingCapabilityId().

被这些函数引用 eve::material_editing::MaterialPublishingTarget::queryCapability().

◆ read()

PropertyReadResult eve::material_editing::MaterialDocumentTarget::read ( const SelectionSnapshot &  selection,
const PropertyPath &  path 
) const
overridevirtual

Reads .

实现了 eve::editing::IPropertyProvider.

在文件 MaterialTarget.cpp 第 101 行定义.

引用了 found , 以及 path.

◆ schema()

PropertySchema eve::material_editing::MaterialDocumentTarget::schema ( const SelectionSnapshot &  selection) const
overridevirtual

Schema.

实现了 eve::editing::IPropertyProvider.

在文件 MaterialTarget.cpp 第 99 行定义.

被这些函数引用 eve::editor::MaterialStudioController::beginInteraction().

◆ snapshotValue()

EditorValue eve::material_editing::MaterialDocumentTarget::snapshotValue ( ) const
overridevirtual

Capture deterministic content suitable for DocumentService persistence.

实现了 eve::editing::IEditingSnapshotProvider.

在文件 MaterialTarget.cpp 第 158 行定义.

引用了 path, properties, root , 以及 value.

◆ targetId()

TargetId eve::material_editing::MaterialDocumentTarget::targetId ( ) const
inlineoverridevirtual

Target id.

实现了 eve::editing::IEditableTarget.

在文件 MaterialTarget.h 第 38 行定义.

◆ validate()

std::vector< EditorDiagnostic > eve::material_editing::MaterialDocumentTarget::validate ( ) const

Validate cross-field authoring rules without mutating the target.

在文件 MaterialTarget.cpp 第 192 行定义.

引用了 found, path, eve::PreconditionViolation, eve::editing::ruleDiagnostic(), scale , 以及 value.

被这些函数引用 eve::editor::MaterialStudioController::cancelInteraction().


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