| @@ -19,6 +19,9 @@ | |||||
| START_NAMESPACE_DGL | START_NAMESPACE_DGL | ||||
| typedef std::list<SubWidgetWithSizeHint>::iterator SubWidgetWithSizeHintIterator; | |||||
| typedef std::list<HorizontalLayout*>::iterator HorizontalLayoutIterator; | |||||
| // -------------------------------------------------------------------------------------------------------------------- | // -------------------------------------------------------------------------------------------------------------------- | ||||
| template<> // horizontal | template<> // horizontal | ||||
| @@ -26,8 +29,9 @@ uint Layout<true>::setAbsolutePos(int x, const int y, const uint padding) | |||||
| { | { | ||||
| uint maxHeight = 0; | uint maxHeight = 0; | ||||
| for (SubWidgetWithSizeHint& s : widgets) | |||||
| for (SubWidgetWithSizeHintIterator it=widgets.begin(), end=widgets.end(); it != end; ++it) | |||||
| { | { | ||||
| SubWidgetWithSizeHint& s(*it); | |||||
| maxHeight = std::max(maxHeight, s.widget->getHeight()); | maxHeight = std::max(maxHeight, s.widget->getHeight()); | ||||
| s.widget->setAbsolutePos(x, y); | s.widget->setAbsolutePos(x, y); | ||||
| x += s.widget->getWidth(); | x += s.widget->getWidth(); | ||||
| @@ -44,8 +48,9 @@ void Layout<true>::setSize(const uint width, const uint padding) | |||||
| uint nonFixedWidth = width; | uint nonFixedWidth = width; | ||||
| uint numDynamiclySizedWidgets = 0; | uint numDynamiclySizedWidgets = 0; | ||||
| for (SubWidgetWithSizeHint& s : widgets) | |||||
| for (SubWidgetWithSizeHintIterator it=widgets.begin(), end=widgets.end(); it != end; ++it) | |||||
| { | { | ||||
| SubWidgetWithSizeHint& s(*it); | |||||
| maxHeight = std::max(maxHeight, s.widget->getHeight()); | maxHeight = std::max(maxHeight, s.widget->getHeight()); | ||||
| if (s.sizeHint == Fixed) | if (s.sizeHint == Fixed) | ||||
| @@ -58,8 +63,9 @@ void Layout<true>::setSize(const uint width, const uint padding) | |||||
| ? (nonFixedWidth - padding * numDynamiclySizedWidgets) / numDynamiclySizedWidgets | ? (nonFixedWidth - padding * numDynamiclySizedWidgets) / numDynamiclySizedWidgets | ||||
| : 0; | : 0; | ||||
| for (SubWidgetWithSizeHint& s : widgets) | |||||
| for (SubWidgetWithSizeHintIterator it=widgets.begin(), end=widgets.end(); it != end; ++it) | |||||
| { | { | ||||
| SubWidgetWithSizeHint& s(*it); | |||||
| if (s.sizeHint != Fixed) | if (s.sizeHint != Fixed) | ||||
| s.widget->setSize(widthPerWidget, maxHeight); | s.widget->setSize(widthPerWidget, maxHeight); | ||||
| else | else | ||||
| @@ -71,8 +77,9 @@ void Layout<true>::setSize(const uint width, const uint padding) | |||||
| void VerticallyStackedHorizontalLayout::setAbsolutePos(const int x, int y, const uint padding) | void VerticallyStackedHorizontalLayout::setAbsolutePos(const int x, int y, const uint padding) | ||||
| { | { | ||||
| for (HorizontalLayout* l : items) | |||||
| for (HorizontalLayoutIterator it=items.begin(), end=items.end(); it != end; ++it) | |||||
| { | { | ||||
| HorizontalLayout* l(*it); | |||||
| y += l->setAbsolutePos(x, y, padding); | y += l->setAbsolutePos(x, y, padding); | ||||
| y += padding; | y += padding; | ||||
| } | } | ||||
| @@ -80,8 +87,11 @@ void VerticallyStackedHorizontalLayout::setAbsolutePos(const int x, int y, const | |||||
| void VerticallyStackedHorizontalLayout::setWidth(const uint width, const uint padding) | void VerticallyStackedHorizontalLayout::setWidth(const uint width, const uint padding) | ||||
| { | { | ||||
| for (HorizontalLayout* l : items) | |||||
| for (HorizontalLayoutIterator it=items.begin(), end=items.end(); it != end; ++it) | |||||
| { | |||||
| HorizontalLayout* l(*it); | |||||
| l->setSize(width, padding); | l->setSize(width, padding); | ||||
| } | |||||
| } | } | ||||
| // -------------------------------------------------------------------------------------------------------------------- | // -------------------------------------------------------------------------------------------------------------------- | ||||