载入中...
搜索中...
未找到
MaterialBatchTarget.cpp
浏览该文件的文档.
33 EditorValue::Object{{"id", material.targetId().value()}, {"snapshot", material.snapshotValue()}});
38MaterialBatchTarget::MaterialBatchTarget(std::string id, std::vector<MaterialDocumentTarget> materials,
51 if (capability == IPropertyProvider::editingCapabilityId()) return static_cast<IPropertyProvider*>(this);
57Result<std::vector<std::size_t>> MaterialBatchTarget::selectedIndices(const SelectionSnapshot& selection) const {
69 const auto found = std::find_if(materials_.begin(), materials_.end(), [&](const auto& material) {
86eve::Result<eve::Revision> MaterialBatchTarget::currentRevision(const SelectionSnapshot& selection) const {
96PropertyReadResult MaterialBatchTarget::read(const SelectionSnapshot& selection, const PropertyPath& path) const {
111Result<DomainOperation> MaterialBatchTarget::replacement(std::vector<MaterialDocumentTarget> candidates,
125Result<DomainOperation> MaterialBatchTarget::makeSet(const SelectionSnapshot& selection, const PropertyPath& path,
149Result<void> MaterialBatchTarget::publishAndAdopt(std::vector<MaterialDocumentTarget> candidates,
168 if (!array || array->size() != materials_.size() || !operation.payload.isWithinLimits(16, 200000, 16 * 1024 * 1024))
202Result<void> MaterialBatchTarget::commitDomainState(std::unique_ptr<IDomainOperationTarget> candidate) {
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
void setRevision(Revision revision)
Adopt a revision observed elsewhere, without advancing it.
Definition EditableTarget.h:181
Revision revisionValue() const noexcept
Return the revision as the shared protocol revision type.
Definition EditableTarget.h:169
void widenDirty()
Mark an unknown area dirty without advancing the revision.
Definition EditableTarget.h:177
eve::OptionalRef< C > capability()
Query a capability through its interface-owned stable identity.
Definition EditableTarget.h:82
Optional capability exposing a deterministic, persistence-safe editing snapshot.
Definition EditableTarget.h:247
static CapabilityId editingCapabilityId()
Stable capability identity shared by every editable domain target.
Definition EditableTarget.h:252
UI-independent property access for an immutable selection snapshot.
Definition EditingProperty.h:139
static CapabilityId editingCapabilityId()
Stable capability identity for generic property editing.
Definition EditingProperty.h:144
Dotted property path (layout.size) compared and persisted as text.
Definition EditingIds.h:78
Deterministic owning value tree shared by authoring hosts.
Definition EditingValue.h:19
Atomic publication boundary for a complete multi-material candidate.
Definition MaterialBatchTarget.h:10
virtual Result< void > publish(std::span< const MaterialDocumentTarget > candidates)=0
Publish every candidate as one transaction.
One editor transaction target for mixed-value, multi-material property editing. Owns all authoring do...
Definition MaterialBatchTarget.h:30
PropertySchema schema(const SelectionSnapshot &selection) const override
Schema.
Definition MaterialBatchTarget.cpp:92
Result< void > commitDomainState(std::unique_ptr< IDomainOperationTarget > candidate) override
Commits domain state.
Definition MaterialBatchTarget.cpp:202
Result< DomainOperation > makeSet(const SelectionSnapshot &selection, const PropertyPath &path, const EditorValue &value, PropertySetMode mode) const override
Make set.
Definition MaterialBatchTarget.cpp:125
eve::Result< eve::Revision > currentRevision(const SelectionSnapshot &selection) const override
Current revision.
Definition MaterialBatchTarget.cpp:86
Result< void > applyDomainOperation(const DomainOperation &operation) override
Applies domain operation.
Definition MaterialBatchTarget.cpp:162
Result< DomainOperation > makeReset(const SelectionSnapshot &selection, const PropertyPath &path) const override
Make reset.
Definition MaterialBatchTarget.cpp:140
std::vector< editing::StableId > materialIds() const
Return owning material IDs in batch order.
Definition MaterialBatchTarget.cpp:214
std::unique_ptr< IDomainOperationTarget > cloneDomainState() const override
Clones domain state.
Definition MaterialBatchTarget.cpp:196
void * queryCapability(const CapabilityId &capability) override
Query property or snapshot capabilities.
Definition MaterialBatchTarget.cpp:50
PropertyReadResult read(const SelectionSnapshot &selection, const PropertyPath &path) const override
Reads .
Definition MaterialBatchTarget.cpp:96
UI-neutral, serializable material authoring target.
Definition MaterialTarget.h:32
Result< void > loadSnapshot(const EditorValue &snapshot)
Replace content when opening a persisted material document.
Definition MaterialTarget.cpp:167
Result< T > failed(Status status, eve::DiagnosticCode code, RuleId rule, std::string message)
Construct a failed editing result with explicit status and diagnostic categories.
Definition EditingResult.h:70
Definition Container.h:602
PropertyDescriptorLookup find(const PropertyPath &path) const
Finds find.
Definition EditingProperty.cpp:9
std::vector< SelectionItem > items
Definition EditingSelection.h:22
std::optional< SelectionItem > primary
Definition EditingSelection.h:23
Stable discovery metadata exposed by every editable target.
Definition EditableTarget.h:39