diff options
author | crupest <crupest@outlook.com> | 2020-06-28 00:17:50 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2020-06-28 00:17:50 +0800 |
commit | 2ef55b1fdbbe6f13ab835e20021b9ae53322d75e (patch) | |
tree | fb25d95530c3b3a193a3337a835a206c07f32885 /src | |
parent | b5e5dc788b400fc5d9190d2d5e6bc5f0f6755511 (diff) | |
download | cru-2ef55b1fdbbe6f13ab835e20021b9ae53322d75e.tar.gz cru-2ef55b1fdbbe6f13ab835e20021b9ae53322d75e.tar.bz2 cru-2ef55b1fdbbe6f13ab835e20021b9ae53322d75e.zip |
...
Diffstat (limited to 'src')
-rw-r--r-- | src/ui/controls/FlexLayout.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/ui/controls/FlexLayout.cpp b/src/ui/controls/FlexLayout.cpp index 25f30558..b7f350dc 100644 --- a/src/ui/controls/FlexLayout.cpp +++ b/src/ui/controls/FlexLayout.cpp @@ -17,28 +17,29 @@ render::RenderObject* FlexLayout::GetRenderObject() const { } namespace { -int FindPosition(render::RenderObject* parent, render::RenderObject* child) { +Index FindPosition(render::RenderObject* parent, render::RenderObject* child) { const auto& render_objects = parent->GetChildren(); const auto find_result = std::find(render_objects.cbegin(), render_objects.cend(), child); if (find_result == render_objects.cend()) { throw std::logic_error("Control is not a child of FlexLayout."); } - return static_cast<int>(find_result - render_objects.cbegin()); + return static_cast<Index>(find_result - render_objects.cbegin()); } } // namespace FlexChildLayoutData FlexLayout::GetChildLayoutData(Control* control) { Expects(control); - return *render_object_->GetChildLayoutData( + return render_object_->GetChildLayoutData( FindPosition(render_object_.get(), control->GetRenderObject())); } void FlexLayout::SetChildLayoutData(Control* control, - const FlexChildLayoutData& data) { + FlexChildLayoutData data) { Expects(control); - *render_object_->GetChildLayoutData( - FindPosition(render_object_.get(), control->GetRenderObject())) = data; + render_object_->SetChildLayoutData( + FindPosition(render_object_.get(), control->GetRenderObject()), + std::move(data)); } FlexMainAlignment FlexLayout::GetContentMainAlign() const { |