载入中...
搜索中...
未找到
eve::ui_editing::UiThemeCatalogTarget类 参考final

Serializable catalog of named UI themes with one active publication slot. 更多...

#include <UiTheme.h>

类 eve::ui_editing::UiThemeCatalogTarget 继承关系图:
eve::editing::EditableTargetState eve::editing::IEditableTarget eve::editing::IDomainOperationTarget eve::editing::IDomainOperationTargetStaging eve::editing::IPropertyProvider eve::editing::IEditingSnapshotProvider eve::editing::IEditableTarget eve::editing::IEditableTarget

Public 成员函数

 UiThemeCatalogTarget (std::string id)
 Construct a catalog seeded with built-in dark and light assets.
 
TargetId targetId () const override
 Target id.
 
TargetDescriptor describe () const override
 Describe.
 
void * queryCapability (const CapabilityId &capability) override
 Query Inspector and snapshot capabilities.
 
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.
 
const std::vector< UiThemeAsset > & themes () const noexcept
 Borrow authored themes in catalog order.
 
const ObjectId & activeId () const noexcept
 Active publication id; empty only if the catalog failed to seed.
 
Result< UiThemeAsset > theme (const ObjectId &id) const
 Copy one named theme, or NotFound.
 
std::string runtimeName (const ObjectId &id) const
 Runtime name written to ui::globalThemeName(): dark, light, or custom.
 
Result< DomainOperation > makeCreateFromPreset (const ObjectId &id, std::string name, UiThemeBasePreset preset) const
 Make create from preset.
 
Result< DomainOperation > makeDuplicate (const ObjectId &source, const ObjectId &id, std::string name) const
 Make duplicate.
 
Result< DomainOperation > makeRename (const ObjectId &id, std::string name) const
 Make rename.
 
Result< DomainOperation > makeDelete (const ObjectId &id) const
 Make delete.
 
Result< DomainOperation > makeSetActive (const ObjectId &id) const
 Make set active.
 
Result< DomainOperation > makeResetToBase (const ObjectId &id) const
 Make reset to base.
 
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
 Snapshot value.
 
Result< void > loadSnapshot (const EditorValue &snapshot)
 Loads snapshot.
 
std::vector< EditorDiagnostic > validate () const
 Validate.
 
- 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::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
virtual ~IEditingSnapshotProvider ()=default
 Releases IEditingSnapshotProvider resources.
 

静态 Public 成员函数

static CapabilityId propertyCapabilityId ()
 Inspector capability published by describe().
 
- 静态 Public 成员函数 继承自 eve::editing::IPropertyProvider
static CapabilityId editingCapabilityId ()
 Stable capability identity for generic property editing.
 
- 静态 Public 成员函数 继承自 eve::editing::IEditingSnapshotProvider
static CapabilityId editingCapabilityId ()
 Stable capability identity shared by every editable domain target.
 

额外继承的成员函数

- 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.
 

详细描述

Serializable catalog of named UI themes with one active publication slot.

在文件 UiTheme.h 第 55 行定义.

构造及析构函数说明

◆ UiThemeCatalogTarget()

eve::ui_editing::UiThemeCatalogTarget::UiThemeCatalogTarget ( std::string  id)
explicit

Construct a catalog seeded with built-in dark and light assets.

参数
idStable editor target identity.

在文件 UiTheme.cpp 第 80 行定义.

引用了 eve::ui_editing::UiThemeAsset::basePreset, eve::ui_editing::Dark, eve::ui::Theme::dark(), eve::ui_editing::UiThemeAsset::id, light, eve::ui_editing::Light, eve::ui::Theme::light(), eve::ui_editing::UiThemeAsset::name , 以及 eve::ui_editing::UiThemeAsset::tokens.

成员函数说明

◆ activeId()

const ObjectId & eve::ui_editing::UiThemeCatalogTarget::activeId ( ) const
inlinenoexcept

Active publication id; empty only if the catalog failed to seed.

在文件 UiTheme.h 第 93 行定义.

被这些函数引用 eve::ui_editor::UiThemeEditor::activeId(), eve::ui_editor::UiThemeEditor::deleteSelected(), eve::ui_editor::UiThemeEditor::isThemeActive() , 以及 eve::ui_editing::UiThemeRuntimePublisher::publish().

◆ applyDomainOperation()

Result< void > eve::ui_editing::UiThemeCatalogTarget::applyDomainOperation ( const DomainOperation &  operation)
overridevirtual

◆ cloneDomainState()

std::unique_ptr< IDomainOperationTarget > eve::ui_editing::UiThemeCatalogTarget::cloneDomainState ( ) const
overridevirtual

Clones domain state.

实现了 eve::editing::IDomainOperationTargetStaging.

在文件 UiTheme.cpp 第 199 行定义.

◆ commitDomainState()

Result< void > eve::ui_editing::UiThemeCatalogTarget::commitDomainState ( std::unique_ptr< IDomainOperationTarget >  candidate)
overridevirtual

Commits domain state.

实现了 eve::editing::IDomainOperationTargetStaging.

在文件 UiTheme.cpp 第 203 行定义.

◆ currentRevision()

eve::Result< eve::Revision > eve::ui_editing::UiThemeCatalogTarget::currentRevision ( const SelectionSnapshot &  selection) const
overridevirtual

◆ describe()

TargetDescriptor eve::ui_editing::UiThemeCatalogTarget::describe ( ) const
overridevirtual

