|  | Home · All Classes · Main Classes · Grouped Classes · Modules · Functions |

# window.cpp Example File
opengl/2dpainting/window.cpp

    /****************************************************************************
    **
    ** Copyright (C) 2006-2006 Trolltech ASA. All rights reserved.
    **
    ** This file is part of the example classes of the Qt Toolkit.
    **
    ** Licensees holding valid Qt Preview licenses may use this file in
    ** accordance with the Qt Preview License Agreement provided with the
    ** Software.
    **
    ** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
    ** information about Qt Commercial License Agreements.
    **
    ** Contact info@trolltech.com if any conditions of this licensing are
    ** not clear to you.
    **
    ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
    ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
    **
    ****************************************************************************/

    #include <QtGui>
    #include "glwidget.h"
    #include "widget.h"
    #include "window.h"

    Window::Window()
        : QWidget()
    {
        Widget *native = new Widget(&helper, this);
        GLWidget *openGL = new GLWidget(&helper, this);
        QLabel *nativeLabel = new QLabel(tr("Native"));
        nativeLabel->setAlignment(Qt::AlignHCenter);
        QLabel *openGLLabel = new QLabel(tr("OpenGL"));
        openGLLabel->setAlignment(Qt::AlignHCenter);

        QGridLayout *layout = new QGridLayout;
        layout->addWidget(native, 0, 0);
        layout->addWidget(openGL, 0, 1);
        layout->addWidget(nativeLabel, 1, 0);
        layout->addWidget(openGLLabel, 1, 1);
        setLayout(layout);

        QTimer *timer = new QTimer(this);
        connect(timer, SIGNAL(timeout()), native, SLOT(animate()));
        connect(timer, SIGNAL(timeout()), openGL, SLOT(animate()));
        timer->start(50);

        setWindowTitle(tr("2D Painting on Native and OpenGL Widgets"));
    }