32 if(node->tag() ==
"align-bottom")
48 std::reverse(widgets.begin(), widgets.end());
52 int preferredHeight = 0;
56 if(!widget->isExplicitlyVisible())
59 Size size = widget->getSize();
61 gap = (
m_alignBottom) ? -(widget->getMarginBottom()+widget->getHeight()) : widget->getMarginTop();
63 preferredHeight += gap;
65 if(widget->isFixedSize()) {
68 pos.
x = paddingRect.
left() + widget->getMarginLeft();
70 pos.
x = paddingRect.
bottom() - widget->getHeight() - widget->getMarginBottom();
71 pos.
x = std::max<int>(pos.
x, paddingRect.
left());
73 pos.
x = paddingRect.
left() + (paddingRect.
width() - (widget->getMarginLeft() + widget->getWidth() + widget->getMarginRight()))/2;
74 pos.
x = std::max<int>(pos.
x, paddingRect.
left());
78 size.
setWidth(paddingRect.
width() - (widget->getMarginLeft() + widget->getMarginRight()));
85 gap = (
m_alignBottom) ? -widget->getMarginTop() : (widget->getHeight() + widget->getMarginBottom());
88 preferredHeight += gap;