◆ loadSnapshot()

Result< void > eve::ui_editing::UiThemeCatalogTarget::loadSnapshot ( const EditorValue &  snapshot)

◆ makeCreateFromPreset()

Result< DomainOperation > eve::ui_editing::UiThemeCatalogTarget::makeCreateFromPreset ( const ObjectId &  id,
std::string  name,
UiThemeBasePreset  preset 
) const

◆ makeDelete()

Result< DomainOperation > eve::ui_editing::UiThemeCatalogTarget::makeDelete ( const ObjectId &  id) const

Make delete.

在文件 UiTheme.cpp 第 276 行定义.

被这些函数引用 eve::ui_editor::UiThemeEditor::deleteSelected().

◆ makeDuplicate()

Result< DomainOperation > eve::ui_editing::UiThemeCatalogTarget::makeDuplicate ( const ObjectId &  source,
const ObjectId &  id,
std::string  name 
) const

◆ makeRename()

Result< DomainOperation > eve::ui_editing::UiThemeCatalogTarget::makeRename ( const ObjectId &  id,
std::string  name 
) const

Make rename.

在文件 UiTheme.cpp 第 259 行定义.

引用了 current , 以及 name.

◆ makeReset()

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

Make reset.

实现了 eve::editing::IPropertyProvider.

在文件 UiThemeProperty.cpp 第 75 行定义.

引用了 descriptor, eve::editing::PropertySchema::find(), makeSet(), path , 以及 schema().

被这些函数引用 makeSet().

◆ makeResetToBase()

Result< DomainOperation > eve::ui_editing::UiThemeCatalogTarget::makeResetToBase ( const ObjectId &  id) const

Make reset to base.

在文件 UiTheme.cpp 第 301 行定义.

引用了 current, eve::ui_editing::Custom , 以及 eve::ui_editing::themeFromPreset().

被这些函数引用 eve::ui_editor::UiThemeEditor::resetSelectedToBase().

◆ makeSet()

◆ makeSetActive()

Result< DomainOperation > eve::ui_editing::UiThemeCatalogTarget::makeSetActive ( const ObjectId &  id) const

Make set active.

在文件 UiTheme.cpp 第 292 行定义.

引用了 id.

被这些函数引用 eve::ui_editor::UiThemeEditor::setActiveSelected().

◆ propertyCapabilityId()

static CapabilityId eve::ui_editing::UiThemeCatalogTarget::propertyCapabilityId ( )
inlinestatic

Inspector capability published by describe().

在文件 UiTheme.h 第 69 行定义.

被这些函数引用 describe() , 以及 queryCapability().

◆ queryCapability()

void * eve::ui_editing::UiThemeCatalogTarget::queryCapability ( const CapabilityId &  capability)
override

Query Inspector and snapshot capabilities.

返回
Borrowed pointer owned by this catalog, or null. @lifetime Valid until this target is destroyed or replaced by commitDomainState. @thread Owner-thread only.

在文件 UiTheme.cpp 第 104 行定义.

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

◆ read()

PropertyReadResult eve::ui_editing::UiThemeCatalogTarget::read ( const SelectionSnapshot &  selection,
const PropertyPath &  path 
) const
overridevirtual

◆ runtimeName()

std::string eve::ui_editing::UiThemeCatalogTarget::runtimeName ( const ObjectId &  id) const

Runtime name written to ui::globalThemeName(): dark, light, or custom.

在文件 UiTheme.cpp 第 151 行定义.

引用了 value.

被这些函数引用 eve::ui_editing::UiThemePreviewService::build() , 以及 eve::ui_editing::UiThemeRuntimePublisher::publish().

◆ schema()

PropertySchema eve::ui_editing::UiThemeCatalogTarget::schema ( const SelectionSnapshot &  selection) const
overridevirtual

Schema.

实现了 eve::editing::IPropertyProvider.

在文件 UiThemeProperty.cpp 第 29 行定义.

引用了 eve::ui_editing::themeTokenSchema().

被这些函数引用 makeReset(), makeSet() , 以及 read().

◆ snapshotValue()

EditorValue eve::ui_editing::UiThemeCatalogTarget::snapshotValue ( ) const
overridevirtual

Snapshot value.

实现了 eve::editing::IEditingSnapshotProvider.

在文件 UiTheme.cpp 第 314 行定义.

◆ targetId()

TargetId eve::ui_editing::UiThemeCatalogTarget::targetId ( ) const
inlineoverridevirtual

Target id.

实现了 eve::editing::IEditableTarget.

在文件 UiTheme.h 第 72 行定义.

◆ theme()

Result< UiThemeAsset > eve::ui_editing::UiThemeCatalogTarget::theme ( const ObjectId &  id) const

◆ themes()

const std::vector< UiThemeAsset > & eve::ui_editing::UiThemeCatalogTarget::themes ( ) const
inlinenoexcept

Borrow authored themes in catalog order.

在文件 UiTheme.h 第 91 行定义.

被这些函数引用 eve::ui_editor::UiThemeEditor::deleteSelected(), eve::ui_editor::UiThemeEditor::themeCount() , 以及 eve::ui_editor::UiThemeEditor::undo().

◆ validate()

std::vector< EditorDiagnostic > eve::ui_editing::UiThemeCatalogTarget::validate ( ) const

Validate.

在文件 UiTheme.cpp 第 156 行定义.

引用了 ids , 以及 eve::ui_editing::validateThemeTokens().


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