diff options
Diffstat (limited to 'util/install/win/pages/pages.cpp')
-rw-r--r-- | util/install/win/pages/pages.cpp | 349 |
1 files changed, 0 insertions, 349 deletions
diff --git a/util/install/win/pages/pages.cpp b/util/install/win/pages/pages.cpp deleted file mode 100644 index 3ee4093..0000000 --- a/util/install/win/pages/pages.cpp +++ /dev/null @@ -1,349 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). -** Contact: Qt Software Information (qt-info@nokia.com) -** -** This file is part of the utils of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the either Technology Preview License Agreement or the -** Beta Release License Agreement. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 2.1 requirements -** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain -** additional rights. These rights are described in the Nokia Qt LGPL -** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this -** package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3.0 as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU General Public License version 3.0 requirements will be -** met: http://www.gnu.org/copyleft/gpl.html. -** -** If you are unsure which license is appropriate for your use, please -** contact the sales department at qt-sales@nokia.com. -** $QT_END_LICENSE$ -** -****************************************************************************/ -#include "pages.h" -#include "resource.h" -#include "../environment.h" -#include <qcombobox.h> -#include <qlineedit.h> -#include <qcheckbox.h> -#include <qlabel.h> -#include <qvalidator.h> -#include <qdir.h> -#include <qbuttongroup.h> -#include <qpushbutton.h> -#include <qradiobutton.h> -#include <qmultilineedit.h> -#include <qfiledialog.h> -#include <qtabwidget.h> -#include <qmessagebox.h> -#include <setupwizardimpl.h> -#include <qtextbrowser.h> -#include <qtextview.h> -#include <qlayout.h> - -#if defined(Q_OS_WIN32) -#include <windows.h> -#endif - -extern SetupWizardImpl *wizard; - -BuildPageImpl::BuildPageImpl( QWidget* parent, const char* name, WindowFlags fl ) - : BuildPage( parent, name, fl ) -{ -} - -ConfigPageImpl::ConfigPageImpl( QWidget* parent, const char* name, WindowFlags fl ) - : ConfigPage( parent, name, fl ) -{ - if( globalInformation.reconfig() ) { - currentInstLabel->show(); - currentInstallation->show(); -#if defined(Q_OS_WIN32) - // Makes no sense to have the rebuild installation option on DOS based - // Windows - if ( qWinVersion() & WV_NT_based ) -#endif - rebuildInstallation->show(); -#if defined(Q_OS_WIN32) - else { - rebuildInstallation->setChecked( false ); - rebuildInstallation->hide(); - } -#endif - } else { - currentInstLabel->hide(); - currentInstallation->hide(); - rebuildInstallation->hide(); - } -#if defined(EVAL) || defined(EDU) || defined(NON_COMMERCIAL) - // ### these pages should probably be included but all options should be - // disabled so that the evaluation customer can see how he can configure Qt - configTabs->removePage( generalTab ); - configTabs->removePage( advancedTab ); -#else - configTabs->removePage( installTab ); -#endif -} - -FinishPageImpl::FinishPageImpl( QWidget* parent, const char* name, WindowFlags fl ) - : FinishPage( parent, name, fl ) -{ -#if !defined(Q_OS_WIN32) - showReadmeCheck->hide(); -#endif -} - -FoldersPageImpl::FoldersPageImpl( QWidget* parent, const char* name, WindowFlags fl ) - : FoldersPage( parent, name, fl ) -{ -#if defined(Q_OS_WIN32) - QByteArray buffer( 256 ); - unsigned long buffSize( buffer.size() ); - GetUserNameA( buffer.data(), &buffSize ); - folderGroups->insertItem( "Anyone who uses this computer (all users)" ); - folderGroups->insertItem( QString( "Only for me (" ) + QString( buffer.data() ) + ")" ); -#if defined(QSA) - folderPath->setText( QString( "QSA " ) + globalInformation.qsaVersionStr() ); -#else - folderPath->setText( QString( "Qt " ) + globalInformation.qtVersionStr() ); -#endif - if( qWinVersion() & Qt::WV_NT_based ) // On NT we also have a common folder - folderGroups->setEnabled( true ); - else - folderGroups->setDisabled( true ); -#elif defined(Q_OS_UNIX) - folderGroups->setDisabled( true ); -#endif -} - -LicenseAgreementPageImpl::LicenseAgreementPageImpl( QWidget* parent, const char* name, WindowFlags fl ) - : LicenseAgreementPage( parent, name, fl ), - titleStr("License agreement") -{ -#if !defined(NON_COMMERCIAL) - countryLabel->hide(); - countryCombo->hide(); - delete countryLayout; -#else - connect( countryCombo, SIGNAL(activated(int)), SLOT(countryChanged(int)) ); -#endif - connect( licenceButtons, SIGNAL(clicked(int)), SLOT(licenseAction(int))); -} - -void LicenseAgreementPageImpl::licenseAction(int act) -{ - if( act ) - wizard->setNextEnabled( this, false ); - else - wizard->setNextEnabled( this, true ); -} - -void LicenseAgreementPageImpl::countryChanged(int index) -{ - ResourceLoader *rcLoader; - if ( index == 0 ) - rcLoader = new ResourceLoader( "LICENSE-US" ); - else - rcLoader = new ResourceLoader( "LICENSE" ); - - if ( rcLoader->isValid() ) { - introText->setText( rcLoader->data() ); - } else { - QMessageBox::critical( this, tr("Package corrupted"), - tr("Could not find the LICENSE file in the package.\nThe package might be corrupted.") ); - } -} - -LicensePageImpl::LicensePageImpl( QWidget* parent, const char* name, WindowFlags fl ) - : LicensePage( parent, name, fl ) -{ -#if defined(Q_OS_MAC) - // StyledPanel style looks very windowsish - customerID->setFrameShape( QFrame::LineEditPanel ); -#endif - customerID->setFocus(); -#if defined(EVAL) - // ### improve text -# if defined(QSA) - licenseInfoHeader->setText( tr("Thank you for your interest in QSA.\n" - "Please enter the license information you got for this evaluation version of QSA.") ); -# else - licenseInfoHeader->setText( tr("Thank you for your interest in Qt.\n" - "Please enter the license information you got for this evaluation version of Qt.") ); -# endif - - customerIDLabel->setText( tr("Name") ); - licenseIDLabel->setText( tr("Company name") ); - licenseeLabel->setText( tr("Serial number") ); - evalName = customerID; - evalCompany = licenseID; - serialNumber = licenseeName; - - expiryLabel->hide(); - expiryDate->hide(); - productsLabel->hide(); - productsString->hide(); - keyLabel->hide(); - key->hide(); - readLicenseButton->hide(); -#elif defined(EDU) - licenseInfoHeader->setText( tr("Please enter the license information for the educational edition of Qt.") ); - - customerIDLabel->setText( tr("Educational institution") ); - licenseeLabel->setText( tr("Serial number") ); - university = customerID; - serialNumber = licenseeName; - - licenseIDLabel->hide(); - licenseID->hide(); - expiryLabel->hide(); - expiryDate->hide(); - productsLabel->hide(); - productsString->hide(); - keyLabel->hide(); - key->hide(); - readLicenseButton->hide(); -#else - licenseID->setValidator( new QIntValidator( -1, 9999999, licenseID ) ); - - // expiryDate and productsString comes from the license key - expiryDate->setEnabled( false ); - productsString->setEnabled( false ); - keyLabel->setText( tr("License key") ); - licenseInfoHeader->setText( tr("Please enter your license information.\n" - "The License key is required to be able to proceed with the installation process.") ); -#endif -} - -QValidator::State InstallPathValidator::validate( QString& input, int& ) const -{ - if ( ( globalInformation.sysId() == GlobalInformation::MSVC || - globalInformation.sysId() == GlobalInformation::MSVCNET ) - && input.contains( QRegExp("\\s") ) ) { - QMessageBox::warning( 0, "Invalid directory", "No whitespace is allowed in the directory name due to a limitation with MSVC" ); - return Intermediate; - } else if ( globalInformation.sysId() == GlobalInformation::Borland && input.contains( "-" ) ) { - QMessageBox::warning( 0, "Invalid directory", "No '-' characters are allowed in the directory name due to a limitation in the " - "Borland linker" ); - return Intermediate; - } - return Acceptable; -} - -OptionsPageImpl::OptionsPageImpl( QWidget* parent, const char* name, WindowFlags fl ) - : OptionsPage( parent, name, fl ), - titleStr("Options"), - shortTitleStr("Choose options") -{ - connect( installPathButton, SIGNAL(clicked()), SLOT(choosePath())); - sysGroup->setButton(globalInformation.sysId()); -#if defined(EVAL) || defined(EDU) || defined(NON_COMMERCIAL) - sysOther->hide(); - sysOtherCombo->hide(); - noteLabel->hide(); -#endif -#if defined(Q_OS_WIN32) - installPath->setText( - QString( "C:\\Qt\\" ) + - QString( globalInformation.qtVersionStr() ).replace( QRegExp("\\s"), "" ).replace( QRegExp("-"), "" ) - ); - installPath->setValidator( new InstallPathValidator( this ) ); -#elif defined(Q_OS_MAC) - // ### the replace for Windows is done because qmake has problems with - // spaces and Borland has problems with "-" in the filenames -- I don't - // think that there is a need for this on Mac (rms) - QString base("QtMac-"); - base = QDir::homeDirPath() + QDir::separator() + base; -#if defined(EVAL) - base += "Eval-"; -#elif defined(EDU) - base += "Edu-"; -#endif - installPath->setText(base + QString( globalInformation.qtVersionStr() ).replace( QRegExp("\\s"), "" )); - sysGroup->hide(); -#endif -} - -void OptionsPageImpl::choosePath() -{ - QDir dir( installPath->text() ); - -#if defined(Q_OS_WIN32) - if( !dir.exists() ) { -# if defined(QSA) - dir.setPath( "C:\\Qt_QSA" ); -# else - dir.setPath( "C:\\Qt" ); -#endif - } - - QString dest = QFileDialog::getExistingDirectory( installPath->text(), this, NULL, "Select installation directory" ); - if ( dest.isNull() ) { -# if defined(QSA) - dest = "C:\\Qt_QSA"; -# else - dest = "C:\\Qt"; -# endif - } - if ( dest.right(1) == "\\" ) { -# if defined(QSA) - dest += "Qt_QSA"; -# else - dest += "Qt"; -# endif - } - if ( dest.contains( QRegExp( "\\s" ) ) && !sysBorland->isChecked() ) - QMessageBox::warning( 0, "Invalid directory", "No whitespace is allowed in the directory name due to a limitation with MSVC" ); - else if ( dest.contains( "-" ) && sysBorland->isChecked() ) - QMessageBox::warning( 0, "Invalid directory", "No '-' characters are allowed in the directory name due to a limitation with the Borland linker" ); - else { - dir.setPath( dest ); - installPath->setText( QDir::toNativeSeparators(dir.absPath()) ); - } -#elif defined(Q_OS_MAC) - if( !dir.exists() ) - dir.setPath( "/" ); - - QString dest = QFileDialog::getExistingDirectory( installPath->text(), this, NULL, "Select installation directory" ); - if (!dest.isNull()) - installPath->setText( dest ); -#endif -} - -ProgressPageImpl::ProgressPageImpl( QWidget* parent, const char* name, WindowFlags fl ) - : ProgressPage( parent, name, fl ) -{ - // ######### At the moment, we show only one line when unpacking. So the - // horizontal scrollbar is never shown for now to avoid flickering. - filesDisplay->setHScrollBarMode( QScrollView::AlwaysOff ); -} - -#if defined(Q_OS_WIN32) -WinIntroPageImpl::WinIntroPageImpl( QWidget* parent, const char* name, WindowFlags fl ) - : WinIntroPage( parent, name, fl ) -{ -#if defined(QSA) - textBrowser->setText( "<p>This program installs Qt and QSA.</p>" + textBrowser->text() ); -#else - textBrowser->setText( "<p>This program installs Qt.</p>" + textBrowser->text() ); -#endif -} -#endif |