psemek/libs/ui/source/impl/component.cpp
2023-05-06 12:55:06 +03:00

44 lines
813 B
C++

#include <psemek/ui/impl/component.hpp>
namespace psemek::ui::impl
{
size_polygon const & component::default_size_polygon()
{
static size_polygon const result{{
{max_size, 0.f},
{0.f, 0.f},
{0.f, max_size},
{max_size, max_size}
}};
return result;
}
react::value<size_polygon> component::default_size_constraints()
{
static react::value<size_polygon> const result{default_size_polygon()};
return result;
}
util::span<std::unique_ptr<component> const> component::children() const
{
return {};
}
geom::box<float, 2> const & component::shape() const
{
return shape_;
}
void component::reshape(geom::box<float, 2> const & new_shape)
{
shape_ = new_shape;
}
react::value<size_polygon> component::size_constraints() const
{
return default_size_constraints();
}
}