void vertical_layout::layout_items(const point& aPosition, const size& aSize) { if (!enabled()) return; owner()->layout_items_started(); next_layout_id(); layout::do_layout_items<layout::row_major<vertical_layout>>(aPosition, aSize); owner()->layout_items_completed(); }
void horizontal_layout::layout_items(const point& aPosition, const size& aSize) { if (!enabled()) return; owner()->layout_items_started(); next_layout_id(); layout::do_layout_items<layout::column_major<horizontal_layout>>(aPosition, aSize); owner()->layout_items_completed(); }
void stack_layout::layout_items(const point& aPosition, const size& aSize) { if (!enabled()) return; owner()->layout_items_started(); next_layout_id(); for (auto& item : items()) { if (!item.visible()) continue; item.layout(aPosition + margins().top_left(), aSize - margins().size()); } owner()->layout_items_completed(); }