67 bool canUndo() const noexcept {
return transactions_.canUndo(); }
69 bool canRedo() const noexcept {
return transactions_.canRedo(); }
71 std::uint64_t
revision() const noexcept {
return target_.revision(); }
75 std::string
kind()
const {
return target_.kind(); }
82 int layerCount()
const {
return static_cast<int>(target_.layers().size()); }
84 std::string layerId(
int index)
const;
86 std::string layerName(
int index)
const;
88 bool layerVisible(
int index)
const;
90 int layerZ(
int index)
const;
92 bool isLayerSelected(
int index)
const;
97 float previewX(
int index)
const;
99 float previewY(
int index)
const;
101 float previewW(
int index)
const;
103 float previewH(
int index)
const;
105 float previewR(
int index)
const;
107 float previewG(
int index)
const;
109 float previewB(
int index)
const;
111 float previewA(
int index)
const;
113 bool isPreviewSelected(
int index)
const;
115 std::string previewName(
int index)
const;
118 int parameterCount()
const {
return static_cast<int>(target_.parameters().size()); }
120 std::string parameterId(
int index)
const;
122 std::string parameterName(
int index)
const;
124 float parameterValue(
int index)
const;
126 float parameterMinimum(
int index)
const;
128 float parameterMaximum(
int index)
const;
130 bool isParameterSelected(
int index)
const;
133 int expressionCount()
const {
return static_cast<int>(target_.expressions().size()); }
135 std::string expressionId(
int index)
const;
137 std::string expressionName(
int index)
const;
139 bool isExpressionSelected(
int index)
const;
141 int expressionChannelCount(
int index)
const;
143 std::string expressionChannelName(
int expression,
int channel)
const;
149 float x = 0,
y = 0,
w = 0,
h = 0;
150 float r = 1,
g = 1,
b = 1,
a = 1;
151 bool selected =
false;
157 void seedPreviewDocument();
160 const PreviewRect* previewAt(
int index)
const;
167 float smileAmount()
const;
172 std::vector<PreviewRect> preview_;
173 std::string selectedId_ =
"eyes";
174 std::string selectedType_ =
"avatar.layer";
175 std::uint64_t txSequence_ = 0;
176 std::uint64_t previewRevision_ = 0;
ActionParameterOperation operation
#define EVENGINE_API_EDITORS
Move-only operation result carrying either a value or Status.
Revisioned image/Live2D/VRoid Avatar authoring asset.
Timeline-style controller for one authored avatar document.
bool canUndo() const noexcept
std::string selectedType() const
Selected type.
const avatar_editing::AvatarDocumentTarget & target() const noexcept
Borrow the authoritative avatar document.
int previewLayerCount() const
Preview layer count.
std::uint64_t previewRevision() const noexcept
Preview revision.
int layerCount() const
Layer count.
int parameterCount() const
Parameter count.
int expressionCount() const
Expression count.
bool canRedo() const noexcept
Can redo.
std::uint64_t revision() const noexcept
Revision.
std::string kind() const
Kind.
AvatarDocumentEditor(const AvatarDocumentEditor &)=delete
std::string selectedId() const
Selected id.
AvatarDocumentEditor & operator=(const AvatarDocumentEditor &)=delete
In-process authority for a single editable runtime or document target.
Composition model shared by project-specific developer and runtime editors.
Local transaction coordinator backed by an injected edit authority.
Named expression containing layer/parameter channel targets.
Stable image layer in an Avatar asset.
Reflected Avatar parameter and its initial value.
SelectionSnapshot public API.