diff options
author | Tim Jenssen <tim.jenssen@digia.com> | 2013-10-23 17:09:23 +0200 |
---|---|---|
committer | Tim Jenssen <tim.jenssen@digia.com> | 2013-10-23 17:09:23 +0200 |
commit | 7778787b91a9ec75a3fcba70b7d39d64a034997c (patch) | |
tree | e589d8bea9713e38111c0b640a2cf63a425585b2 /src/sdk | |
parent | 5cc89ac1eab55dfbd8a1ad754cbb2c8f7c424abc (diff) | |
parent | 53b999af27bf2272445b882c055aa6cf8335c74a (diff) |
Merge remote-tracking branch 'origin/1.4' into 1.5
Change-Id: Ib2d382d1aa398b642dc15f4df7c03b19bf638546
Diffstat (limited to 'src/sdk')
-rw-r--r-- | src/sdk/installerbase.cpp | 113 | ||||
-rw-r--r-- | src/sdk/installerbase_p.cpp | 7 | ||||
-rw-r--r-- | src/sdk/installerbasecommons.cpp | 3 | ||||
-rw-r--r-- | src/sdk/tabcontroller.cpp | 1 | ||||
-rw-r--r-- | src/sdk/translations/ja_jp.ts | 2 |
5 files changed, 66 insertions, 60 deletions
diff --git a/src/sdk/installerbase.cpp b/src/sdk/installerbase.cpp index 870182e13..8d7518fcf 100644 --- a/src/sdk/installerbase.cpp +++ b/src/sdk/installerbase.cpp @@ -61,6 +61,7 @@ #include <kdrunoncechecker.h> #include <kdupdaterfiledownloaderfactory.h> +#include <QDirIterator> #include <QtCore/QTranslator> #include <QMessageBox> @@ -254,11 +255,10 @@ int main(int argc, char *argv[]) qDebug() << "Resource tree before loading the in-binary resource:"; qDebug() << "Language: " << QLocale().uiLanguages().value(0, QLatin1String("No UI language set")); - QDir dir(QLatin1String(":/")); - foreach (const QString &i, dir.entryList()) { - const QByteArray ba = i.toUtf8(); - qDebug().nospace() << " :/" << ba.constData(); - } + QDirIterator it(QLatin1String(":/"), QDir::NoDotAndDotDot | QDir::AllEntries | QDir::Hidden, + QDirIterator::Subdirectories); + while (it.hasNext()) + qDebug() << QString::fromLatin1(" %1").arg(it.next()); } // register custom operations before reading the binary content cause they may used in @@ -296,59 +296,6 @@ int main(int argc, char *argv[]) // instantiate the installer we are actually going to use QInstaller::PackageManagerCore core(content.magicMarker(), content.performedOperations()); - if (QInstaller::isVerbose()) { - qDebug() << "Resource tree after loading the in-binary resource:"; - - QDir dir = QDir(QLatin1String(":/")); - foreach (const QString &i, dir.entryList()) - qDebug() << QString::fromLatin1(" :/%1").arg(i); - - dir = QDir(QLatin1String(":/metadata/")); - foreach (const QString &i, dir.entryList()) - qDebug() << QString::fromLatin1(" :/metadata/%1").arg(i); - - dir = QDir(QLatin1String(":/translations/")); - foreach (const QString &i, dir.entryList()) - qDebug() << QString::fromLatin1(" :/translations/%1").arg(i); - } - - const QString directory = QLatin1String(":/translations"); - const QStringList translations = core.settings().translations(); - - // install the default Qt translator - QScopedPointer<QTranslator> translator(new QTranslator(&app)); - foreach (const QLocale locale, QLocale().uiLanguages()) { - // As there is no qt_en.qm, we simply end the search when the next - // preferred language is English. - if (locale.language() == QLocale::English) - break; - if (translator->load(locale, QLatin1String("qt"), QString::fromLatin1("_"), directory)) { - app.installTranslator(translator.take()); - break; - } - } - - translator.reset(new QTranslator(&app)); - // install English translation as fallback so that correct license button text is used - if (translator->load(QLatin1String("en_us"), directory)) - app.installTranslator(translator.take()); - - if (translations.isEmpty()) { - translator.reset(new QTranslator(&app)); - foreach (const QLocale locale, QLocale().uiLanguages()) { - if (translator->load(locale, QLatin1String(""), QLatin1String(""), directory)) { - app.installTranslator(translator.take()); - break; - } - } - } else { - foreach (const QString &translation, translations) { - translator.reset(new QTranslator(&app)); - if (translator->load(translation, QLatin1String(":/translations"))) - app.installTranslator(translator.take()); - } - } - QString controlScript; QHash<QString, QString> params; for (int i = 1; i < args.size(); ++i) { @@ -413,6 +360,56 @@ int main(int argc, char *argv[]) } } + // this needs to happen after we parse the arguments, but before we use the actual resources + const QString newDefaultResource = core.value(QString::fromLatin1("DefaultResourceReplacement")); + if (!newDefaultResource.isEmpty()) + content.registerAsDefaultQResource(newDefaultResource); + + if (QInstaller::isVerbose()) { + qDebug() << "Resource tree after loading the in-binary resource:"; + QDirIterator it(QLatin1String(":/"), QDir::NoDotAndDotDot | QDir::AllEntries | QDir::Hidden, + QDirIterator::Subdirectories); + while (it.hasNext()) + qDebug() << QString::fromLatin1(" %1").arg(it.next()); + } + + const QString directory = QLatin1String(":/translations"); + const QStringList translations = core.settings().translations(); + + // install the default Qt translator + QScopedPointer<QTranslator> translator(new QTranslator(&app)); + foreach (const QLocale locale, QLocale().uiLanguages()) { + // As there is no qt_en.qm, we simply end the search when the next + // preferred language is English. + if (locale.language() == QLocale::English) + break; + if (translator->load(locale, QLatin1String("qt"), QString::fromLatin1("_"), directory)) { + app.installTranslator(translator.take()); + break; + } + } + + translator.reset(new QTranslator(&app)); + // install English translation as fallback so that correct license button text is used + if (translator->load(QLatin1String("en_us"), directory)) + app.installTranslator(translator.take()); + + if (translations.isEmpty()) { + translator.reset(new QTranslator(&app)); + foreach (const QLocale locale, QLocale().uiLanguages()) { + if (translator->load(locale, QLatin1String(""), QLatin1String(""), directory)) { + app.installTranslator(translator.take()); + break; + } + } + } else { + foreach (const QString &translation, translations) { + translator.reset(new QTranslator(&app)); + if (translator->load(translation, QLatin1String(":/translations"))) + app.installTranslator(translator.take()); + } + } + // Create the wizard gui TabController controller(0); controller.setManager(&core); diff --git a/src/sdk/installerbase_p.cpp b/src/sdk/installerbase_p.cpp index 6e4002f30..4fcbe7b6e 100644 --- a/src/sdk/installerbase_p.cpp +++ b/src/sdk/installerbase_p.cpp @@ -63,6 +63,7 @@ #include <iostream> #ifdef Q_OS_WIN +# include <windows.h> # include <wincon.h> # ifndef ENABLE_INSERT_MODE @@ -135,6 +136,12 @@ public: m_oldCerr = std::cerr.rdbuf(); m_newCerr.open("CONOUT$"); std::cerr.rdbuf(m_newCerr.rdbuf()); +# ifndef Q_CC_MINGW + HMENU systemMenu = GetSystemMenu(GetConsoleWindow(), FALSE); + if (systemMenu != NULL) + RemoveMenu(systemMenu, SC_CLOSE, MF_BYCOMMAND); + DrawMenuBar(GetConsoleWindow()); +# endif #endif } ~MyApplicationConsole() diff --git a/src/sdk/installerbasecommons.cpp b/src/sdk/installerbasecommons.cpp index d2fb5e27b..a4e5047d0 100644 --- a/src/sdk/installerbasecommons.cpp +++ b/src/sdk/installerbasecommons.cpp @@ -75,16 +75,19 @@ IntroductionPageImpl::IntroductionPageImpl(QInstaller::PackageManagerCore *core) QVBoxLayout *layout = new QVBoxLayout(widget); m_packageManager = new QRadioButton(tr("Package manager"), this); + m_packageManager->setObjectName(QLatin1String("PackageManagerRadioButton")); layout->addWidget(m_packageManager); m_packageManager->setChecked(core->isPackageManager()); connect(m_packageManager, SIGNAL(toggled(bool)), this, SLOT(setPackageManager(bool))); m_updateComponents = new QRadioButton(tr("Update components"), this); + m_updateComponents->setObjectName(QLatin1String("UpdaterRadioButton")); layout->addWidget(m_updateComponents); m_updateComponents->setChecked(core->isUpdater()); connect(m_updateComponents, SIGNAL(toggled(bool)), this, SLOT(setUpdater(bool))); m_removeAllComponents = new QRadioButton(tr("Remove all components"), this); + m_removeAllComponents->setObjectName(QLatin1String("UninstallerRadioButton")); layout->addWidget(m_removeAllComponents); m_removeAllComponents->setChecked(core->isUninstaller()); connect(m_removeAllComponents, SIGNAL(toggled(bool)), this, SLOT(setUninstaller(bool))); diff --git a/src/sdk/tabcontroller.cpp b/src/sdk/tabcontroller.cpp index 720f6f292..770ea8007 100644 --- a/src/sdk/tabcontroller.cpp +++ b/src/sdk/tabcontroller.cpp @@ -150,7 +150,6 @@ int TabController::init() } d->m_gui->restart(); - d->m_gui->setWindowModality(Qt::WindowModal); d->m_gui->show(); onCurrentIdChanged(d->m_gui->currentId()); diff --git a/src/sdk/translations/ja_jp.ts b/src/sdk/translations/ja_jp.ts index 5e34e57e6..6af882705 100644 --- a/src/sdk/translations/ja_jp.ts +++ b/src/sdk/translations/ja_jp.ts @@ -99,7 +99,7 @@ <translation>無効な引数: %1個の引数が渡されましたが、必要なのは2個です。</translation> </message> <message> - <source>Could not copy a none existing file: %1</source> + <source>Could not copy a non-existent file: %1</source> <translation>存在しないファイルはコピーできません: %1</translation> </message> <message> |