Пример #1
0
 AutoLayoutContainer::~AutoLayoutContainer()
 {
     std::list<Widget*>::iterator currChild(mChildren.begin());
     std::list<Widget*>::iterator endChildren(mChildren.end());
     
     for(; currChild != endChildren; ++currChild)
     {
         (*currChild)->removeWidgetListener(this);
     }
 }
Пример #2
0
 void VBox::fitChildrenToAxis()
 {
     std::list<Widget*>::iterator currChild(mChildren.begin());
     std::list<Widget*>::iterator endChildren(mChildren.end());
     
     int containerWidth = getWidth() - mChildrenOffset;
     
     for(; currChild != endChildren; ++currChild)
     {
         (*currChild)->_setWidthWithoutNotifying(containerWidth);
     }
 }
Пример #3
0
 void VBox::relayoutChildren()
 {
     std::list<Widget*>::iterator currChild(mAddedOrder.begin());
     std::list<Widget*>::iterator endChildren(mAddedOrder.end());
     
     int height = 0;
     
     for(; currChild != endChildren; ++currChild)
     {
         Widget* child = (*currChild);
         
         if(child->isVisible())
         {
             child->setPosition(mChildrenOffset, height);
             height += child->getHeight() + mPadding;
         }
     }
 }
Пример #4
0
 int VBox::getVisibleChildrenHeight() const 
 {
     std::list<Widget*>::const_iterator currChild(mAddedOrder.begin());
     std::list<Widget*>::const_iterator endChildren(mAddedOrder.end());
     
     int height = 0;
     
     for(; currChild != endChildren; ++currChild)
     {
         Widget *child = (*currChild);
         
         if(child->isVisible())
         {
             height += child->getHeight();
         }
     }
     
     return height;    
 }
Пример #5
0
 int VBox:: getMaxVisibleChildWidth() const
 {
     std::list<Widget*>::const_iterator currChild(mChildren.begin());
     std::list<Widget*>::const_iterator endChildren(mChildren.end());
     
     int max = 0;
     
     for(; currChild != endChildren; ++currChild)
     {
         Widget *child = (*currChild);
         
         if(child->isVisible())
         {
             max = std::max(child->getWidth(), max);
         }
     }
     
     return max;
 }