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

# pages.cpp Example File
dialogs/configdialog/pages.cpp

    /****************************************************************************
    **
    ** Copyright (C) 2005-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 "pages.h"

    ConfigurationPage::ConfigurationPage(QWidget *parent)
        : QWidget(parent)
    {
        QGroupBox *configGroup = new QGroupBox(tr("Server configuration"));

        QLabel *serverLabel = new QLabel(tr("Server:"));
        QComboBox *serverCombo = new QComboBox;
        serverCombo->addItem(tr("Trolltech (Australia)"));
        serverCombo->addItem(tr("Trolltech (Germany)"));
        serverCombo->addItem(tr("Trolltech (Norway)"));
        serverCombo->addItem(tr("Trolltech (People's Republic of China)"));
        serverCombo->addItem(tr("Trolltech (USA)"));

        QHBoxLayout *serverLayout = new QHBoxLayout;
        serverLayout->addWidget(serverLabel);
        serverLayout->addWidget(serverCombo);

        QVBoxLayout *configLayout = new QVBoxLayout;
        configLayout->addLayout(serverLayout);
        configGroup->setLayout(configLayout);

        QVBoxLayout *mainLayout = new QVBoxLayout;
        mainLayout->addWidget(configGroup);
        mainLayout->addStretch(1);
        setLayout(mainLayout);
    }

    UpdatePage::UpdatePage(QWidget *parent)
        : QWidget(parent)
    {
        QGroupBox *updateGroup = new QGroupBox(tr("Package selection"));
        QCheckBox *systemCheckBox = new QCheckBox(tr("Update system"));
        QCheckBox *appsCheckBox = new QCheckBox(tr("Update applications"));
        QCheckBox *docsCheckBox = new QCheckBox(tr("Update documentation"));

        QGroupBox *packageGroup = new QGroupBox(tr("Existing packages"));

        QListWidget *packageList = new QListWidget;
        QListWidgetItem *qtItem = new QListWidgetItem(packageList);
        qtItem->setText(tr("Qt"));
        QListWidgetItem *qsaItem = new QListWidgetItem(packageList);
        qsaItem->setText(tr("QSA"));
        QListWidgetItem *teamBuilderItem = new QListWidgetItem(packageList);
        teamBuilderItem->setText(tr("Teambuilder"));

        QPushButton *startUpdateButton = new QPushButton(tr("Start update"));

        QVBoxLayout *updateLayout = new QVBoxLayout;
        updateLayout->addWidget(systemCheckBox);
        updateLayout->addWidget(appsCheckBox);
        updateLayout->addWidget(docsCheckBox);
        updateGroup->setLayout(updateLayout);

        QVBoxLayout *packageLayout = new QVBoxLayout;
        packageLayout->addWidget(packageList);
        packageGroup->setLayout(packageLayout);

        QVBoxLayout *mainLayout = new QVBoxLayout;
        mainLayout->addWidget(updateGroup);
        mainLayout->addWidget(packageGroup);
        mainLayout->addSpacing(12);
        mainLayout->addWidget(startUpdateButton);
        mainLayout->addStretch(1);
        setLayout(mainLayout);
    }

    QueryPage::QueryPage(QWidget *parent)
        : QWidget(parent)
    {
        QGroupBox *packagesGroup = new QGroupBox(tr("Look for packages"));

        QLabel *nameLabel = new QLabel(tr("Name:"));
        QLineEdit *nameEdit = new QLineEdit;

        QLabel *dateLabel = new QLabel(tr("Released after:"));
        QDateTimeEdit *dateEdit = new QDateTimeEdit(QDate::currentDate());

        QCheckBox *releasesCheckBox = new QCheckBox(tr("Releases"));
        QCheckBox *upgradesCheckBox = new QCheckBox(tr("Upgrades"));

        QSpinBox *hitsSpinBox = new QSpinBox;
        hitsSpinBox->setPrefix(tr("Return up to "));
        hitsSpinBox->setSuffix(tr(" results"));
        hitsSpinBox->setSpecialValueText(tr("Return only the first result"));
        hitsSpinBox->setMinimum(1);
        hitsSpinBox->setMaximum(100);
        hitsSpinBox->setSingleStep(10);

        QPushButton *startQueryButton = new QPushButton(tr("Start query"));

        QGridLayout *packagesLayout = new QGridLayout;
        packagesLayout->addWidget(nameLabel, 0, 0);
        packagesLayout->addWidget(nameEdit, 0, 1);
        packagesLayout->addWidget(dateLabel, 1, 0);
        packagesLayout->addWidget(dateEdit, 1, 1);
        packagesLayout->addWidget(releasesCheckBox, 2, 0);
        packagesLayout->addWidget(upgradesCheckBox, 3, 0);
        packagesLayout->addWidget(hitsSpinBox, 4, 0, 1, 2);
        packagesGroup->setLayout(packagesLayout);

        QVBoxLayout *mainLayout = new QVBoxLayout;
        mainLayout->addWidget(packagesGroup);
        mainLayout->addSpacing(12);
        mainLayout->addWidget(startQueryButton);
        mainLayout->addStretch(1);
        setLayout(mainLayout);
    }