Changed: CWizardDialog splitted to CMigrateWizard and CInstallWizard
This commit is contained in:
parent
7b8ae7d530
commit
7d06137e22
11 changed files with 421 additions and 95 deletions
|
@ -525,7 +525,22 @@ CConfigFile::InstallationStep CConfigFile::getNextStep() const
|
||||||
// only show wizard if installation directory undefined
|
// only show wizard if installation directory undefined
|
||||||
if (getInstallationDirectory().isEmpty())
|
if (getInstallationDirectory().isEmpty())
|
||||||
{
|
{
|
||||||
return ShowWizard;
|
// if launched from current directory, it means we just patched files
|
||||||
|
QString currentDirectory = getCurrentDirectory();
|
||||||
|
|
||||||
|
if (!isRyzomInstalledIn(currentDirectory))
|
||||||
|
{
|
||||||
|
// Ryzom is in the same directory as Ryzom Installer
|
||||||
|
currentDirectory = getApplicationDirectory();
|
||||||
|
|
||||||
|
if (!isRyzomInstalledIn(currentDirectory))
|
||||||
|
{
|
||||||
|
currentDirectory.clear();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// install or migrate depending if Ryzom was found in current directory
|
||||||
|
return currentDirectory.isEmpty() ? ShowInstallWizard:ShowMigrateWizard;
|
||||||
}
|
}
|
||||||
|
|
||||||
QString serverDirectory = getInstallationDirectory() + "/" + server.id;
|
QString serverDirectory = getInstallationDirectory() + "/" + server.id;
|
||||||
|
@ -575,7 +590,7 @@ CConfigFile::InstallationStep CConfigFile::getNextStep() const
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return ShowWizard;
|
return ShowInstallWizard;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -80,7 +80,8 @@ public:
|
||||||
enum InstallationStep
|
enum InstallationStep
|
||||||
{
|
{
|
||||||
DisplayNoServerError,
|
DisplayNoServerError,
|
||||||
ShowWizard,
|
ShowInstallWizard,
|
||||||
|
ShowMigrateWizard,
|
||||||
DownloadData,
|
DownloadData,
|
||||||
ExtractDownloadedData,
|
ExtractDownloadedData,
|
||||||
DownloadClient,
|
DownloadClient,
|
||||||
|
|
|
@ -15,8 +15,9 @@
|
||||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
#include "stdpch.h"
|
#include "stdpch.h"
|
||||||
#include "wizarddialog.h"
|
#include "installwizarddialog.h"
|
||||||
#include "configfile.h"
|
#include "configfile.h"
|
||||||
|
#include "utils.h"
|
||||||
|
|
||||||
#include "nel/misc/system_info.h"
|
#include "nel/misc/system_info.h"
|
||||||
#include "nel/misc/common.h"
|
#include "nel/misc/common.h"
|
||||||
|
@ -25,63 +26,17 @@
|
||||||
#define new DEBUG_NEW
|
#define new DEBUG_NEW
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
QString qBytesToHumanReadable(qint64 bytes)
|
CInstallWizardDialog::CInstallWizardDialog():QDialog()
|
||||||
{
|
|
||||||
static std::vector<std::string> units;
|
|
||||||
|
|
||||||
if (units.empty())
|
|
||||||
{
|
|
||||||
units.push_back(QObject::tr("B").toUtf8().constData());
|
|
||||||
units.push_back(QObject::tr("KiB").toUtf8().constData());
|
|
||||||
units.push_back(QObject::tr("MiB").toUtf8().constData());
|
|
||||||
units.push_back(QObject::tr("GiB").toUtf8().constData());
|
|
||||||
units.push_back(QObject::tr("TiB").toUtf8().constData());
|
|
||||||
units.push_back(QObject::tr("PiB").toUtf8().constData());
|
|
||||||
}
|
|
||||||
|
|
||||||
return QString::fromUtf8(NLMISC::bytesToHumanReadable(bytes).c_str());
|
|
||||||
}
|
|
||||||
|
|
||||||
CWizardDialog::CWizardDialog():QDialog()
|
|
||||||
{
|
{
|
||||||
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
|
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
|
||||||
|
|
||||||
setupUi(this);
|
setupUi(this);
|
||||||
|
|
||||||
currentDirectoryRadioButton->setVisible(false);
|
|
||||||
oldDirectoryRadioButton->setVisible(false);
|
oldDirectoryRadioButton->setVisible(false);
|
||||||
|
|
||||||
// enable download radio button by default
|
// enable download radio button by default
|
||||||
internetRadioButton->setChecked(true);
|
internetRadioButton->setChecked(true);
|
||||||
|
|
||||||
// if launched from current directory, it means we just patched files
|
|
||||||
m_currentDirectory = CConfigFile::getInstance()->getCurrentDirectory();
|
|
||||||
|
|
||||||
if (!CConfigFile::getInstance()->isRyzomInstalledIn(m_currentDirectory))
|
|
||||||
{
|
|
||||||
// current directory is a child of Ryzom root directory
|
|
||||||
m_currentDirectory = CConfigFile::getInstance()->getParentDirectory();
|
|
||||||
|
|
||||||
if (!CConfigFile::getInstance()->isRyzomInstalledIn(m_currentDirectory))
|
|
||||||
{
|
|
||||||
// Ryzom is in the same directory as Ryzom Installer
|
|
||||||
m_currentDirectory = CConfigFile::getInstance()->getApplicationDirectory();
|
|
||||||
|
|
||||||
if (!CConfigFile::getInstance()->isRyzomInstalledIn(m_currentDirectory))
|
|
||||||
{
|
|
||||||
m_currentDirectory.clear();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// display found directory
|
|
||||||
if (!m_currentDirectory.isEmpty())
|
|
||||||
{
|
|
||||||
currentDirectoryRadioButton->setText(tr("Current directory: %1").arg(m_currentDirectory));
|
|
||||||
currentDirectoryRadioButton->setVisible(true);
|
|
||||||
currentDirectoryRadioButton->setChecked(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
m_oldDirectory = CConfigFile::getInstance()->getOldInstallationDirectory();
|
m_oldDirectory = CConfigFile::getInstance()->getOldInstallationDirectory();
|
||||||
|
|
||||||
// found a previous installation
|
// found a previous installation
|
||||||
|
@ -89,8 +44,7 @@ CWizardDialog::CWizardDialog():QDialog()
|
||||||
{
|
{
|
||||||
oldDirectoryRadioButton->setText(tr("Old installation: %1").arg(m_oldDirectory));
|
oldDirectoryRadioButton->setText(tr("Old installation: %1").arg(m_oldDirectory));
|
||||||
oldDirectoryRadioButton->setVisible(true);
|
oldDirectoryRadioButton->setVisible(true);
|
||||||
|
oldDirectoryRadioButton->setChecked(true);
|
||||||
if (m_currentDirectory.isEmpty()) oldDirectoryRadioButton->setChecked(true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
updateAnotherLocationText();
|
updateAnotherLocationText();
|
||||||
|
@ -128,18 +82,18 @@ CWizardDialog::CWizardDialog():QDialog()
|
||||||
connect(advancedCheckBox, SIGNAL(stateChanged(int)), SLOT(onShowAdvancedParameters(int)));
|
connect(advancedCheckBox, SIGNAL(stateChanged(int)), SLOT(onShowAdvancedParameters(int)));
|
||||||
}
|
}
|
||||||
|
|
||||||
CWizardDialog::~CWizardDialog()
|
CInstallWizardDialog::~CInstallWizardDialog()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
void CWizardDialog::onShowAdvancedParameters(int state)
|
void CInstallWizardDialog::onShowAdvancedParameters(int state)
|
||||||
{
|
{
|
||||||
advancedFrame->setVisible(state != Qt::Unchecked);
|
advancedFrame->setVisible(state != Qt::Unchecked);
|
||||||
|
|
||||||
adjustSize();
|
adjustSize();
|
||||||
}
|
}
|
||||||
|
|
||||||
void CWizardDialog::onAnotherLocationBrowseButtonClicked()
|
void CInstallWizardDialog::onAnotherLocationBrowseButtonClicked()
|
||||||
{
|
{
|
||||||
QString directory;
|
QString directory;
|
||||||
|
|
||||||
|
@ -162,7 +116,7 @@ void CWizardDialog::onAnotherLocationBrowseButtonClicked()
|
||||||
updateAnotherLocationText();
|
updateAnotherLocationText();
|
||||||
}
|
}
|
||||||
|
|
||||||
void CWizardDialog::onDestinationBrowseButtonClicked()
|
void CInstallWizardDialog::onDestinationBrowseButtonClicked()
|
||||||
{
|
{
|
||||||
QString directory = QFileDialog::getExistingDirectory(this, tr("Please choose directory where to install Ryzom"));
|
QString directory = QFileDialog::getExistingDirectory(this, tr("Please choose directory where to install Ryzom"));
|
||||||
|
|
||||||
|
@ -173,17 +127,17 @@ void CWizardDialog::onDestinationBrowseButtonClicked()
|
||||||
updateDestinationText();
|
updateDestinationText();
|
||||||
}
|
}
|
||||||
|
|
||||||
void CWizardDialog::updateAnotherLocationText()
|
void CInstallWizardDialog::updateAnotherLocationText()
|
||||||
{
|
{
|
||||||
anotherLocationRadioButton->setText(tr("Another location: %1").arg(m_anotherDirectory.isEmpty() ? tr("Undefined"):m_anotherDirectory));
|
anotherLocationRadioButton->setText(tr("Another location: %1").arg(m_anotherDirectory.isEmpty() ? tr("Undefined"):m_anotherDirectory));
|
||||||
}
|
}
|
||||||
|
|
||||||
void CWizardDialog::updateDestinationText()
|
void CInstallWizardDialog::updateDestinationText()
|
||||||
{
|
{
|
||||||
destinationLabel->setText(m_dstDirectory);
|
destinationLabel->setText(m_dstDirectory);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CWizardDialog::accept()
|
void CInstallWizardDialog::accept()
|
||||||
{
|
{
|
||||||
// check free disk space
|
// check free disk space
|
||||||
qint64 freeSpace = NLMISC::CSystemInfo::availableHDSpace(m_dstDirectory.toUtf8().constData());
|
qint64 freeSpace = NLMISC::CSystemInfo::availableHDSpace(m_dstDirectory.toUtf8().constData());
|
||||||
|
@ -196,11 +150,7 @@ void CWizardDialog::accept()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (currentDirectoryRadioButton->isChecked())
|
if (oldDirectoryRadioButton->isChecked())
|
||||||
{
|
|
||||||
CConfigFile::getInstance()->setSrcServerDirectory(m_currentDirectory);
|
|
||||||
}
|
|
||||||
else if (oldDirectoryRadioButton->isChecked())
|
|
||||||
{
|
{
|
||||||
CConfigFile::getInstance()->setSrcServerDirectory(m_oldDirectory);
|
CConfigFile::getInstance()->setSrcServerDirectory(m_oldDirectory);
|
||||||
}
|
}
|
|
@ -14,10 +14,10 @@
|
||||||
// You should have received a copy of the GNU Affero General Public License
|
// You should have received a copy of the GNU Affero General Public License
|
||||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
#ifndef WIZARDDIALOG_H
|
#ifndef INSTALLWIZARDDIALOG_H
|
||||||
#define WIZARDDIALOG_H
|
#define INSTALLWIZARDDIALOG_H
|
||||||
|
|
||||||
#include "ui_wizard.h"
|
#include "ui_installwizard.h"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Wizard displayed at first launch, that asks user to choose source and destination directories.
|
* Wizard displayed at first launch, that asks user to choose source and destination directories.
|
||||||
|
@ -25,13 +25,13 @@
|
||||||
* \author Cedric 'Kervala' OCHS
|
* \author Cedric 'Kervala' OCHS
|
||||||
* \date 2016
|
* \date 2016
|
||||||
*/
|
*/
|
||||||
class CWizardDialog : public QDialog, public Ui::WizardDialog
|
class CInstallWizardDialog : public QDialog, public Ui::InstallWizardDialog
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
CWizardDialog();
|
CInstallWizardDialog();
|
||||||
virtual ~CWizardDialog();
|
virtual ~CInstallWizardDialog();
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void onShowAdvancedParameters(int state);
|
void onShowAdvancedParameters(int state);
|
||||||
|
@ -44,7 +44,6 @@ private:
|
||||||
void updateAnotherLocationText();
|
void updateAnotherLocationText();
|
||||||
void updateDestinationText();
|
void updateDestinationText();
|
||||||
|
|
||||||
QString m_currentDirectory;
|
|
||||||
QString m_oldDirectory;
|
QString m_oldDirectory;
|
||||||
QString m_anotherDirectory;
|
QString m_anotherDirectory;
|
||||||
QString m_dstDirectory;
|
QString m_dstDirectory;
|
|
@ -17,7 +17,8 @@
|
||||||
#include "stdpch.h"
|
#include "stdpch.h"
|
||||||
#include "mainwindow.h"
|
#include "mainwindow.h"
|
||||||
#include "configfile.h"
|
#include "configfile.h"
|
||||||
#include "wizarddialog.h"
|
#include "migratewizarddialog.h"
|
||||||
|
#include "installwizarddialog.h"
|
||||||
#include "operationdialog.h"
|
#include "operationdialog.h"
|
||||||
|
|
||||||
#include "nel/misc/path.h"
|
#include "nel/misc/path.h"
|
||||||
|
@ -89,12 +90,19 @@ int main(int argc, char *argv[])
|
||||||
|
|
||||||
bool displayMainWindow = true;
|
bool displayMainWindow = true;
|
||||||
|
|
||||||
if (step == CConfigFile::ShowWizard)
|
if (step == CConfigFile::ShowMigrateWizard)
|
||||||
{
|
{
|
||||||
CWizardDialog dialog;
|
CMigrateWizardDialog dialog;
|
||||||
|
|
||||||
if (!dialog.exec()) displayMainWindow = false;
|
if (!dialog.exec()) displayMainWindow = false;
|
||||||
}
|
}
|
||||||
|
else if (step == CConfigFile::ShowInstallWizard)
|
||||||
|
{
|
||||||
|
CInstallWizardDialog dialog;
|
||||||
|
|
||||||
|
if (!dialog.exec()) displayMainWindow = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if (displayMainWindow)
|
if (displayMainWindow)
|
||||||
{
|
{
|
||||||
|
|
|
@ -17,7 +17,6 @@
|
||||||
#include "stdpch.h"
|
#include "stdpch.h"
|
||||||
#include "mainwindow.h"
|
#include "mainwindow.h"
|
||||||
#include "downloader.h"
|
#include "downloader.h"
|
||||||
#include "wizarddialog.h"
|
|
||||||
#include "profilesdialog.h"
|
#include "profilesdialog.h"
|
||||||
#include "configfile.h"
|
#include "configfile.h"
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
|
|
@ -0,0 +1,128 @@
|
||||||
|
// Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
|
||||||
|
// Copyright (C) 2010 Winch Gate Property Limited
|
||||||
|
//
|
||||||
|
// This program is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU Affero General Public License as
|
||||||
|
// published by the Free Software Foundation, either version 3 of the
|
||||||
|
// License, or (at your option) any later version.
|
||||||
|
//
|
||||||
|
// This program is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU Affero General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU Affero General Public License
|
||||||
|
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
#include "stdpch.h"
|
||||||
|
#include "migratewizarddialog.h"
|
||||||
|
#include "configfile.h"
|
||||||
|
#include "utils.h"
|
||||||
|
|
||||||
|
#include "nel/misc/system_info.h"
|
||||||
|
#include "nel/misc/common.h"
|
||||||
|
|
||||||
|
#ifdef DEBUG_NEW
|
||||||
|
#define new DEBUG_NEW
|
||||||
|
#endif
|
||||||
|
|
||||||
|
CMigrateWizardDialog::CMigrateWizardDialog():QDialog()
|
||||||
|
{
|
||||||
|
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
|
||||||
|
|
||||||
|
setupUi(this);
|
||||||
|
|
||||||
|
// if launched from current directory, it means we just patched files
|
||||||
|
m_currentDirectory = CConfigFile::getInstance()->getCurrentDirectory();
|
||||||
|
|
||||||
|
if (!CConfigFile::getInstance()->isRyzomInstalledIn(m_currentDirectory))
|
||||||
|
{
|
||||||
|
// Ryzom is in the same directory as Ryzom Installer
|
||||||
|
m_currentDirectory = CConfigFile::getInstance()->getApplicationDirectory();
|
||||||
|
|
||||||
|
if (!CConfigFile::getInstance()->isRyzomInstalledIn(m_currentDirectory))
|
||||||
|
{
|
||||||
|
m_currentDirectory.clear();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
m_dstDirectory = CConfigFile::getNewInstallationDirectory();
|
||||||
|
|
||||||
|
updateDestinationText();
|
||||||
|
|
||||||
|
// check whether OS architecture is 32 or 64 bits
|
||||||
|
// TODO: 64 bits client only supported under Vista+
|
||||||
|
if (CConfigFile::has64bitsOS())
|
||||||
|
{
|
||||||
|
clientArchGroupBox->setVisible(true);
|
||||||
|
clientArch64RadioButton->setChecked(true);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
clientArchGroupBox->setVisible(false);
|
||||||
|
clientArch32RadioButton->setChecked(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
const CServer &server = CConfigFile::getInstance()->getServer();
|
||||||
|
|
||||||
|
destinationGroupBox->setTitle(tr("Files will be installed to (requires %1):").arg(qBytesToHumanReadable(server.dataUncompressedSize)));
|
||||||
|
|
||||||
|
connect(destinationBrowseButton, SIGNAL(clicked()), SLOT(onDestinationBrowseButtonClicked()));
|
||||||
|
connect(continueButton, SIGNAL(clicked()), SLOT(accept()));
|
||||||
|
connect(quitButton, SIGNAL(clicked()), SLOT(reject()));
|
||||||
|
|
||||||
|
// TODO: if found a folder with initial data, get its total size and check if at least that size is free on the disk
|
||||||
|
|
||||||
|
// by default, advanced parameters are hidden
|
||||||
|
onShowAdvancedParameters(Qt::Unchecked);
|
||||||
|
|
||||||
|
connect(advancedCheckBox, SIGNAL(stateChanged(int)), SLOT(onShowAdvancedParameters(int)));
|
||||||
|
}
|
||||||
|
|
||||||
|
CMigrateWizardDialog::~CMigrateWizardDialog()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void CMigrateWizardDialog::onShowAdvancedParameters(int state)
|
||||||
|
{
|
||||||
|
advancedFrame->setVisible(state != Qt::Unchecked);
|
||||||
|
|
||||||
|
adjustSize();
|
||||||
|
}
|
||||||
|
|
||||||
|
void CMigrateWizardDialog::onDestinationBrowseButtonClicked()
|
||||||
|
{
|
||||||
|
QString directory = QFileDialog::getExistingDirectory(this, tr("Please choose directory where to install Ryzom"));
|
||||||
|
|
||||||
|
if (directory.isEmpty()) return;
|
||||||
|
|
||||||
|
m_dstDirectory = directory;
|
||||||
|
|
||||||
|
updateDestinationText();
|
||||||
|
}
|
||||||
|
|
||||||
|
void CMigrateWizardDialog::updateDestinationText()
|
||||||
|
{
|
||||||
|
destinationLabel->setText(m_dstDirectory);
|
||||||
|
}
|
||||||
|
|
||||||
|
void CMigrateWizardDialog::accept()
|
||||||
|
{
|
||||||
|
// check free disk space
|
||||||
|
qint64 freeSpace = NLMISC::CSystemInfo::availableHDSpace(m_dstDirectory.toUtf8().constData());
|
||||||
|
|
||||||
|
const CServer &server = CConfigFile::getInstance()->getServer();
|
||||||
|
|
||||||
|
if (freeSpace < server.dataUncompressedSize)
|
||||||
|
{
|
||||||
|
QMessageBox::StandardButton res = QMessageBox::warning(this, tr("Not enough free disk space"), tr("You don't have enough free space on this disk, please make more space or choose a directory on another disk."));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
CConfigFile::getInstance()->setSrcServerDirectory(m_currentDirectory);
|
||||||
|
CConfigFile::getInstance()->setInstallationDirectory(m_dstDirectory);
|
||||||
|
CConfigFile::getInstance()->setUse64BitsClient(clientArch64RadioButton->isChecked());
|
||||||
|
CConfigFile::getInstance()->save();
|
||||||
|
|
||||||
|
QDialog::accept();
|
||||||
|
}
|
|
@ -0,0 +1,49 @@
|
||||||
|
// Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
|
||||||
|
// Copyright (C) 2010 Winch Gate Property Limited
|
||||||
|
//
|
||||||
|
// This program is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU Affero General Public License as
|
||||||
|
// published by the Free Software Foundation, either version 3 of the
|
||||||
|
// License, or (at your option) any later version.
|
||||||
|
//
|
||||||
|
// This program is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU Affero General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU Affero General Public License
|
||||||
|
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
#ifndef MIGRATEWIZARDDIALOG_H
|
||||||
|
#define MIGRATEWIZARDDIALOG_H
|
||||||
|
|
||||||
|
#include "ui_migratewizard.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Wizard displayed at first launch, that asks user to choose source and destination directories.
|
||||||
|
*
|
||||||
|
* \author Cedric 'Kervala' OCHS
|
||||||
|
* \date 2016
|
||||||
|
*/
|
||||||
|
class CMigrateWizardDialog : public QDialog, public Ui::MigrateWizardDialog
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
CMigrateWizardDialog();
|
||||||
|
virtual ~CMigrateWizardDialog();
|
||||||
|
|
||||||
|
private slots:
|
||||||
|
void onShowAdvancedParameters(int state);
|
||||||
|
void onDestinationBrowseButtonClicked();
|
||||||
|
|
||||||
|
void accept();
|
||||||
|
|
||||||
|
private:
|
||||||
|
void updateDestinationText();
|
||||||
|
|
||||||
|
QString m_currentDirectory;
|
||||||
|
QString m_dstDirectory;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
|
@ -17,7 +17,6 @@
|
||||||
#include "stdpch.h"
|
#include "stdpch.h"
|
||||||
#include "operationdialog.h"
|
#include "operationdialog.h"
|
||||||
#include "downloader.h"
|
#include "downloader.h"
|
||||||
#include "wizarddialog.h"
|
|
||||||
#include "profilesdialog.h"
|
#include "profilesdialog.h"
|
||||||
#include "configfile.h"
|
#include "configfile.h"
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
@ -99,7 +98,10 @@ void COperationDialog::processNextStep()
|
||||||
case CConfigFile::DisplayNoServerError:
|
case CConfigFile::DisplayNoServerError:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case CConfigFile::ShowWizard:
|
case CConfigFile::ShowMigrateWizard:
|
||||||
|
break;
|
||||||
|
|
||||||
|
case CConfigFile::ShowInstallWizard:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case CConfigFile::DownloadData:
|
case CConfigFile::DownloadData:
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<ui version="4.0">
|
<ui version="4.0">
|
||||||
<class>WizardDialog</class>
|
<class>InstallWizardDialog</class>
|
||||||
<widget class="QDialog" name="WizardDialog">
|
<widget class="QDialog" name="InstallWizardDialog">
|
||||||
<property name="windowModality">
|
<property name="windowModality">
|
||||||
<enum>Qt::ApplicationModal</enum>
|
<enum>Qt::ApplicationModal</enum>
|
||||||
</property>
|
</property>
|
||||||
|
@ -10,7 +10,7 @@
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>402</width>
|
<width>402</width>
|
||||||
<height>464</height>
|
<height>435</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
|
@ -28,10 +28,13 @@
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Welcome to Ryzom Installer!
|
<string>Welcome to Ryzom Installer!
|
||||||
|
|
||||||
This program will allow you to download, install, migrate, configure or manage Ryzom on your computer.
|
This program will allow you to download, install, configure or manage Ryzom on your computer.
|
||||||
|
|
||||||
Just follow the different steps and make your choice between the different propositions.</string>
|
Just follow the different steps and make your choice between the different propositions.</string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="textFormat">
|
||||||
|
<enum>Qt::PlainText</enum>
|
||||||
|
</property>
|
||||||
<property name="alignment">
|
<property name="alignment">
|
||||||
<set>Qt::AlignJustify|Qt::AlignTop</set>
|
<set>Qt::AlignJustify|Qt::AlignTop</set>
|
||||||
</property>
|
</property>
|
||||||
|
@ -94,16 +97,6 @@ Just follow the different steps and make your choice between the different propo
|
||||||
<string>Files will be installed from:</string>
|
<string>Files will be installed from:</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout">
|
<layout class="QVBoxLayout" name="verticalLayout">
|
||||||
<item>
|
|
||||||
<widget class="QRadioButton" name="currentDirectoryRadioButton">
|
|
||||||
<property name="text">
|
|
||||||
<string>Current directory</string>
|
|
||||||
</property>
|
|
||||||
<property name="checked">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
<item>
|
||||||
<widget class="QRadioButton" name="oldDirectoryRadioButton">
|
<widget class="QRadioButton" name="oldDirectoryRadioButton">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
|
@ -213,7 +206,6 @@ Just follow the different steps and make your choice between the different propo
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<tabstops>
|
<tabstops>
|
||||||
<tabstop>currentDirectoryRadioButton</tabstop>
|
|
||||||
<tabstop>oldDirectoryRadioButton</tabstop>
|
<tabstop>oldDirectoryRadioButton</tabstop>
|
||||||
<tabstop>anotherLocationRadioButton</tabstop>
|
<tabstop>anotherLocationRadioButton</tabstop>
|
||||||
<tabstop>anotherLocationBrowseButton</tabstop>
|
<tabstop>anotherLocationBrowseButton</tabstop>
|
||||||
|
@ -227,7 +219,7 @@ Just follow the different steps and make your choice between the different propo
|
||||||
<connection>
|
<connection>
|
||||||
<sender>buttonBox</sender>
|
<sender>buttonBox</sender>
|
||||||
<signal>accepted()</signal>
|
<signal>accepted()</signal>
|
||||||
<receiver>WizardDialog</receiver>
|
<receiver>InstallWizardDialog</receiver>
|
||||||
<slot>accept()</slot>
|
<slot>accept()</slot>
|
||||||
<hints>
|
<hints>
|
||||||
<hint type="sourcelabel">
|
<hint type="sourcelabel">
|
||||||
|
@ -243,7 +235,7 @@ Just follow the different steps and make your choice between the different propo
|
||||||
<connection>
|
<connection>
|
||||||
<sender>buttonBox</sender>
|
<sender>buttonBox</sender>
|
||||||
<signal>rejected()</signal>
|
<signal>rejected()</signal>
|
||||||
<receiver>WizardDialog</receiver>
|
<receiver>InstallWizardDialog</receiver>
|
||||||
<slot>reject()</slot>
|
<slot>reject()</slot>
|
||||||
<hints>
|
<hints>
|
||||||
<hint type="sourcelabel">
|
<hint type="sourcelabel">
|
183
code/ryzom/tools/client/ryzom_installer/ui/migratewizard.ui
Normal file
183
code/ryzom/tools/client/ryzom_installer/ui/migratewizard.ui
Normal file
|
@ -0,0 +1,183 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<ui version="4.0">
|
||||||
|
<class>MigrateWizardDialog</class>
|
||||||
|
<widget class="QDialog" name="MigrateWizardDialog">
|
||||||
|
<property name="windowModality">
|
||||||
|
<enum>Qt::ApplicationModal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>402</width>
|
||||||
|
<height>331</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="windowTitle">
|
||||||
|
<string>Ryzom Installer</string>
|
||||||
|
</property>
|
||||||
|
<property name="modal">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout" stretch="1,0,0,0">
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="messageLabel">
|
||||||
|
<property name="text">
|
||||||
|
<string>Welcome to Ryzom Installer!
|
||||||
|
|
||||||
|
This program will migrate Ryzom version 2.1 to 3.0. Your files will be updated, cleaned and moved to a new location.
|
||||||
|
|
||||||
|
Just press Continue button and follow the different steps until everything is done.</string>
|
||||||
|
</property>
|
||||||
|
<property name="textFormat">
|
||||||
|
<enum>Qt::PlainText</enum>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignJustify|Qt::AlignTop</set>
|
||||||
|
</property>
|
||||||
|
<property name="wordWrap">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="advancedLayout">
|
||||||
|
<item>
|
||||||
|
<spacer name="advancedHorizontalSpacer">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QCheckBox" name="advancedCheckBox">
|
||||||
|
<property name="text">
|
||||||
|
<string>Show advanced parameters (expert)</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QFrame" name="advancedFrame">
|
||||||
|
<property name="frameShape">
|
||||||
|
<enum>QFrame::StyledPanel</enum>
|
||||||
|
</property>
|
||||||
|
<property name="frameShadow">
|
||||||
|
<enum>QFrame::Raised</enum>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="advancedMainLayout">
|
||||||
|
<property name="spacing">
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
|
<property name="leftMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="topMargin">
|
||||||
|
<number>9</number>
|
||||||
|
</property>
|
||||||
|
<property name="rightMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="bottomMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<item>
|
||||||
|
<widget class="QGroupBox" name="destinationGroupBox">
|
||||||
|
<property name="title">
|
||||||
|
<string>Files will be installed to (requires 10 GiB):</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QHBoxLayout" name="destinationLayout" stretch="1,0">
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="destinationLabel">
|
||||||
|
<property name="text">
|
||||||
|
<string>c:\</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="destinationBrowseButton">
|
||||||
|
<property name="text">
|
||||||
|
<string>Browse...</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QGroupBox" name="clientArchGroupBox">
|
||||||
|
<property name="title">
|
||||||
|
<string>Do you prefer to use a 64 or 32 bits client?</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||||
|
<item>
|
||||||
|
<widget class="QRadioButton" name="clientArch64RadioButton">
|
||||||
|
<property name="text">
|
||||||
|
<string>64 bits (recommended)</string>
|
||||||
|
</property>
|
||||||
|
<property name="checked">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QRadioButton" name="clientArch32RadioButton">
|
||||||
|
<property name="text">
|
||||||
|
<string>32 bits</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="buttonsLayout">
|
||||||
|
<item>
|
||||||
|
<spacer name="horizontalSpacer">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="continueButton">
|
||||||
|
<property name="text">
|
||||||
|
<string>Continue</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="quitButton">
|
||||||
|
<property name="text">
|
||||||
|
<string>Quit</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<tabstops>
|
||||||
|
<tabstop>destinationBrowseButton</tabstop>
|
||||||
|
<tabstop>clientArch64RadioButton</tabstop>
|
||||||
|
<tabstop>clientArch32RadioButton</tabstop>
|
||||||
|
</tabstops>
|
||||||
|
<resources/>
|
||||||
|
<connections/>
|
||||||
|
</ui>
|
Loading…
Reference in a new issue