Esempio n. 1
0
void Widget::RenderTree(const vec2 &base) const
{
    absPos = base + relPos; // Update origins

    if(isVisible())
    {
        glPushMatrix();
        glTranslatef(relPos.x, relPos.y, 0.0f);

        // draw ourselves
        draw();

        // draw our children
        for(list<Widget*>::const_iterator i = m_Children.begin(); i != m_Children.end(); ++i)
        {
            Widget *widget = *i;
            widget->RenderTree(absPos);
        }

        glPopMatrix();
    }
}