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

# mainwindow.cpp Example File
tools/i18n/mainwindow.cpp

        /****************************************************************************
        **
        ** Copyright (C) 2005-2005 Trolltech AS. All rights reserved.
        **
        ** This file is part of the documentation of the Qt Toolkit.
        **
        ** This file may be distributed and/or modified under the terms of the
    ** GNU General Public License version 2 as published by the Free Software
    ** Foundation and appearing in the file LICENSE.GPL included in the
    ** packaging of this file.
    **
    ** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
    ** information about Qt Commercial License Agreements.
    ** See http://www.trolltech.com/gpl/ for GPL licensing information.
    **
    ** 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 "mainwindow.h"

        static const char * const listEntries[] = {
            QT_TRANSLATE_NOOP("MainWindow", "First"),
            QT_TRANSLATE_NOOP("MainWindow", "Second"),
            QT_TRANSLATE_NOOP("MainWindow", "Third"),
            0
        };

        MainWindow::MainWindow()
        {
            centralWidget = new QWidget;
            setCentralWidget(centralWidget);

            createGroupBox();

            listWidget = new QListWidget;
            for (int i = 0; listEntries[i]; ++i)
                listWidget->addItem(tr(listEntries[i]));

            QVBoxLayout *mainLayout = new QVBoxLayout;
            mainLayout->addWidget(groupBox);
            mainLayout->addWidget(listWidget);
            centralWidget->setLayout(mainLayout);

            exitAction = new QAction(tr("E&xit"), this);
            connect(exitAction, SIGNAL(triggered()), qApp, SLOT(quit()));

            fileMenu = menuBar()->addMenu(tr("&File"));
            fileMenu->setPalette(QPalette(Qt::red));
            fileMenu->addAction(exitAction);

            setWindowTitle(tr("Language: %1").arg(tr("English")));
            statusBar()->showMessage(tr("Internationalization Example"));

            if (tr("LTR") == "RTL")
                setLayoutDirection(Qt::RightToLeft);
        }

        void MainWindow::createGroupBox()
        {
            groupBox = new QGroupBox(tr("View"));
            perspectiveRadioButton = new QRadioButton(tr("Perspective"));
            isometricRadioButton = new QRadioButton(tr("Isometric"));
            obliqueRadioButton = new QRadioButton(tr("Oblique"));
            perspectiveRadioButton->setChecked(true);

            QVBoxLayout *groupBoxLayout = new QVBoxLayout;
            groupBoxLayout->addWidget(perspectiveRadioButton);
            groupBoxLayout->addWidget(isometricRadioButton);
            groupBoxLayout->addWidget(obliqueRadioButton);
            groupBox->setLayout(groupBoxLayout);
        }