From 81f93c1d404687c6aad3a267c397264455615472 Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Thu, 1 Sep 2011 10:50:52 +0200 Subject: [PATCH 01/35] Version bump Change-Id: I9ef0aa6d47dca86fdd3169a40b9642c898607a05 --- qtcreator.pri | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qtcreator.pri b/qtcreator.pri index c22b23bfe7f..ab22d83012f 100644 --- a/qtcreator.pri +++ b/qtcreator.pri @@ -1,7 +1,7 @@ !isEmpty(QTCREATOR_PRI_INCLUDED):error("qtcreator.pri already included") QTCREATOR_PRI_INCLUDED = 1 -QTCREATOR_VERSION = 2.3.0 +QTCREATOR_VERSION = 2.3.1 defineReplace(cleanPath) { win32:1 ~= s|\\\\|/|g From e2e0db687efd9b269d3f042d1a6d722f59a840e4 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Tue, 30 Aug 2011 15:55:44 +0200 Subject: [PATCH 02/35] QmlProject: Fix debugging with C++ language Because no ABI was specified, gdb bailed out with 'File format not recognized'. Instead just use the ABI from one of the toolchains available for the Qt version (assuming that they're all compatible). Task-number: QTCREATORBUG-5957 Change-Id: I7db9bd45c6a015c6236ae1b672909e013fad1d65 Reviewed-by: Tobias Hunger Reviewed-on: http://codereview.qt.nokia.com/4045 Reviewed-by: Qt Sanity Bot Reviewed-by: Eike Ziller --- src/plugins/qmlprojectmanager/qmlprojectruncontrol.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/plugins/qmlprojectmanager/qmlprojectruncontrol.cpp b/src/plugins/qmlprojectmanager/qmlprojectruncontrol.cpp index 8c0ebf370ae..a9f255807b3 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectruncontrol.cpp +++ b/src/plugins/qmlprojectmanager/qmlprojectruncontrol.cpp @@ -206,6 +206,8 @@ RunControl *QmlProjectRunControlFactory::createDebugRunControl(QmlProjectRunConf params.displayName = runConfig->displayName(); params.projectSourceDirectory = runConfig->target()->project()->projectDirectory(); params.projectSourceFiles = runConfig->target()->project()->files(Project::ExcludeGeneratedFiles); + if (!runConfig->qtVersion()->qtAbis().isEmpty()) + params.toolChainAbi = runConfig->qtVersion()->qtAbis().first(); // Makes sure that all bindings go through the JavaScript engine, so that // breakpoints are actually hit! From 14ee91dc5425fc95b7a970c7843b5160ecb69642 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Thu, 1 Sep 2011 09:43:08 +0200 Subject: [PATCH 03/35] Remove CONFIG+=declarative_debug from imported build line Prevent CONFIG+=declarative_debug to show up in "custom arguments" of an imported build. Change-Id: Ib598addcb31b65853eea430a086f614c6dd498fd Reviewed-on: http://codereview.qt.nokia.com/4044 Reviewed-by: Qt Sanity Bot Reviewed-by: Daniel Teske --- src/plugins/qt4projectmanager/qmakestep.cpp | 2 +- src/plugins/qt4projectmanager/qt4buildconfiguration.cpp | 7 +++++-- src/plugins/qt4projectmanager/qt4projectmanagerconstants.h | 1 + 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/plugins/qt4projectmanager/qmakestep.cpp b/src/plugins/qt4projectmanager/qmakestep.cpp index cc3b795d972..b4ea3b8b83b 100644 --- a/src/plugins/qt4projectmanager/qmakestep.cpp +++ b/src/plugins/qt4projectmanager/qmakestep.cpp @@ -178,7 +178,7 @@ QStringList QMakeStep::moreArguments() if (!bc->qtVersion()->needsQmlDebuggingLibrary()) { // This Qt version has the QML debugging services built in, however // they still need to be enabled at compile time - arguments << QLatin1String("CONFIG+=declarative_debug"); + arguments << QLatin1String(Constants::QMAKEVAR_DECLARATIVE_DEBUG); } else { QString qmlDebuggingHelperLibrary = bc->qtVersion()->qmlDebuggingHelperLibrary(true); if (!qmlDebuggingHelperLibrary.isEmpty()) { diff --git a/src/plugins/qt4projectmanager/qt4buildconfiguration.cpp b/src/plugins/qt4projectmanager/qt4buildconfiguration.cpp index 47512b7cbd1..44a840e6f8f 100644 --- a/src/plugins/qt4projectmanager/qt4buildconfiguration.cpp +++ b/src/plugins/qt4projectmanager/qt4buildconfiguration.cpp @@ -533,9 +533,12 @@ bool Qt4BuildConfiguration::compareToImportFrom(const QString &makefile) void Qt4BuildConfiguration::removeQMLInspectorFromArguments(QString *args) { - for (Utils::QtcProcess::ArgIterator ait(args); ait.next(); ) - if (ait.value().contains(QLatin1String(Constants::QMAKEVAR_QMLJSDEBUGGER_PATH))) + for (Utils::QtcProcess::ArgIterator ait(args); ait.next(); ) { + const QString arg = ait.value(); + if (arg.contains(QLatin1String(Constants::QMAKEVAR_QMLJSDEBUGGER_PATH)) + || arg.contains(Constants::QMAKEVAR_DECLARATIVE_DEBUG)) ait.deleteArg(); + } } QString Qt4BuildConfiguration::extractSpecFromArguments(QString *args, diff --git a/src/plugins/qt4projectmanager/qt4projectmanagerconstants.h b/src/plugins/qt4projectmanager/qt4projectmanagerconstants.h index f3a21193b12..35c8ca0ceda 100644 --- a/src/plugins/qt4projectmanager/qt4projectmanagerconstants.h +++ b/src/plugins/qt4projectmanager/qt4projectmanagerconstants.h @@ -115,6 +115,7 @@ const char * const ICON_HTML5_APP = ":/wizards/images/html5app.png"; // Env variables const char * const QMAKEVAR_QMLJSDEBUGGER_PATH = "QMLJSDEBUGGER_PATH"; +const char * const QMAKEVAR_DECLARATIVE_DEBUG = "CONFIG+=declarative_debug"; } // namespace Constants } // namespace Qt4ProjectManager From e50344fdda5e48a92105433e3a537da39f47c51f Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Fri, 26 Aug 2011 10:09:38 +0000 Subject: [PATCH 04/35] Symbian: Warn if EPOCROOT is on different drive from the sources ... even when using SBSv2 Task-Number: QTCREATORBUG-5907 Change-Id: Ibb79dc798b8146f9e5658e186f499bfd47fb3d9e Reviewed-on: http://codereview.qt.nokia.com/3660 Reviewed-by: Tobias Hunger (cherry picked from commit 059e5f30deacdec5ad9449c6247b609be5cf9727) --- src/plugins/qt4projectmanager/qt-s60/symbianqtversion.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/plugins/qt4projectmanager/qt-s60/symbianqtversion.cpp b/src/plugins/qt4projectmanager/qt-s60/symbianqtversion.cpp index 02d568e5724..94a7010ecb2 100644 --- a/src/plugins/qt4projectmanager/qt-s60/symbianqtversion.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/symbianqtversion.cpp @@ -328,7 +328,11 @@ QList SymbianQtVersion::reportIssuesImpl(const QString &p QList results = BaseQtVersion::reportIssuesImpl(proFile, buildDir); const QString epocRootDir = systemRoot(); // Report an error if project- and epoc directory are on different drives: - if (!epocRootDir.startsWith(proFile.left(3), Qt::CaseInsensitive) && !isBuildWithSymbianSbsV2()) { + if (!epocRootDir.startsWith(proFile.left(3), Qt::CaseInsensitive)) { + // Note: SBSv2 works fine with the EPOCROOT and the sources being on different drives, + // but it fails when Qt is on a different drive than the sources. Since + // the SDK installs Qt and the EPOCROOT on the same drive we just stick with this + // warning. results.append(ProjectExplorer::Task(ProjectExplorer::Task::Error, QCoreApplication::translate("ProjectExplorer::Internal::S60ProjectChecker", "The Symbian SDK and the project sources must reside on the same drive."), From 4848be6fe806f2f0602db4c0414316c387bb2aff Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Mon, 29 Aug 2011 17:10:45 +0200 Subject: [PATCH 05/35] Harmattan: Include Aegis manifest in list of files to add to project. Change-Id: I04f8787e6a334ad801af2e3b8006c000a1fa0546 Reviewed-on: http://codereview.qt.nokia.com/3823 Reviewed-by: Qt Sanity Bot Reviewed-by: Kai Koehne --- src/plugins/remotelinux/qt4maemotarget.cpp | 39 ++++++++++------------ 1 file changed, 18 insertions(+), 21 deletions(-) diff --git a/src/plugins/remotelinux/qt4maemotarget.cpp b/src/plugins/remotelinux/qt4maemotarget.cpp index 1fa1070c1dc..02fd14ed512 100644 --- a/src/plugins/remotelinux/qt4maemotarget.cpp +++ b/src/plugins/remotelinux/qt4maemotarget.cpp @@ -275,6 +275,23 @@ void AbstractQt4MaemoTarget::handleTargetAdded(ProjectExplorer::Target *target) if (status == ActionSuccessful) // Don't do this when the packaging data already exists. initPackagingSettingsFromOtherTarget(); handleTargetAddedSpecial(); + if (status == ActionSuccessful) { + const QStringList &files = packagingFilePaths(); + if (!files.isEmpty()) { + const QString list = QLatin1String("
  • ") + files.join(QLatin1String("
  • ")) + + QLatin1String("
"); + QMessageBox::StandardButton button = QMessageBox::question(Core::ICore::instance()->mainWindow(), + tr("Add Packaging Files to Project"), + tr("Qt Creator has set up the following files to enable " + "packaging:\n %1\nDo you want to add them to the project?") + .arg(list), QMessageBox::Yes | QMessageBox::No); + if (button == QMessageBox::Yes) { + ProjectExplorer::ProjectExplorerPlugin::instance() + ->addExistingFiles(project()->rootProjectNode(), files); + } + } + } + m_isInitialized = true; } @@ -326,27 +343,7 @@ AbstractQt4MaemoTarget::ActionStatus AbstractQt4MaemoTarget::createTemplates() return ActionFailed; } - const ActionStatus actionStatus = createSpecialTemplates(); - if (actionStatus == ActionFailed) - return ActionFailed; - if (actionStatus == ActionSuccessful) { - const QStringList &files = packagingFilePaths(); - if (!files.isEmpty()) { - const QString list = QLatin1String("
  • ") - + files.join(QLatin1String("
  • ")) + QLatin1String("
"); - QMessageBox::StandardButton button - = QMessageBox::question(Core::ICore::instance()->mainWindow(), - tr("Add Packaging Files to Project"), - tr("Qt Creator has set up the following files to enable " - "packaging:\n %1\nDo you want to add them to the project?") - .arg(list), QMessageBox::Yes | QMessageBox::No); - if (button == QMessageBox::Yes) { - ProjectExplorer::ProjectExplorerPlugin::instance() - ->addExistingFiles(project()->rootProjectNode(), files); - } - } - } - return actionStatus; + return createSpecialTemplates(); } bool AbstractQt4MaemoTarget::initPackagingSettingsFromOtherTarget() From d687d11240877f848f3d1c28e2ec70ed4ff555f4 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Wed, 17 Aug 2011 12:27:24 +0200 Subject: [PATCH 06/35] QtQuickApp: Tweak template to enable Meego booster Add support for the meego booster. This requires - Telling qmake to link to right libraries - Exporting main method - using QApplication, QDeclarativeView objects from cache - avoiding QCoreApplication::applicationDirPath() To keep compatibility, QmlApplicationViewer is still derived from QDeclarativeView. However, if the app booster is used it merely acts as a proxy to the view from the cache. Change-Id: I83e285d9ca3c2cfd86d1711e1fb93c72589ba14d Reviewed-on: http://codereview.qt.nokia.com/3730 Reviewed-by: Qt Sanity Bot Reviewed-by: Alessandro Portale Reviewed-by: Christian Kandeler --- share/qtcreator/templates/qtquickapp/app.pro | 6 +- share/qtcreator/templates/qtquickapp/main.cpp | 16 ++-- .../qmlapplicationviewer.cpp | 85 ++++++++++++++----- .../qmlapplicationviewer.h | 7 +- .../qmlapplicationviewer.pri | 4 + .../qt4projectmanager/wizards/qtquickapp.cpp | 2 +- 6 files changed, 89 insertions(+), 31 deletions(-) diff --git a/share/qtcreator/templates/qtquickapp/app.pro b/share/qtcreator/templates/qtquickapp/app.pro index e8d197665af..fcbcc0b8aff 100644 --- a/share/qtcreator/templates/qtquickapp/app.pro +++ b/share/qtcreator/templates/qtquickapp/app.pro @@ -28,7 +28,11 @@ symbian:TARGET.CAPABILITY += NetworkServices # CONFIG += mobility # MOBILITY += -# Add dependency to symbian components +# Speed up launching on MeeGo/Harmattan when using applauncherd daemon +# HARMATTAN_BOOSTABLE # +# CONFIG += qdeclarative-boostable + +# Add dependency to Symbian components # QTQUICKCOMPONENTS # # CONFIG += qtquickcomponents diff --git a/share/qtcreator/templates/qtquickapp/main.cpp b/share/qtcreator/templates/qtquickapp/main.cpp index dfb208a90c6..82347f65b2c 100644 --- a/share/qtcreator/templates/qtquickapp/main.cpp +++ b/share/qtcreator/templates/qtquickapp/main.cpp @@ -1,15 +1,15 @@ #include #include "qmlapplicationviewer.h" -int main(int argc, char *argv[]) +Q_DECL_EXPORT int main(int argc, char *argv[]) { - QApplication app(argc, argv); + QScopedPointer app(createApplication(argc, argv)); + QScopedPointer viewer(QmlApplicationViewer::create()); - QmlApplicationViewer viewer; - viewer.addImportPath(QLatin1String("modules")); // ADDIMPORTPATH - viewer.setOrientation(QmlApplicationViewer::ScreenOrientationAuto); // ORIENTATION - viewer.setMainQmlFile(QLatin1String("qml/app/main.qml")); // MAINQML - viewer.showExpanded(); + viewer->addImportPath(QLatin1String("modules")); // ADDIMPORTPATH + viewer->setOrientation(QmlApplicationViewer::ScreenOrientationAuto); // ORIENTATION + viewer->setMainQmlFile(QLatin1String("qml/app/main.qml")); // MAINQML + viewer->showExpanded(); - return app.exec(); + return app->exec(); } diff --git a/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.cpp b/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.cpp index d8500a28c46..c7ccf089bea 100644 --- a/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.cpp +++ b/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.cpp @@ -9,15 +9,19 @@ #include "qmlapplicationviewer.h" -#include #include #include #include #include #include +#include #include // MEEGO_EDITION_HARMATTAN +#ifdef HARMATTAN_BOOSTER +#include +#endif + #if defined(QMLJSDEBUGGER) && QT_VERSION < 0x040800 #include @@ -45,9 +49,12 @@ static QmlJsDebuggingEnabler enableDebuggingHelper; class QmlApplicationViewerPrivate { + QmlApplicationViewerPrivate(QDeclarativeView *view_) : view(view_) {} + QString mainQmlFile; + QDeclarativeView *view; friend class QmlApplicationViewer; - static QString adjustPath(const QString &path); + QString adjustPath(const QString &path); }; QString QmlApplicationViewerPrivate::adjustPath(const QString &path) @@ -58,49 +65,78 @@ QString QmlApplicationViewerPrivate::adjustPath(const QString &path) return QCoreApplication::applicationDirPath() + QLatin1String("/../Resources/") + path; #else - const QString pathInInstallDir = QCoreApplication::applicationDirPath() - + QLatin1String("/../") + path; - if (pathInInstallDir.contains(QLatin1String("opt")) - && pathInInstallDir.contains(QLatin1String("bin")) - && QFileInfo(pathInInstallDir).exists()) { + QString pathInInstallDir; +#ifdef HARMATTAN_BOOSTER + QString applicationDirPath = MDeclarativeCache::applicationDirPath(); +#else + QString applicationDirPath = QCoreApplication::applicationDirPath(); +#endif + pathInInstallDir = QString::fromAscii("%1/../%2").arg(applicationDirPath, path); + + if (QFileInfo(pathInInstallDir).exists()) return pathInInstallDir; - } #endif #endif return path; } -QmlApplicationViewer::QmlApplicationViewer(QWidget *parent) : - QDeclarativeView(parent), - m_d(new QmlApplicationViewerPrivate) +QmlApplicationViewer::QmlApplicationViewer(QWidget *parent) + : QDeclarativeView(parent) + , d(new QmlApplicationViewerPrivate(this)) { connect(engine(), SIGNAL(quit()), SLOT(close())); setResizeMode(QDeclarativeView::SizeRootObjectToView); // Qt versions prior to 4.8.0 don't have QML/JS debugging services built in #if defined(QMLJSDEBUGGER) && QT_VERSION < 0x040800 #if !defined(NO_JSDEBUGGER) - new QmlJSDebugger::JSDebuggerAgent(engine()); + new QmlJSDebugger::JSDebuggerAgent(d->view->engine()); #endif #if !defined(NO_QMLOBSERVER) - new QmlJSDebugger::QDeclarativeViewObserver(this, this); + new QmlJSDebugger::QDeclarativeViewObserver(d->view, d->view); +#endif +#endif +} + +QmlApplicationViewer::QmlApplicationViewer(QDeclarativeView *view, QWidget *parent) + : QDeclarativeView(parent) + , d(new QmlApplicationViewerPrivate(view)) +{ + connect(view->engine(), SIGNAL(quit()), view, SLOT(close())); + view->setResizeMode(QDeclarativeView::SizeRootObjectToView); + // Qt versions prior to 4.8.0 don't have QML/JS debugging services built in +#if defined(QMLJSDEBUGGER) && QT_VERSION < 0x040800 +#if !defined(NO_JSDEBUGGER) + new QmlJSDebugger::JSDebuggerAgent(d->view->engine()); +#endif +#if !defined(NO_QMLOBSERVER) + new QmlJSDebugger::QDeclarativeViewObserver(d->view, d->view); #endif #endif } QmlApplicationViewer::~QmlApplicationViewer() { - delete m_d; + delete d; +} + +QmlApplicationViewer *QmlApplicationViewer::create() +{ +#ifdef HARMATTAN_BOOSTER + return new QmlApplicationViewer(MDeclarativeCache::qDeclarativeView(), 0); +#else + return new QmlApplicationViewer(); +#endif } void QmlApplicationViewer::setMainQmlFile(const QString &file) { - m_d->mainQmlFile = QmlApplicationViewerPrivate::adjustPath(file); - setSource(QUrl::fromLocalFile(m_d->mainQmlFile)); + d->mainQmlFile = d->adjustPath(file); + d->view->setSource(QUrl::fromLocalFile(d->mainQmlFile)); } void QmlApplicationViewer::addImportPath(const QString &path) { - engine()->addImportPath(QmlApplicationViewerPrivate::adjustPath(path)); + d->view->engine()->addImportPath(d->adjustPath(path)); } void QmlApplicationViewer::setOrientation(ScreenOrientation orientation) @@ -149,10 +185,19 @@ void QmlApplicationViewer::setOrientation(ScreenOrientation orientation) void QmlApplicationViewer::showExpanded() { #if defined(Q_OS_SYMBIAN) || defined(MEEGO_EDITION_HARMATTAN) || defined(Q_WS_SIMULATOR) - showFullScreen(); + d->view->showFullScreen(); #elif defined(Q_WS_MAEMO_5) - showMaximized(); + d->view->showMaximized(); #else - show(); + d->view->show(); +#endif +} + +QApplication *createApplication(int &argc, char **argv) +{ +#ifdef HARMATTAN_BOOSTER + return MDeclarativeCache::qApplication(argc, argv); +#else + return new QApplication(argc, argv); #endif } diff --git a/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.h b/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.h index f4d7f40cd9d..d6cb43e10ed 100644 --- a/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.h +++ b/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.h @@ -26,6 +26,8 @@ public: explicit QmlApplicationViewer(QWidget *parent = 0); virtual ~QmlApplicationViewer(); + static QmlApplicationViewer *create(); + void setMainQmlFile(const QString &file); void addImportPath(const QString &path); @@ -35,7 +37,10 @@ public: void showExpanded(); private: - class QmlApplicationViewerPrivate *m_d; + explicit QmlApplicationViewer(QDeclarativeView *view, QWidget *parent); + class QmlApplicationViewerPrivate *d; }; +QApplication *createApplication(int &argc, char **argv); + #endif // QMLAPPLICATIONVIEWER_H diff --git a/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.pri b/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.pri index 6704a74c1b1..a32c88d1ae9 100644 --- a/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.pri +++ b/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.pri @@ -16,3 +16,7 @@ INCLUDEPATH += $$PWD } else { DEFINES -= QMLJSDEBUGGER } + +contains(CONFIG,qdeclarative-boostable):contains(MEEGO_EDITION,harmattan) { + DEFINES += HARMATTAN_BOOSTER +} diff --git a/src/plugins/qt4projectmanager/wizards/qtquickapp.cpp b/src/plugins/qt4projectmanager/wizards/qtquickapp.cpp index 859d2da0901..72446e5bd67 100644 --- a/src/plugins/qt4projectmanager/wizards/qtquickapp.cpp +++ b/src/plugins/qt4projectmanager/wizards/qtquickapp.cpp @@ -460,7 +460,7 @@ QString QtQuickApp::componentSetDir(ComponentSet componentSet) const } } -const int QtQuickApp::StubVersion = 15; +const int QtQuickApp::StubVersion = 16; } // namespace Internal } // namespace Qt4ProjectManager From f7de570fa3c46c1b7c9fff4a917921a1c81955f8 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Tue, 16 Aug 2011 13:41:08 +0200 Subject: [PATCH 07/35] MobileWizards: Add option for booster to harmattan configure page Split up maemo- and harmattan wizard pages, and add a checkbox for enabling booster specifically for harmattan. Change-Id: If5653abbf6d29b5f946718d10bc12404df19c16c Reviewed-on: http://codereview.qt.nokia.com/3731 Reviewed-by: Qt Sanity Bot Reviewed-by: Alessandro Portale Reviewed-by: Christian Kandeler --- .../qt4projectmanager/qt4projectmanager.pro | 1 + .../wizards/abstractmobileapp.cpp | 27 +++- .../wizards/abstractmobileapp.h | 7 + .../wizards/abstractmobileappwizard.cpp | 8 +- .../wizards/abstractmobileappwizard.h | 3 +- .../mobileappwizardharmattanoptionspage.ui | 95 +++++++++++ .../mobileappwizardmaemooptionspage.ui | 2 +- .../wizards/mobileappwizardpages.cpp | 150 ++++++++++++++---- .../wizards/mobileappwizardpages.h | 24 ++- .../qt4projectmanager/wizards/qtquickapp.cpp | 12 +- 10 files changed, 285 insertions(+), 44 deletions(-) create mode 100644 src/plugins/qt4projectmanager/wizards/mobileappwizardharmattanoptionspage.ui diff --git a/src/plugins/qt4projectmanager/qt4projectmanager.pro b/src/plugins/qt4projectmanager/qt4projectmanager.pro index 5452bf28be7..81410e78fb7 100644 --- a/src/plugins/qt4projectmanager/qt4projectmanager.pro +++ b/src/plugins/qt4projectmanager/qt4projectmanager.pro @@ -137,6 +137,7 @@ FORMS += makestep.ui \ wizards/mobileappwizardgenericoptionspage.ui \ wizards/mobileappwizardsymbianoptionspage.ui \ wizards/mobileappwizardmaemooptionspage.ui \ + wizards/mobileappwizardharmattanoptionspage.ui \ wizards/qtquickcomponentsetoptionspage.ui RESOURCES += qt4projectmanager.qrc \ diff --git a/src/plugins/qt4projectmanager/wizards/abstractmobileapp.cpp b/src/plugins/qt4projectmanager/wizards/abstractmobileapp.cpp index a5ccd36786c..c39bc934cbd 100644 --- a/src/plugins/qt4projectmanager/wizards/abstractmobileapp.cpp +++ b/src/plugins/qt4projectmanager/wizards/abstractmobileapp.cpp @@ -42,6 +42,7 @@ #endif // CREATORLESSTEST #include +#include namespace Qt4ProjectManager { @@ -62,8 +63,11 @@ const QString AbstractMobileApp::FileStubVersion(QLatin1String("version")); const int AbstractMobileApp::StubVersion = 6; AbstractMobileApp::AbstractMobileApp() - : m_orientation(ScreenOrientationAuto) + : QObject() + , m_canSupportMeegoBooster(false) + , m_orientation(ScreenOrientationAuto) , m_networkEnabled(true) + , m_supportsMeegoBooster(false) { } @@ -209,7 +213,10 @@ QByteArray AbstractMobileApp::generateDesktopFile(QString *errorMessage, int fil } else if (fileType == AbstractGeneratedFileInfo::DesktopFileHarmattan) { desktopFileContent.replace("Icon=thisApp", "Icon=/usr/share/icons/hicolor/80x80/apps/" + projectName().toUtf8() + "80.png"); - desktopFileContent.replace("Exec=", "Exec=/usr/bin/single-instance "); + if (m_supportsMeegoBooster) + desktopFileContent.replace("Exec=", "Exec=/usr/bin/invoker --type=d -s "); + else + desktopFileContent.replace("Exec=", "Exec=/usr/bin/single-instance "); } return desktopFileContent.replace("thisApp", projectName().toUtf8()); } @@ -416,6 +423,22 @@ QString AbstractMobileApp::error() const return m_error; } +bool AbstractMobileApp::canSupportMeegoBooster() const +{ + return m_canSupportMeegoBooster; +} + +bool AbstractMobileApp::supportsMeegoBooster() const +{ + return m_supportsMeegoBooster; +} + +void AbstractMobileApp::setSupportsMeegoBooster(bool supportMeegoBooster) +{ + QTC_ASSERT(canSupportMeegoBooster(), return); + m_supportsMeegoBooster = supportMeegoBooster; +} + QByteArray AbstractMobileApp::readBlob(const QString &filePath, QString *errorMsg) const { diff --git a/src/plugins/qt4projectmanager/wizards/abstractmobileapp.h b/src/plugins/qt4projectmanager/wizards/abstractmobileapp.h index f4bea31e2b6..b652feed16d 100644 --- a/src/plugins/qt4projectmanager/wizards/abstractmobileapp.h +++ b/src/plugins/qt4projectmanager/wizards/abstractmobileapp.h @@ -133,6 +133,10 @@ public: QString path(int fileType) const; QString error() const; + bool canSupportMeegoBooster() const; + bool supportsMeegoBooster() const; + void setSupportsMeegoBooster(bool supportBooster); + #ifndef CREATORLESSTEST virtual Core::GeneratedFiles generateFiles(QString *errorMessage) const; #else @@ -168,6 +172,8 @@ protected: static const int StubVersion; QString m_error; + bool m_canSupportMeegoBooster; + private: QByteArray generateDesktopFile(QString *errorMessage, int fileType) const; QByteArray generateMainCpp(QString *errorMessage) const; @@ -194,6 +200,7 @@ private: QString m_symbianTargetUid; ScreenOrientation m_orientation; bool m_networkEnabled; + bool m_supportsMeegoBooster; }; } // namespace Qt4ProjectManager diff --git a/src/plugins/qt4projectmanager/wizards/abstractmobileappwizard.cpp b/src/plugins/qt4projectmanager/wizards/abstractmobileappwizard.cpp index 55f9c6ddee0..30a09dc2c77 100644 --- a/src/plugins/qt4projectmanager/wizards/abstractmobileappwizard.cpp +++ b/src/plugins/qt4projectmanager/wizards/abstractmobileappwizard.cpp @@ -70,8 +70,8 @@ AbstractMobileAppWizardDialog::AbstractMobileAppWizardDialog(QWidget *parent, co m_genericOptionsPage = new Internal::MobileAppWizardGenericOptionsPage; m_symbianOptionsPage = new Internal::MobileAppWizardSymbianOptionsPage; - m_maemoOptionsPage = new Internal::MobileAppWizardMaemoOptionsPage(64); - m_harmattanOptionsPage = new Internal::MobileAppWizardMaemoOptionsPage(80); + m_maemoOptionsPage = new Internal::MobileAppWizardMaemoOptionsPage; + m_harmattanOptionsPage = new Internal::MobileAppWizardHarmattanOptionsPage; } void AbstractMobileAppWizardDialog::addMobilePages() @@ -241,6 +241,7 @@ QWizard *AbstractMobileAppWizard::createWizardDialog(QWidget *parent, wdlg->m_symbianOptionsPage->setNetworkEnabled(app()->networkEnabled()); wdlg->m_maemoOptionsPage->setPngIcon(app()->maemoPngIcon64()); wdlg->m_harmattanOptionsPage->setPngIcon(app()->maemoPngIcon80()); + wdlg->m_harmattanOptionsPage->setBoosterOptionEnabled(app()->canSupportMeegoBooster()); connect(wdlg, SIGNAL(projectParametersChanged(QString, QString)), SLOT(useProjectPath(QString, QString))); foreach (QWizardPage *p, extensionPages) @@ -259,6 +260,9 @@ Core::GeneratedFiles AbstractMobileAppWizard::generateFiles(const QWizard *wizar app()->setNetworkEnabled(wdlg->m_symbianOptionsPage->networkEnabled()); app()->setMaemoPngIcon64(wdlg->m_maemoOptionsPage->pngIcon()); app()->setMaemoPngIcon80(wdlg->m_harmattanOptionsPage->pngIcon()); + if (wdlg->isHarmattanTargetSelected()) + app()->setSupportsMeegoBooster(wdlg->isHarmattanTargetSelected() + && wdlg->m_harmattanOptionsPage->supportsBooster()); prepareGenerateFiles(wizard, errorMessage); return app()->generateFiles(errorMessage); } diff --git a/src/plugins/qt4projectmanager/wizards/abstractmobileappwizard.h b/src/plugins/qt4projectmanager/wizards/abstractmobileappwizard.h index 42245c97186..47ef8969ffa 100644 --- a/src/plugins/qt4projectmanager/wizards/abstractmobileappwizard.h +++ b/src/plugins/qt4projectmanager/wizards/abstractmobileappwizard.h @@ -48,6 +48,7 @@ namespace Internal { class MobileAppWizardGenericOptionsPage; class MobileAppWizardSymbianOptionsPage; class MobileAppWizardMaemoOptionsPage; +class MobileAppWizardHarmattanOptionsPage; } /// \internal @@ -82,7 +83,7 @@ private: Internal::MobileAppWizardGenericOptionsPage *m_genericOptionsPage; Internal::MobileAppWizardSymbianOptionsPage *m_symbianOptionsPage; Internal::MobileAppWizardMaemoOptionsPage *m_maemoOptionsPage; - Internal::MobileAppWizardMaemoOptionsPage *m_harmattanOptionsPage; + Internal::MobileAppWizardHarmattanOptionsPage *m_harmattanOptionsPage; TargetSetupPage *m_targetsPage; int m_genericOptionsPageId; diff --git a/src/plugins/qt4projectmanager/wizards/mobileappwizardharmattanoptionspage.ui b/src/plugins/qt4projectmanager/wizards/mobileappwizardharmattanoptionspage.ui new file mode 100644 index 00000000000..7354c26ecce --- /dev/null +++ b/src/plugins/qt4projectmanager/wizards/mobileappwizardharmattanoptionspage.ui @@ -0,0 +1,95 @@ + + + MobileAppWizardHarmattanOptionsPage + + + + 0 + 0 + 400 + 300 + + + + WizardPage + + + + + + Application icon (80x80): + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + + + + 64 + 64 + + + + + + + + true + + + Generate code to speed up the launching on the device. + + + Make application boostable + + + true + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + diff --git a/src/plugins/qt4projectmanager/wizards/mobileappwizardmaemooptionspage.ui b/src/plugins/qt4projectmanager/wizards/mobileappwizardmaemooptionspage.ui index c21869d7cc6..20f1f979d21 100644 --- a/src/plugins/qt4projectmanager/wizards/mobileappwizardmaemooptionspage.ui +++ b/src/plugins/qt4projectmanager/wizards/mobileappwizardmaemooptionspage.ui @@ -17,7 +17,7 @@ - Application icon (%%w%%x%%h%%): + Application icon (64x64): diff --git a/src/plugins/qt4projectmanager/wizards/mobileappwizardpages.cpp b/src/plugins/qt4projectmanager/wizards/mobileappwizardpages.cpp index 3e400c03d9e..ec2721413d9 100644 --- a/src/plugins/qt4projectmanager/wizards/mobileappwizardpages.cpp +++ b/src/plugins/qt4projectmanager/wizards/mobileappwizardpages.cpp @@ -33,6 +33,7 @@ #include "mobileappwizardpages.h" #include "ui_mobileappwizardgenericoptionspage.h" #include "ui_mobileappwizardmaemooptionspage.h" +#include "ui_mobileappwizardharmattanoptionspage.h" #include "ui_mobileappwizardsymbianoptionspage.h" #include #include @@ -67,6 +68,14 @@ class MobileAppWizardMaemoOptionsPagePrivate friend class MobileAppWizardMaemoOptionsPage; }; +class MobileAppWizardHarmattanOptionsPagePrivate +{ + Ui::MobileAppWizardHarmattanOptionsPage ui; + QSize iconSize; + QString pngIcon; + friend class MobileAppWizardHarmattanOptionsPage; +}; + MobileAppWizardGenericOptionsPage::MobileAppWizardGenericOptionsPage(QWidget *parent) : QWizardPage(parent) , m_d(new MobileAppWizardGenericOptionsPagePrivate) @@ -167,18 +176,12 @@ void MobileAppWizardSymbianOptionsPage::openSvgIcon() setSvgIcon(svgIcon); } - -MobileAppWizardMaemoOptionsPage::MobileAppWizardMaemoOptionsPage(int appIconSize, - QWidget *parent) +MobileAppWizardMaemoOptionsPage::MobileAppWizardMaemoOptionsPage(QWidget *parent) : QWizardPage(parent) , m_d(new MobileAppWizardMaemoOptionsPagePrivate) { m_d->ui.setupUi(this); - QString iconLabelText = m_d->ui.appIconLabel->text(); - iconLabelText.replace(QLatin1String("%%w%%"), QString::number(appIconSize)); - iconLabelText.replace(QLatin1String("%%h%%"), QString::number(appIconSize)); - m_d->ui.appIconLabel->setText(iconLabelText); - m_d->iconSize = QSize(appIconSize, appIconSize); + m_d->iconSize = QSize(64, 64); m_d->ui.pngIconButton->setIconSize(m_d->iconSize); connect(m_d->ui.pngIconButton, SIGNAL(clicked()), this, SLOT(openPngIcon())); } @@ -193,42 +196,66 @@ QString MobileAppWizardMaemoOptionsPage::pngIcon() const return m_d->pngIcon; } -void MobileAppWizardMaemoOptionsPage::setPngIcon(const QString &icon) + +class PngIconScaler : public QObject { - QString error; - QPixmap iconPixmap(icon); - if (iconPixmap.isNull()) { - QMessageBox::critical(this, tr("Invalid Icon"), - tr("The file is not a valid image.")); - return; + Q_OBJECT +public: + PngIconScaler(const QSize &expectedSize, const QString &iconPath) + : m_expectedSize(expectedSize) + , m_iconPath(iconPath) + , m_pixmap(iconPath) + { } - QString actualIconPath; - if (iconPixmap.size() == m_d->iconSize) { - actualIconPath = icon; - } else { - const QMessageBox::StandardButton button = QMessageBox::warning(this, - tr("Wrong Icon Size"), tr("The icon needs to be %1x%2 pixels big, " - "but is not. Do you want Creator to scale it?") - .arg(m_d->iconSize.width()).arg(m_d->iconSize.height()), - QMessageBox::Ok | QMessageBox::Cancel); + bool hasRightSize() const { return m_expectedSize == m_pixmap.size(); } + QPixmap pixmap() const { return m_pixmap; } + + bool scale(QString *newPath) { + const QMessageBox::StandardButton button + = QMessageBox::warning(QApplication::activeWindow(), + tr("Wrong Icon Size"), + tr("The icon needs to be %1x%2 pixels big, " + "but is not. Do you want Qt Creator to scale it?") + .arg(m_expectedSize.width()).arg(m_expectedSize.height()), + QMessageBox::Ok | QMessageBox::Cancel); if (button != QMessageBox::Ok) - return; - iconPixmap = iconPixmap.scaled(m_d->iconSize); + return false; + + m_pixmap = m_pixmap.scaled(m_expectedSize); Utils::TempFileSaver saver; saver.setAutoRemove(false); if (!saver.hasError()) - saver.setResult(iconPixmap.save( - saver.file(), QFileInfo(icon).suffix().toAscii().constData())); + saver.setResult(m_pixmap.save( + saver.file(), QFileInfo(m_iconPath).suffix().toAscii().constData())); if (!saver.finalize()) { - QMessageBox::critical(this, tr("File Error"), - tr("Could not copy icon file: %1").arg(saver.errorString())); - return; + QMessageBox::critical(QApplication::activeWindow(), + tr("File Error"), + tr("Could not copy icon file: %1").arg(saver.errorString())); + return false; } - actualIconPath = saver.fileName(); + *newPath = saver.fileName(); + return true; + } +private: + QSize m_expectedSize; + QString m_iconPath; + QPixmap m_pixmap; +}; + + +void MobileAppWizardMaemoOptionsPage::setPngIcon(const QString &icon) +{ + QString actualIconPath; + PngIconScaler scaler(m_d->iconSize, icon); + if (scaler.hasRightSize()) { + actualIconPath = icon; + } else { + if (!scaler.scale(&actualIconPath)) + return; } - m_d->ui.pngIconButton->setIcon(iconPixmap); + m_d->ui.pngIconButton->setIcon(scaler.pixmap()); m_d->pngIcon = actualIconPath; } @@ -241,5 +268,62 @@ void MobileAppWizardMaemoOptionsPage::openPngIcon() setPngIcon(iconPath); } +MobileAppWizardHarmattanOptionsPage::MobileAppWizardHarmattanOptionsPage(QWidget *parent) + : QWizardPage(parent) + , m_d(new MobileAppWizardHarmattanOptionsPagePrivate) +{ + m_d->ui.setupUi(this); + m_d->iconSize = QSize(80, 80); + m_d->ui.pngIconButton->setIconSize(m_d->iconSize); + connect(m_d->ui.pngIconButton, SIGNAL(clicked()), this, SLOT(openPngIcon())); +} + +MobileAppWizardHarmattanOptionsPage::~MobileAppWizardHarmattanOptionsPage() +{ + delete m_d; +} + +QString MobileAppWizardHarmattanOptionsPage::pngIcon() const +{ + return m_d->pngIcon; +} + +void MobileAppWizardHarmattanOptionsPage::setPngIcon(const QString &icon) +{ + QString actualIconPath; + PngIconScaler scaler(m_d->iconSize, icon); + if (scaler.hasRightSize()) { + actualIconPath = icon; + } else { + if (!scaler.scale(&actualIconPath)) + return; + } + + m_d->ui.pngIconButton->setIcon(scaler.pixmap()); + m_d->pngIcon = actualIconPath; +} + +void MobileAppWizardHarmattanOptionsPage::openPngIcon() +{ + const QString iconPath = QFileDialog::getOpenFileName(this, + m_d->ui.appIconLabel->text(), m_d->pngIcon, + QLatin1String("*.png")); + if (!iconPath.isEmpty()) + setPngIcon(iconPath); +} + +void MobileAppWizardHarmattanOptionsPage::setBoosterOptionEnabled(bool enable) +{ + m_d->ui.makeBoostableCheckBox->setEnabled(enable); + m_d->ui.makeBoostableCheckBox->setChecked(enable); +} + +bool MobileAppWizardHarmattanOptionsPage::supportsBooster() const +{ + return m_d->ui.makeBoostableCheckBox->isChecked(); +} + } // namespace Internal } // namespace Qt4ProjectManager + +#include "mobileappwizardpages.moc" diff --git a/src/plugins/qt4projectmanager/wizards/mobileappwizardpages.h b/src/plugins/qt4projectmanager/wizards/mobileappwizardpages.h index 58ab9da9d96..b6e5a38c9bd 100644 --- a/src/plugins/qt4projectmanager/wizards/mobileappwizardpages.h +++ b/src/plugins/qt4projectmanager/wizards/mobileappwizardpages.h @@ -85,8 +85,7 @@ class MobileAppWizardMaemoOptionsPage : public QWizardPage Q_DISABLE_COPY(MobileAppWizardMaemoOptionsPage) public: - explicit MobileAppWizardMaemoOptionsPage(int appIconSize, - QWidget *parent = 0); + explicit MobileAppWizardMaemoOptionsPage(QWidget *parent = 0); virtual ~MobileAppWizardMaemoOptionsPage(); QString pngIcon() const; @@ -99,6 +98,27 @@ private: class MobileAppWizardMaemoOptionsPagePrivate *m_d; }; +class MobileAppWizardHarmattanOptionsPage : public QWizardPage +{ + Q_OBJECT + +public: + explicit MobileAppWizardHarmattanOptionsPage(QWidget *parent = 0); + virtual ~MobileAppWizardHarmattanOptionsPage(); + + QString pngIcon() const; + void setPngIcon(const QString &icon); + + void setBoosterOptionEnabled(bool enable); + bool supportsBooster() const; + +private slots: + void openPngIcon(); + +private: + class MobileAppWizardHarmattanOptionsPagePrivate *m_d; +}; + } // namespace Internal } // namespace Qt4ProjectManager diff --git a/src/plugins/qt4projectmanager/wizards/qtquickapp.cpp b/src/plugins/qt4projectmanager/wizards/qtquickapp.cpp index 72446e5bd67..77562330669 100644 --- a/src/plugins/qt4projectmanager/wizards/qtquickapp.cpp +++ b/src/plugins/qt4projectmanager/wizards/qtquickapp.cpp @@ -102,6 +102,7 @@ QtQuickApp::QtQuickApp() , m_mainQmlMode(ModeGenerate) , m_componentSet(QtQuick10Components) { + m_canSupportMeegoBooster = true; } QtQuickApp::~QtQuickApp() @@ -226,16 +227,16 @@ QString QtQuickApp::mainWindowClassName() const bool QtQuickApp::adaptCurrentMainCppTemplateLine(QString &line) const { const QLatin1Char quote('"'); - bool adaptLine = true; + if (line.contains(QLatin1String("// MAINQML"))) { insertParameter(line, quote + path(MainQmlDeployed) + quote); } else if (line.contains(QLatin1String("// ADDIMPORTPATH"))) { if (m_modules.isEmpty()) - adaptLine = false; + return false; else insertParameter(line, quote + path(ModulesDir) + quote); } - return adaptLine; + return true; } void QtQuickApp::handleCurrentProFileTemplateLine(const QString &line, @@ -263,6 +264,11 @@ void QtQuickApp::handleCurrentProFileTemplateLine(const QString &line, if (componentSet() == Symbian10Components) nextLine.remove(0, 2); // remove comment proFile << nextLine << endl; + } else if (line.contains(QLatin1String("# HARMATTAN_BOOSTABLE"))) { + QString nextLine = proFileTemplate.readLine(); // eats '# CONFIG += qdeclarative-boostable' + if (supportsMeegoBooster()) + nextLine.remove(0, 2); // remove comment + proFile << nextLine << endl; } } From 85529b030acc09f72c4681946bd526b4b62bc242 Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Wed, 31 Aug 2011 14:01:46 +0200 Subject: [PATCH 08/35] RemoteLinux: Don't show message box on remote process crash. Apparently people find that annoying. Task-number: https://projects.maemo.org/bugzilla/show_bug.cgi?id=280162 Change-Id: Ia0cec0ef49fb0c6af48933e9a0f1caf890dc4bdc Reviewed-on: http://codereview.qt.nokia.com/3964 Reviewed-by: Qt Sanity Bot Reviewed-by: Eike Ziller --- src/plugins/remotelinux/remotelinuxruncontrol.cpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/plugins/remotelinux/remotelinuxruncontrol.cpp b/src/plugins/remotelinux/remotelinuxruncontrol.cpp index 67dd6c3d007..aa0abc1cb2a 100644 --- a/src/plugins/remotelinux/remotelinuxruncontrol.cpp +++ b/src/plugins/remotelinux/remotelinuxruncontrol.cpp @@ -38,8 +38,6 @@ #include #include -#include - using namespace ProjectExplorer; namespace RemoteLinux { @@ -135,7 +133,6 @@ void AbstractRemoteLinuxRunControl::handleError(const QString &errString) { stop(); appendMessage(errString, Utils::ErrorMessageFormat); - QMessageBox::critical(0, tr("Remote Execution Failure"), errString); } void AbstractRemoteLinuxRunControl::setFinished() From 204f6bc3fa9eec196269f7ef421be0dfa4ae5d5a Mon Sep 17 00:00:00 2001 From: Robert Loehning Date: Thu, 1 Sep 2011 21:40:26 +0200 Subject: [PATCH 09/35] Simplified code Change-Id: I43aa8182d77b4727a503a9a9ed6e7ebe7f7e9f1e Reviewed-on: http://codereview.qt.nokia.com/4102 Reviewed-by: Qt Sanity Bot Reviewed-by: Eike Ziller --- src/plugins/bineditor/bineditor.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/plugins/bineditor/bineditor.cpp b/src/plugins/bineditor/bineditor.cpp index 191e9345cdc..c12b61db716 100644 --- a/src/plugins/bineditor/bineditor.cpp +++ b/src/plugins/bineditor/bineditor.cpp @@ -945,8 +945,8 @@ void BinEditor::setCursorPosition(int pos, MoveMode moveMode) hasSelection = m_anchorPosition != m_cursorPosition; updateLines(hasSelection ? oldCursorPosition : m_cursorPosition, m_cursorPosition); ensureCursorVisible(); - if (hasSelection != (m_anchorPosition != m_anchorPosition)) - emit copyAvailable(m_anchorPosition != m_cursorPosition); + if (hasSelection) + emit copyAvailable(hasSelection); emit cursorPositionChanged(m_cursorPosition); } From 5431ab156f7a6ed17e5c2c1ae872015e23d6c27a Mon Sep 17 00:00:00 2001 From: Sergey Belyashov Date: Mon, 5 Sep 2011 17:46:56 +0200 Subject: [PATCH 10/35] Updated Russian translation Merge-request: 2203 Reviewed-by: Oswald Buddenhagen Change-Id: I3adad8041ebcefb4802b0b010cfc938bcbd50e71 --- share/qtcreator/translations/qtcreator_ru.ts | 52 +++++++++++++++++--- 1 file changed, 44 insertions(+), 8 deletions(-) diff --git a/share/qtcreator/translations/qtcreator_ru.ts b/share/qtcreator/translations/qtcreator_ru.ts index 586ebc6071b..1a93788639f 100644 --- a/share/qtcreator/translations/qtcreator_ru.ts +++ b/share/qtcreator/translations/qtcreator_ru.ts @@ -1482,6 +1482,10 @@ Local pulls are not applied to the master branch. Unix Generator (%1) Генератор для Unix (%1) + + No generator selected. + Генератор не выбран. + No valid cmake executable specified. Не указана корректная программа cmake. @@ -9354,7 +9358,7 @@ Add, modify, and remove document filters, which determine the documentation set FlowSpecifics Flow - Перетекание + Перетекание Spacing @@ -11152,7 +11156,7 @@ You can choose between stashing the changes or discarding them. Flow - Перетекание + Перетекание Spacing @@ -11183,11 +11187,11 @@ You can choose between stashing the changes or discarding them. Resize wraps - + Перенос при изменении размера Determines whether the grid wraps key navigation. - + Определяет, меняет ли сетка навигацию клавишами. Snap mode @@ -11243,7 +11247,7 @@ You can choose between stashing the changes or discarding them. Flow - Перетекание + Перетекание Grid View Highlight @@ -11907,11 +11911,11 @@ QML. Navigation wraps - + Перенос при перемещениях Determines whether the grid wraps key navigation. - + Определяет, меняет ли сетка навигацию клавишами. Orientation of the list. @@ -18032,6 +18036,14 @@ Please build the debugging helpers on the Qt version options page. The QML Profiler can be used to find performance bottlenecks in applications using QML. QML Profiler предназначен для поиска узких мест в приложениях использующих QML. + + The QML profiler requires Qt 4.7.4 or newer. +The Qt version configured in your active build configuration is too old. +Do you want to continue? + Профилеру QML требуется Qt версии 4.7.4 или выше. +Версия Qt настроенная для текущей конфигурации сборки слишком старая. +Продолжить? + Events События @@ -20784,10 +20796,34 @@ Reason: %2 Add Build Добавить сборку + + Create Build Configurations: + Создать конфигурации сборки: + + + For Each Qt Version One Debug And One Release + Одну отладочную и одну релизную для каждого профиля Qt + + + For One Qt Version One Debug And One Release + Одну отладочную и одну релизную для одного профиля Qt + + + Manually + Вручную + + + None + Не создавать + Use Shadow Building Использовать теневую сборку + + Qt Version: + Профиль Qt: + debug Debug build @@ -27141,7 +27177,7 @@ Influences the indentation of continuation lines. Valgrind::Callgrind::ParseData Last-level - Последний уровень + Последний уровень Instruction From 3bf7a7bcfbbeb58a86014d6cf65a1a42becb5a81 Mon Sep 17 00:00:00 2001 From: Beaver Xu Date: Mon, 5 Sep 2011 18:48:02 +0200 Subject: [PATCH 11/35] chinese translation fixes Merge-request: 375 Reviewed-by: Oswald Buddenhagen Change-Id: Ibbf38354f2d687e9991d0bc522574df4de5bd387 --- .../qtcreator/translations/qtcreator_zh_CN.ts | 133 +++++++++--------- 1 file changed, 67 insertions(+), 66 deletions(-) diff --git a/share/qtcreator/translations/qtcreator_zh_CN.ts b/share/qtcreator/translations/qtcreator_zh_CN.ts index 094f3c25125..2e65e25b67d 100644 --- a/share/qtcreator/translations/qtcreator_zh_CN.ts +++ b/share/qtcreator/translations/qtcreator_zh_CN.ts @@ -102,7 +102,7 @@ BINEditor::Internal::BinEditorPlugin &Undo - 撤销(&U) + 撤销 &Redo @@ -245,7 +245,7 @@ Bookmarks::Internal::BookmarksPlugin &Bookmarks - 书签(&B) + 书签 Toggle Bookmark @@ -756,7 +756,7 @@ CodePaster::CodepasterPlugin &Code Pasting - 粘贴代码(&C) + 粘贴代码 Paste Snippet... @@ -1216,7 +1216,7 @@ Would you like to overwrite them? Save %1 &As... - %1 另存为(&A)... + %1 另存为... Goto Other Split @@ -1332,7 +1332,7 @@ Would you like to overwrite them? Ad&vanced - 高级(&v) + 高级 Full path of the current document including file name. @@ -1757,11 +1757,11 @@ Would you like to overwrite them? &New File or Project... - 新建文件或工程(&N)... + 新建文件或工程... &Open File or Project... - 打开文件或工程(&O)... + 打开文件或工程... &Open File With... @@ -1773,19 +1773,20 @@ Would you like to overwrite them? Open File &With... - 用...打开文件(&W)... + 不需要快捷键 + 用...打开文件 Recent &Files - 最近访问的文件(&F) + 最近访问的文件 &Save - 保存(&S) + 保存 Save &As... - 另存为(&A)... + 另存为... Ctrl+Shift+S @@ -1793,15 +1794,15 @@ Would you like to overwrite them? Save A&ll - 保存所有文件(&l) + 保存所有文件 &Print... - 打印(&P)... + 打印... E&xit - 退出(&x) + 退出 Ctrl+Q @@ -1809,7 +1810,7 @@ Would you like to overwrite them? &Undo - 撤销(&U) + 撤销 &Redo @@ -1817,23 +1818,23 @@ Would you like to overwrite them? Cu&t - 剪切(&t) + 剪切 &Copy - 复制(&C) + 复制 &Paste - 粘贴(&P) + 粘贴 Select &All - 全选(&A) + 全选 &Go to Line... - 转到行(&G)... + 转到行... &Select All @@ -1849,7 +1850,7 @@ Would you like to overwrite them? &Options... - 选项(&O)... + 选项... Minimize @@ -1869,19 +1870,19 @@ Would you like to overwrite them? &Views - 视图(&V) + 视图 About &Qt Creator - 关于 Qt Creator(&Q) + 关于 Qt Creator About &Qt Creator... - 关于 Qt Creator(&Q)... + 关于 Qt Creator... About &Plugins... - 关于插件(&P)... + 关于插件... New @@ -2058,7 +2059,7 @@ Would you like to overwrite them? Output &Panes - 输出窗口(&P) + 输出窗口 @@ -2990,7 +2991,7 @@ Would you like to overwrite them? CppTools::Internal::CppToolsPlugin &C++ - C++(&C) + C++ Switch Header/Source @@ -9039,11 +9040,11 @@ on slow machines. In this case, the value should be increased. &Undo - 撤销(&U) + 撤销 &Redo - 重做(&R) + 重做 Could not find working directory @@ -9453,7 +9454,7 @@ on slow machines. In this case, the value should be increased. Technical Support - 计数支持 + 技术支持 Report Bug @@ -10181,11 +10182,11 @@ SOURCES *= .../ide/main/bin/dumper/dumper.cpp &Undo - 撤销(&U) + 撤销 &Redo - 重做(&R) + 重做 p4 revert @@ -11757,7 +11758,7 @@ to project '%2'. &Start Debugging - 开始调试(&S) + 开始调试 Open With @@ -11809,7 +11810,7 @@ to project '%2'. Recent P&rojects - 最近使用的项目(&r) + 最近使用的项目 Close Project @@ -14506,11 +14507,11 @@ To do this, you type this shortcut and a space in the Locator entry field, and t &Undo - 撤销(&U) + 撤销 &Redo - 重做(&R) + 重做 @@ -15096,11 +15097,11 @@ To do this, you type this shortcut and a space in the Locator entry field, and t &Undo - 撤销(&U) + 撤销 &Redo - 重做(&R) + 重做 Closing Subversion Editor @@ -15595,7 +15596,7 @@ Influences the indentation of continuation lines. &Visualize whitespace - 标示空白(&V) + 标示空白 Highlight current &line @@ -15607,7 +15608,7 @@ Influences the indentation of continuation lines. Enable text &wrapping - 开启文字折行(&w) + 开启文字折行 Display right &margin at column: @@ -15881,11 +15882,11 @@ The following encodings are likely to fit: TextEditor::TextEditorActionHandler &Undo - 撤销(&U) + 撤销 &Redo - 重做(&R) + 重做 Select Encoding... @@ -15893,7 +15894,7 @@ The following encodings are likely to fit: Auto-&indent Selection - 选中的文字自动缩进(&i) + 选中的文字自动缩进 Ctrl+I @@ -15913,7 +15914,7 @@ The following encodings are likely to fit: &Visualize Whitespace - 标示空白符(&V) + 标示空白 Clean Whitespace @@ -15921,7 +15922,7 @@ The following encodings are likely to fit: Enable Text &Wrapping - 开启文字折行(&W) + 开启文字折行 (Un)Comment &Selection @@ -15985,7 +15986,7 @@ The following encodings are likely to fit: &Rewrap Paragraph - 段落重新折行(&R) + 段落重新折行 %1+E, %2+V @@ -15997,7 +15998,7 @@ The following encodings are likely to fit: Toggle Comment &Selection - 选中评论选择(&S) + 选中区域注释/反注释 Cut &Line @@ -16069,7 +16070,7 @@ The following encodings are likely to fit: Toggle &Fold All - 选择 折叠/展开所有(&F) + 选择 折叠/展开所有 Ctrl+} @@ -18339,11 +18340,11 @@ p, li { white-space: pre-wrap; } &Undo - 撤销(&U) + 撤销 &Redo - 重做(&R) + 重做 Closing CVS Editor @@ -20817,11 +20818,11 @@ S60 emulator run configuration default display name, %1 is base pro-File name &Undo - 撤销(&U) + 撤销 &Redo - 重做(&R) + 重做 There are no changes to commit. @@ -22150,11 +22151,11 @@ You can choose between stashing the changes or discarding them. Save P&ublic Key... - 保存公钥文件(&u)... + 保存公钥文件... Save Pr&ivate Key... - 保存私钥文件(&i)... + 保存私钥文件... &Close @@ -23226,7 +23227,7 @@ Previous decimal signed value (big endian): %4 Find::FindPlugin &Find/Replace - 查找/替换(&F) + 查找/替换 Advanced Find @@ -24173,11 +24174,11 @@ Ids must begin with a lowercase letter. QmlDesigner::Internal::DesignModeWidget &Undo - 撤销(&U) + 撤销 &Redo - 重做(&R) + 重做 Delete @@ -24189,7 +24190,7 @@ Ids must begin with a lowercase letter. Cu&t - 剪切(&t) + 剪切 Cut "%1" @@ -24197,7 +24198,7 @@ Ids must begin with a lowercase letter. &Copy - 复制(&C) + 复制 Copy "%1" @@ -24205,7 +24206,7 @@ Ids must begin with a lowercase letter. &Paste - 粘贴(&P) + 粘贴 Paste "%1" @@ -24213,7 +24214,7 @@ Ids must begin with a lowercase letter. Select &All - 全选(&A) + 全选 Select All "%1" @@ -24268,7 +24269,7 @@ Ids must begin with a lowercase letter. &Save %1 - 保存%1(&S) + 保存%1 Revert %1 to Saved @@ -30329,7 +30330,7 @@ instead of its installation directory when run outside git bash. &Copy Name of the action triggering the copytaskhandler - 复制(&C) + 复制 Copy task to clipboard @@ -34612,11 +34613,11 @@ Influences the indentation of continuation lines. &Undo - 撤销(&U) + 撤销 &Redo - 重做(&R) + 重做 There are no changes to commit. @@ -34894,7 +34895,7 @@ Note: This might remove the local file. &Refactor - 重构(&R) + 重构 Unused variable From 005e283b05108e88e498b45007ed9d7dea7d67ef Mon Sep 17 00:00:00 2001 From: axasia Date: Mon, 5 Sep 2011 18:57:53 +0200 Subject: [PATCH 12/35] Update japanese translation for 2.3. Merge-request: 376 Reviewed-by: Oswald Buddenhagen Change-Id: I611a10a7d3c5bd8cdc15d5924e182531befcff1f --- share/qtcreator/translations/qtcreator_ja.ts | 101 ++++++++++++++++++- 1 file changed, 100 insertions(+), 1 deletion(-) diff --git a/share/qtcreator/translations/qtcreator_ja.ts b/share/qtcreator/translations/qtcreator_ja.ts index 6a45f63f9fc..1bdbacd74d6 100644 --- a/share/qtcreator/translations/qtcreator_ja.ts +++ b/share/qtcreator/translations/qtcreator_ja.ts @@ -1499,6 +1499,10 @@ Local pulls are not applied to the master branch. Unix Generator (%1) Unix ジェネレータ (%1) + + No generator selected. + ジェネレータが選択されていません。 + CMake exited with errors. Please check CMake output. CMake は異常終了しました。CMake の出力を確認して下さい。 @@ -17871,7 +17875,15 @@ Please build the debugging helpers on the Qt version options page. The QML Profiler can be used to find performance bottlenecks in applications using QML. - jQML プロファイラは、QML を使っているアプリケーションの性能のボトルネックを探すのに使用する事ができます。 + QML プロファイラは、QML を使っているアプリケーションの性能のボトルネックを探すのに使用する事ができます。 + + + The QML profiler requires Qt 4.7.4 or newer. +The Qt version configured in your active build configuration is too old. +Do you want to continue? + QML プロファイラは Qt 4.7.4 以降を要求しますが +アクティブなビルド構成で構成されている Qt バージョンは古すぎます。 +続行しますか? Events @@ -20622,10 +20634,34 @@ Reason: %2 Add Build ビルドを追加 + + Create Build Configurations: + ビルド構成の作成: + + + For Each Qt Version One Debug And One Release + Qt バージョン毎に Debug と Release を1つずつ + + + For One Qt Version One Debug And One Release + 1つの Qt バージョンで Debug と Release を1つずつ + + + Manually + 手動 + + + None + なし + Use Shadow Building シャドウビルドを使用 + + Qt Version: + Qt バージョン: + debug Debug build @@ -27852,4 +27888,67 @@ p, li { white-space: pre-wrap; } text + + Core::Internal::ExternalTool + + Creates qm translation files that can be used by an application from the translator's ts files + ts ファイルからアプリケーションが利用する事ができる qm ファイルを作成します + + + Release Translations (lrelease) + 翻訳をリリース (lrelease) + + + Linguist + Linguist + + + Synchronizes translator's ts files with the program code + プログラムコードと ts ファイルを同期します + + + Update Translations (lupdate) + 翻訳を更新 (lupdate) + + + Opens the current file in Notepad + 現在のファイルをメモ帳で開きます + + + Edit with Notepad + メモ帳で編集 + + + Text + テキスト + + + Runs the current QML file with qmlviewer + 現在の QML ファイルを qmlviewer で実行します + + + Preview (qmlviewer) + プレビュー (qmlviewer) + + + Qt Quick + Qt Quick + + + Sorts the selected text + 選択しているテキストをソートします + + + Sort Selection + 選択をソート + + + Opens the current file in vi + 現在のファイルを vi で開きます + + + Edit with vi + vi で編集 + + From 38fce2ccb8fe88f1c9e65f5ed881fb201d5a597d Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Wed, 7 Sep 2011 12:02:04 +0200 Subject: [PATCH 13/35] Creating changes-2.3.1 file Change-Id: I7c80df7a17c0ed99e4d66861980b0b0f6d2d4606 Reviewed-on: http://codereview.qt.nokia.com/4337 Reviewed-by: Eike Ziller --- dist/changes-2.3.1 | 56 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 dist/changes-2.3.1 diff --git a/dist/changes-2.3.1 b/dist/changes-2.3.1 new file mode 100644 index 00000000000..2bdb056be45 --- /dev/null +++ b/dist/changes-2.3.1 @@ -0,0 +1,56 @@ +Qt Creator version 2.3.1 contains bug fixes on top of 2.3. + +The most important changes are listed in this document. For a complete +list of changes, see the Git log for the Qt Creator sources that +you can check out from the public Git repository. For example: + +git clone git://gitorious.org/qt-creator/qt-creator.git +git log --cherry-pick --pretty=oneline v2.3.0..origin/2.3 + +General + +Editing + +Managing Projects + * Respect qmake arguments for imported build + +Debugging + +Debugging QML/JS + * Fix debugging of a Qt Quick UI project with C++ language (QTCREATORBUG-5957) + +Analyzing Code + +C++ Support + +QML/JS Support + +Qt Quick Designer + +Help + +Platform Specific + +Mac + +Linux (GNOME and KDE) + +Windows + +Symbian Target + * Warn if EPOCROOT is on different drive from the sources + +Remote Linux Support + * Harmattan: Include Aegis manifest file in list of files to add to project + * Harmattan: Use Meego booster for Qt Quick Applications + +Qt Designer + +FakeVim + +Version control plugins + +Additional credits go to: + * Axasia for updating the Japanese translations + * Beaver Xu for updating the Chinese translations + * Sergey Belyashov for updating the Russian translations From 51d0e389511f275630a5b3ac85eae47a0f4cfb70 Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Mon, 5 Sep 2011 15:49:30 +0200 Subject: [PATCH 14/35] Harmattan: Fix package version updates. Obviously, we can't just globally replace all version numbers. Instead, we now duplicate the latest entry and replace version number, date and comments. Also implemented is a simple check guarding against downgrading, which just checks whether the "new" version number already appears in the changlog file. Task-number: https://bugreports.qt.nokia.com/browse/QTCREATORBUG-5797 Change-Id: I17512169972415f60d1a9715ac8b98d185da8694 Reviewed-on: http://codereview.qt.nokia.com/4209 Reviewed-by: Qt Sanity Bot Reviewed-by: Eike Ziller --- .../maemopackagecreationwidget.cpp | 13 ++++- src/plugins/remotelinux/qt4maemotarget.cpp | 50 +++++++++++++++++-- 2 files changed, 58 insertions(+), 5 deletions(-) diff --git a/src/plugins/remotelinux/maemopackagecreationwidget.cpp b/src/plugins/remotelinux/maemopackagecreationwidget.cpp index bf37c99b3ef..121a5514f9f 100644 --- a/src/plugins/remotelinux/maemopackagecreationwidget.cpp +++ b/src/plugins/remotelinux/maemopackagecreationwidget.cpp @@ -72,7 +72,6 @@ void MaemoPackageCreationWidget::initGui() { m_ui->shortDescriptionLineEdit->setMaxLength(60); updateVersionInfo(); - versionInfoChanged(); const AbstractDebBasedQt4MaemoTarget * const debBasedMaemoTarget = m_step->debBasedMaemoTarget(); if (debBasedMaemoTarget) { @@ -142,9 +141,17 @@ void MaemoPackageCreationWidget::updateVersionInfo() } const QStringList list = versionString.split(QLatin1Char('.'), QString::SkipEmptyParts); + const bool blocked = m_ui->major->signalsBlocked(); + m_ui->major->blockSignals(true); + m_ui->minor->blockSignals(true); + m_ui->patch->blockSignals(true); m_ui->major->setValue(list.value(0, QLatin1String("0")).toInt()); m_ui->minor->setValue(list.value(1, QLatin1String("0")).toInt()); m_ui->patch->setValue(list.value(2, QLatin1String("0")).toInt()); + m_ui->major->blockSignals(blocked); + m_ui->minor->blockSignals(blocked); + m_ui->patch->blockSignals(blocked); + updateSummary(); } void MaemoPackageCreationWidget::handleControlFileUpdate() @@ -249,8 +256,10 @@ void MaemoPackageCreationWidget::versionInfoChanged() const bool success = m_step->setVersionString(m_ui->major->text() + QLatin1Char('.') + m_ui->minor->text() + QLatin1Char('.') + m_ui->patch->text(), &error); - if (!success) + if (!success) { QMessageBox::critical(this, tr("Could Not Set Version Number"), error); + updateVersionInfo(); + } } void MaemoPackageCreationWidget::editDebianFile() diff --git a/src/plugins/remotelinux/qt4maemotarget.cpp b/src/plugins/remotelinux/qt4maemotarget.cpp index 02fd14ed512..3b3e1d3b8a1 100644 --- a/src/plugins/remotelinux/qt4maemotarget.cpp +++ b/src/plugins/remotelinux/qt4maemotarget.cpp @@ -55,6 +55,8 @@ #include #include #include +#include +#include #include #include #include @@ -412,8 +414,50 @@ bool AbstractDebBasedQt4MaemoTarget::setProjectVersionInternal(const QString &ve if (!reader.fetch(filePath, error)) return false; QString content = QString::fromUtf8(reader.data()); - content.replace(QRegExp(QLatin1String("\\([a-zA-Z0-9_\\.]+\\)")), - QLatin1Char('(') + version + QLatin1Char(')')); + if (content.contains(QLatin1Char('(') + version + QLatin1Char(')'))) { + if (error) { + *error = tr("Refusing to update changelog file: Already contains version '%1'.") + .arg(version); + } + return false; + } + + int maintainerOffset = content.indexOf(QLatin1String("\n -- ")); + const int eolOffset = content.indexOf(QLatin1Char('\n'), maintainerOffset+1); + if (maintainerOffset == -1 || eolOffset == -1) { + if (error) { + *error = tr("Cannot update changelog: Invalid format (no maintainer entry found)."); + } + return false; + } + + ++maintainerOffset; + const QDateTime currentDateTime = QDateTime::currentDateTime(); + QDateTime utcDateTime = QDateTime(currentDateTime); + utcDateTime.setTimeSpec(Qt::UTC); + int utcOffsetSeconds = currentDateTime.secsTo(utcDateTime); + QChar sign; + if (utcOffsetSeconds < 0) { + utcOffsetSeconds = -utcOffsetSeconds; + sign = QLatin1Char('-'); + } else { + sign = QLatin1Char('+'); + } + const int utcOffsetMinutes = (utcOffsetSeconds / 60) % 60; + const int utcOffsetHours = utcOffsetSeconds / 3600; + const QString dateString = QString::fromLatin1("%1 %2%3%4") + .arg(currentDateTime.toString(QLatin1String("ddd, dd MMM yyyy hh:mm:ss"))).arg(sign) + .arg(utcOffsetHours, 2, 10, QLatin1Char('0')) + .arg(utcOffsetMinutes, 2, 10, QLatin1Char('0')); + const QString maintainerLine = content.mid(maintainerOffset, eolOffset - maintainerOffset + 1) + .replace(QRegExp(QLatin1String("> [^\\n]*\n")), + QString::fromLocal8Bit("> %1").arg(dateString)); + QString versionLine = content.left(content.indexOf(QLatin1Char('\n'))) + .replace(QRegExp(QLatin1String("\\([a-zA-Z0-9_\\.]+\\)")), + QLatin1Char('(') + version + QLatin1Char(')')); + const QString newEntry = versionLine + QLatin1String("\n * \n\n") + + maintainerLine + QLatin1String("\n\n"); + content.prepend(newEntry); Core::FileChangeBlocker update(filePath); Utils::FileSaver saver(filePath); saver.write(content.toUtf8()); @@ -664,6 +708,7 @@ void AbstractDebBasedQt4MaemoTarget::handleTargetAddedSpecial() if (QFileInfo(iconPath).exists()) setPackageManagerIcon(iconPath); } + m_filesWatcher->addDirectory(debianDirPath(), Utils::FileSystemWatcher::WatchAllChanges); m_controlFile = new WatchableFile(controlFilePath(), this); connect(m_controlFile, SIGNAL(modified()), SIGNAL(controlChanged())); @@ -871,7 +916,6 @@ bool AbstractDebBasedQt4MaemoTarget::setPackageManagerIcon(const QString &iconFi return success; } - AbstractRpmBasedQt4MaemoTarget::AbstractRpmBasedQt4MaemoTarget(Qt4Project *parent, const QString &id) : AbstractQt4MaemoTarget(parent, id) { From 23c3fb7c5f5c5ff9b92eac121ae988cfae4f4aad Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Wed, 7 Sep 2011 07:43:37 +0200 Subject: [PATCH 15/35] Harmattan: Fix initial packaging icon. The code had not been updated when the application icon file name changed in the wizard. Change-Id: I3f489ca09ac1bda4f10166235692a43ca23e638a Reviewed-on: http://codereview.qt.nokia.com/4305 Reviewed-by: Qt Sanity Bot Reviewed-by: Eike Ziller --- src/plugins/remotelinux/qt4maemotarget.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/remotelinux/qt4maemotarget.cpp b/src/plugins/remotelinux/qt4maemotarget.cpp index 3b3e1d3b8a1..26bbb2c4c33 100644 --- a/src/plugins/remotelinux/qt4maemotarget.cpp +++ b/src/plugins/remotelinux/qt4maemotarget.cpp @@ -704,7 +704,7 @@ void AbstractDebBasedQt4MaemoTarget::handleTargetAddedSpecial() // Such a file is created by the mobile wizards. const QString iconPath = project()->projectDirectory() + QLatin1Char('/') + project()->displayName() - + QLatin1String(".png"); + + QLatin1String("64.png"); if (QFileInfo(iconPath).exists()) setPackageManagerIcon(iconPath); } From f4e59af18d66917cced0a36201031d6c40c0726a Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Wed, 7 Sep 2011 13:14:05 +0200 Subject: [PATCH 16/35] List new changes-2.3.1 file in qtcreator.pro Change-Id: I611935b4c993d70a566fe1cbc6bcf5eb362339c2 Reviewed-on: http://codereview.qt.nokia.com/4349 Reviewed-by: Eike Ziller --- qtcreator.pro | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/qtcreator.pro b/qtcreator.pro index 599eed3f88d..ac7c93770f1 100644 --- a/qtcreator.pro +++ b/qtcreator.pro @@ -25,4 +25,5 @@ OTHER_FILES += dist/copyright_template.txt \ dist/changes-2.0.1 \ dist/changes-2.1.0 \ dist/changes-2.2.0 \ - dist/changes-2.3.0 + dist/changes-2.3.0 \ + dist/changes-2.3.1 From fa3fe48288e199a7efb926707d0280a65f6ffab0 Mon Sep 17 00:00:00 2001 From: Robert Loehning Date: Thu, 1 Sep 2011 21:47:47 +0200 Subject: [PATCH 17/35] Fixed CVSSettings::equals Change-Id: I893d740558ddcca1ac20f27088d9388a854be16d Reviewed-on: http://codereview.qt.nokia.com/4103 Reviewed-by: Qt Sanity Bot Reviewed-by: Tobias Hunger --- src/plugins/cvs/cvssettings.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/cvs/cvssettings.cpp b/src/plugins/cvs/cvssettings.cpp index 26f1ca7b3cf..beda68459ba 100644 --- a/src/plugins/cvs/cvssettings.cpp +++ b/src/plugins/cvs/cvssettings.cpp @@ -94,7 +94,7 @@ void CVSSettings::toSettings(QSettings *settings) const bool CVSSettings::equals(const CVSSettings &s) const { - return promptToSubmit == promptToSubmit + return promptToSubmit == s.promptToSubmit && describeByCommitId == s.describeByCommitId && cvsCommand == s.cvsCommand && cvsRoot == s.cvsRoot From c4fb17bef9175557ab071a154b6799e098fdb379 Mon Sep 17 00:00:00 2001 From: Daniel Molkentin Date: Wed, 7 Sep 2011 17:04:44 +0200 Subject: [PATCH 18/35] Respect 64 bit library path for Qt Components Task-Number: QTCREATORBUG-6033 Change-Id: Ib1734956ea88d576354afad686880fa91ea0a38e Reviewed-on: http://codereview.qt-project.org/4371 Reviewed-by: Qt Sanity Bot Reviewed-by: Eike Ziller --- lib/qtcreator/qtcomponents/qtcomponents.pro | 2 +- src/libs/qtcomponents/styleitem/styleitem.pro | 2 +- src/plugins/qmldesigner/customstyleplugin/plugindestdir.pri | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/qtcreator/qtcomponents/qtcomponents.pro b/lib/qtcreator/qtcomponents/qtcomponents.pro index 9a3dc0e67fb..5cf2d9adb9c 100644 --- a/lib/qtcreator/qtcomponents/qtcomponents.pro +++ b/lib/qtcreator/qtcomponents/qtcomponents.pro @@ -52,6 +52,6 @@ DATA_FILE_PATTERNS = \ !macx { qmlfiles.files = $$PWD/*.qml $$PWD/qmldir $$PWD/images $$PWD/custom - qmlfiles.path = /lib/qtcreator/qtcomponents + qmlfiles.path = /$${IDE_LIBRARY_BASENAME}/qtcreator/qtcomponents INSTALLS += qmlfiles } diff --git a/src/libs/qtcomponents/styleitem/styleitem.pro b/src/libs/qtcomponents/styleitem/styleitem.pro index aa52c88a136..90b8eee8ce9 100644 --- a/src/libs/qtcomponents/styleitem/styleitem.pro +++ b/src/libs/qtcomponents/styleitem/styleitem.pro @@ -29,6 +29,6 @@ SOURCES += qtmenu.cpp \ qwheelarea.cpp !macx { - target.path = /lib/qtcreator/qtcomponents/plugin + target.path = /$${IDE_LIBRARY_BASENAME}/qtcreator/qtcomponents/plugin INSTALLS += target } diff --git a/src/plugins/qmldesigner/customstyleplugin/plugindestdir.pri b/src/plugins/qmldesigner/customstyleplugin/plugindestdir.pri index 24f0c19b72b..8f56b17cc19 100644 --- a/src/plugins/qmldesigner/customstyleplugin/plugindestdir.pri +++ b/src/plugins/qmldesigner/customstyleplugin/plugindestdir.pri @@ -1,5 +1,5 @@ macx { DESTDIR = $$IDE_LIBRARY_PATH/QmlDesigner } else { - DESTDIR = $$IDE_BUILD_TREE/lib/qmldesigner + DESTDIR = $$IDE_BUILD_TREE/$${IDE_LIBRARY_PATH}/qmldesigner } From eb206dfed7a0a94032a4eeb30c39369ff0cd5298 Mon Sep 17 00:00:00 2001 From: Pawel Polanski Date: Thu, 8 Sep 2011 11:34:09 +0200 Subject: [PATCH 19/35] CODA: Debug output added to CODA 4.0.23 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Idd2ea3d11a5ee193205c642cc6176ec70c6ef41a Reviewed-on: http://codereview.qt-project.org/4418 Reviewed-by: Paweł Polański --- .../qt-s60/codaruncontrol.cpp | 35 ++++++------------- .../qt4projectmanager/qt-s60/codaruncontrol.h | 6 ---- 2 files changed, 11 insertions(+), 30 deletions(-) diff --git a/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.cpp b/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.cpp index fb90db4da65..1f0e24504e1 100644 --- a/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.cpp @@ -70,7 +70,6 @@ CodaRunControl::CodaRunControl(RunConfiguration *runConfiguration, const QString S60RunControlBase(runConfiguration, mode), m_port(0), m_state(StateUninit), - m_codaFlags(0), m_stopAfterConnect(false) { const S60DeviceRunConfiguration *s60runConfig = qobject_cast(runConfiguration); @@ -167,7 +166,7 @@ void CodaRunControl::doStop() case StateProcessRunning: QTC_ASSERT(!m_runningProcessId.isEmpty(), return); m_codaDevice->sendRunControlTerminateCommand(CodaCallback(), - m_runningProcessId.toAscii()); + m_runningProcessId.toAscii()); break; default: if (debug) @@ -226,10 +225,7 @@ void CodaRunControl::slotCodaEvent(const CodaEvent &event) void CodaRunControl::initCommunication() { - if (m_codaFlags & OptionsUseDebugSession) - m_codaDevice->sendDebugSessionControlSessionStartCommand(CodaCallback(this, &CodaRunControl::handleDebugSessionStarted)); - else - m_codaDevice->sendLoggingAddListenerCommand(CodaCallback(this, &CodaRunControl::handleAddListener)); + m_codaDevice->sendDebugSessionControlSessionStartCommand(CodaCallback(this, &CodaRunControl::handleDebugSessionStarted)); } void CodaRunControl::handleConnected(const CodaEvent &event) @@ -241,8 +237,6 @@ void CodaRunControl::handleConnected(const CodaEvent &event) setProgress(maxProgress()*0.80); m_codaServices = static_cast(event).services(); - if (m_codaServices.contains(QLatin1String("DebugSessionControl"))) - m_codaFlags |= OptionsUseDebugSession; emit connected(); if (!m_stopAfterConnect) @@ -255,11 +249,7 @@ void CodaRunControl::handleContextRemoved(const CodaEvent &event) = static_cast(event).ids(); if (!m_runningProcessId.isEmpty() && removedItems.contains(m_runningProcessId.toAscii())) { - appendMessage(tr("Process has finished.\n"), Utils::NormalMessageFormat); - if (m_codaFlags & OptionsUseDebugSession) - m_codaDevice->sendDebugSessionControlSessionEndCommand(CodaCallback(this, &CodaRunControl::handleDebugSessionEnded)); - else - finishRunControl(); + m_codaDevice->sendDebugSessionControlSessionEndCommand(CodaCallback(this, &CodaRunControl::handleDebugSessionEnded)); } } @@ -355,7 +345,7 @@ void CodaRunControl::handleFindProcesses(const CodaCommandResult &result) executableUid(), commandLineArguments().split(' '), QString(), - !(m_codaFlags & OptionsUseDebugSession)); + true); appendMessage(tr("Launching: %1\n").arg(executableName()), Utils::NormalMessageFormat); } } @@ -365,17 +355,14 @@ void CodaRunControl::handleCreateProcess(const CodaCommandResult &result) const bool ok = result.type == CodaCommandResult::SuccessReply; bool processCreated = false; if (ok) { - if (m_codaFlags & OptionsUseDebugSession) { - if (result.values.size()) { - JsonValue id = result.values.at(0).findChild("ID"); - if (id.isValid()) { - m_state = StateProcessRunning; - m_runningProcessId = id.data(); - processCreated = true; - } + if (result.values.size()) { + JsonValue id = result.values.at(0).findChild("ID"); + if (id.isValid()) { + m_state = StateProcessRunning; + m_runningProcessId = id.data(); + processCreated = true; } - } else // If no DebugSession is present the process will already be created by now - processCreated = true; + } } if (processCreated) { setProgress(maxProgress()); diff --git a/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.h b/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.h index ccbb7701e2a..584897c6e65 100644 --- a/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.h +++ b/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.h @@ -116,11 +116,6 @@ private: StateDebugSessionEnded }; - enum Options { - OptionsNone = 0, - OptionsUseDebugSession = 1 - }; - QSharedPointer m_codaDevice; QString m_address; @@ -130,7 +125,6 @@ private: QStringList m_codaServices; State m_state; - quint32 m_codaFlags; bool m_stopAfterConnect; }; From 436c5a768bc60ce1c44049104e4204cd257878a6 Mon Sep 17 00:00:00 2001 From: Pawel Polanski Date: Thu, 8 Sep 2011 15:57:52 +0200 Subject: [PATCH 20/35] CODA: Fixed crash when redeploying MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Id154468d6ee4db4eb045fde8a0e858ad5b17428f Reviewed-on: http://codereview.qt-project.org/4469 Reviewed-by: Paweł Polański --- src/plugins/qt4projectmanager/qt-s60/codaruncontrol.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.cpp b/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.cpp index 1f0e24504e1..aa1667f6f45 100644 --- a/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.cpp @@ -321,6 +321,10 @@ void CodaRunControl::handleAddListener(const CodaCommandResult &result) void CodaRunControl::handleDebugSessionStarted(const CodaCommandResult &result) { Q_UNUSED(result) + if (m_codaDevice.isNull()) { + finishRunControl(); + return; + } m_state = StateDebugSessionStarted; m_codaDevice->sendLoggingAddListenerCommand(CodaCallback(this, &CodaRunControl::handleAddListener)); } From 135b24b9107647445dce6ae5ca4647baba7f5f4d Mon Sep 17 00:00:00 2001 From: Pawel Polanski Date: Thu, 8 Sep 2011 16:10:29 +0200 Subject: [PATCH 21/35] Symbian: QML Viewre version added to info button MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I413232e486053950230fe131dc156990ac1d96cf Reviewed-on: http://codereview.qt-project.org/4470 Reviewed-by: Paweł Polański --- .../qt-s60/s60deployconfigurationwidget.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/plugins/qt4projectmanager/qt-s60/s60deployconfigurationwidget.cpp b/src/plugins/qt4projectmanager/qt-s60/s60deployconfigurationwidget.cpp index 25e94091b03..363357d6a75 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60deployconfigurationwidget.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/s60deployconfigurationwidget.cpp @@ -77,6 +77,7 @@ const char LAST_DRIVE_LETTER = 'Z'; static const quint32 CODA_UID = 0x20021F96; static const quint32 QTMOBILITY_UID = 0x2002AC89; static const quint32 QTCOMPONENTS_UID = 0x200346DE; +static const quint32 QMLVIEWER_UID = 0x20021317; QString formatDriveText(const S60DeployConfiguration::DeviceDrive &drive) { @@ -597,6 +598,7 @@ void S60DeployConfigurationWidget::getRomInfoResult(const Coda::CodaCommandResul packagesOfInterest.append(CODA_UID); packagesOfInterest.append(QTMOBILITY_UID); packagesOfInterest.append(QTCOMPONENTS_UID); + packagesOfInterest.append(QMLVIEWER_UID); if (m_codaInfoDevice) m_codaInfoDevice->sendSymbianInstallGetPackageInfoCommand(Coda::CodaCallback(this, &S60DeployConfigurationWidget::getInstalledPackagesResult), packagesOfInterest); } @@ -642,6 +644,10 @@ void S60DeployConfigurationWidget::getInstalledPackagesResult(const Coda::CodaCo addToTable(str, tr("Qt Quick components version: "), error ? tr("Not installed") : versionString); } break; + case QMLVIEWER_UID: { + addToTable(str, tr("QML Viewer version: "), error ? tr("Not installed") : versionString); + } + break; default: break; } } From edd786d0c191457653fd406417317fbbe0184d4b Mon Sep 17 00:00:00 2001 From: Daniel Molkentin Date: Thu, 8 Sep 2011 17:08:11 +0200 Subject: [PATCH 22/35] Fix glitch in c4fb17bef9175557ab071a154b6799e098fdb379. Change-Id: I239af4d7f03553760bf1fd1de0cedd552246565c Reviewed-on: http://codereview.qt-project.org/4476 Reviewed-by: Oswald Buddenhagen Reviewed-by: Qt Sanity Bot Reviewed-by: Tim Jenssen --- src/plugins/qmldesigner/customstyleplugin/plugindestdir.pri | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/qmldesigner/customstyleplugin/plugindestdir.pri b/src/plugins/qmldesigner/customstyleplugin/plugindestdir.pri index 8f56b17cc19..4975d9e153a 100644 --- a/src/plugins/qmldesigner/customstyleplugin/plugindestdir.pri +++ b/src/plugins/qmldesigner/customstyleplugin/plugindestdir.pri @@ -1,5 +1,5 @@ macx { DESTDIR = $$IDE_LIBRARY_PATH/QmlDesigner } else { - DESTDIR = $$IDE_BUILD_TREE/$${IDE_LIBRARY_PATH}/qmldesigner + DESTDIR = $$IDE_BUILD_TREE/$${IDE_LIBRARY_BASENAME}/qmldesigner } From 55606d5db69a0c33db8ed4b6a03e66580625d945 Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Mon, 12 Sep 2011 08:35:19 +0200 Subject: [PATCH 23/35] Few more things to changes file. Change-Id: I96ec220e7df1cb5a683e0319641c30e43c1c573d --- dist/changes-2.3.1 | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dist/changes-2.3.1 b/dist/changes-2.3.1 index 2bdb056be45..01f15ca0b6d 100644 --- a/dist/changes-2.3.1 +++ b/dist/changes-2.3.1 @@ -26,6 +26,7 @@ C++ Support QML/JS Support Qt Quick Designer + * Fix problems on 64bit linux Help @@ -39,6 +40,7 @@ Windows Symbian Target * Warn if EPOCROOT is on different drive from the sources + * Fix several debugging issues with CODA 4.0.23 Remote Linux Support * Harmattan: Include Aegis manifest file in list of files to add to project From c5694cc5e1959e5c6b9bfbc17c165313dd41118a Mon Sep 17 00:00:00 2001 From: Leandro Melo Date: Thu, 8 Sep 2011 14:01:18 +0200 Subject: [PATCH 24/35] C++: Fix duplicate items in C++ completion for Qt methods In the old code completion engine items were created on the stack and passed around by value. With the refactoring of the code assist API they became heap objects manipulated through pointers. This patch fixes one reminiscence not caught during the refactoring in which the same actual pointer was being used more than once to be appended on the list. Change-Id: I2009fb0b6aa18df57aa5ca9bde0591536ca2cd74 Reviewed-on: http://codereview.qt-project.org/4444 Reviewed-by: Qt Sanity Bot Reviewed-by: Fawzi Mohamed (cherry picked from commit a1fa169219423641e65f81e3fbc27f0f9fb84dd5) --- src/plugins/cpptools/cppcompletionassist.cpp | 62 ++++++++++---------- 1 file changed, 30 insertions(+), 32 deletions(-) diff --git a/src/plugins/cpptools/cppcompletionassist.cpp b/src/plugins/cpptools/cppcompletionassist.cpp index d2c458f56f3..dddbca6e2fa 100644 --- a/src/plugins/cpptools/cppcompletionassist.cpp +++ b/src/plugins/cpptools/cppcompletionassist.cpp @@ -1614,40 +1614,38 @@ bool CppCompletionAssistProcessor::completeQtMethod(const QListisSlot()) continue; - BasicProposalItem *item = toCompletionItem(fun); - if (item) { - unsigned count = fun->argumentCount(); - while (true) { - BasicProposalItem *ci = item; - QString signature; - signature += Overview().prettyName(fun->name()); - signature += QLatin1Char('('); - for (unsigned i = 0; i < count; ++i) { - Symbol *arg = fun->argumentAt(i); - if (i != 0) - signature += QLatin1Char(','); - signature += o.prettyType(arg->type()); - } - signature += QLatin1Char(')'); - - const QByteArray normalized = - QMetaObject::normalizedSignature(signature.toLatin1()); - - signature = QString::fromLatin1(normalized, normalized.size()); - - if (! signatures.contains(signature)) { - signatures.insert(signature); - - ci->setText(signature); // fix the completion item. - m_completions.append(ci); - } - - if (count && fun->argumentAt(count - 1)->asArgument()->hasInitializer()) - --count; - else - break; + unsigned count = fun->argumentCount(); + while (true) { + QString signature; + signature += Overview().prettyName(fun->name()); + signature += QLatin1Char('('); + for (unsigned i = 0; i < count; ++i) { + Symbol *arg = fun->argumentAt(i); + if (i != 0) + signature += QLatin1Char(','); + signature += o.prettyType(arg->type()); } + signature += QLatin1Char(')'); + + const QByteArray normalized = + QMetaObject::normalizedSignature(signature.toLatin1()); + + signature = QString::fromLatin1(normalized, normalized.size()); + + if (! signatures.contains(signature)) { + BasicProposalItem *ci = toCompletionItem(fun); + if (!ci) + break; + signatures.insert(signature); + ci->setText(signature); // fix the completion item. + m_completions.append(ci); + } + + if (count && fun->argumentAt(count - 1)->asArgument()->hasInitializer()) + --count; + else + break; } } } From ad22dc767ce6a01532f11be4e3cf5dee773db405 Mon Sep 17 00:00:00 2001 From: Leandro Melo Date: Wed, 7 Sep 2011 14:02:31 +0200 Subject: [PATCH 25/35] Code assist: Fix memory leak in completion One fix is in the runner, which is part of the completion engine itself. The other is specific for C++. Task-number: QTCREATORBUG-5947 Change-Id: Ib8fff1eb5adad1ffb2a11da66c50b545e1457df8 Reviewed-on: http://codereview.qt.nokia.com/4355 Reviewed-by: Qt Sanity Bot Reviewed-by: Fawzi Mohamed (cherry picked from commit e15443e9523df0e40414b1baf7d8182f641f7f2c) --- src/plugins/cpptools/cppcompletionassist.cpp | 1 + src/plugins/texteditor/codeassist/runner.cpp | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/plugins/cpptools/cppcompletionassist.cpp b/src/plugins/cpptools/cppcompletionassist.cpp index dddbca6e2fa..8a04f940ab2 100644 --- a/src/plugins/cpptools/cppcompletionassist.cpp +++ b/src/plugins/cpptools/cppcompletionassist.cpp @@ -775,6 +775,7 @@ IAssistProposal *CppCompletionAssistProcessor::createContentProposal() } } } else { + delete *it; it = m_completions.erase(it); } } diff --git a/src/plugins/texteditor/codeassist/runner.cpp b/src/plugins/texteditor/codeassist/runner.cpp index a6afedcc160..eaabb5f77a5 100644 --- a/src/plugins/texteditor/codeassist/runner.cpp +++ b/src/plugins/texteditor/codeassist/runner.cpp @@ -34,6 +34,7 @@ #include "iassistprocessor.h" #include "iassistproposal.h" #include "iassistinterface.h" +#include "iassistproposalmodel.h" using namespace TextEditor; using namespace Internal; @@ -48,8 +49,11 @@ ProcessorRunner::ProcessorRunner() ProcessorRunner::~ProcessorRunner() { delete m_processor; - if (m_discardProposal) + if (m_discardProposal && m_proposal) { + // Proposal doesn't own the model, so we need to delete both. + delete m_proposal->model(); delete m_proposal; + } } void ProcessorRunner::setProcessor(IAssistProcessor *computer) From c00ee6701b0a1b1366c24e7ec8c907d4a623e3f5 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Tue, 6 Sep 2011 16:57:11 +0200 Subject: [PATCH 26/35] QtQuickApp: Use QCoreApplication::applicationDirPath also for Harmattan Latest Harmattan sources deprecate MDeclarativeCache::applicationDirPath http://meego.gitorious.org/meegotouch/meegotouch-applauncherd/commit/1c93b10b0aa6fa528d1a49e029a7158b4e2cea8d/diffs Change-Id: I4342c567265d192a580d572c6bec8d28ab363120 Reviewed-on: http://codereview.qt-project.org/4275 Reviewed-by: Qt Sanity Bot Reviewed-by: Eike Ziller --- .../qmlapplicationviewer/qmlapplicationviewer.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.cpp b/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.cpp index c7ccf089bea..3ef65126d19 100644 --- a/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.cpp +++ b/share/qtcreator/templates/qtquickapp/qmlapplicationviewer/qmlapplicationviewer.cpp @@ -66,11 +66,7 @@ QString QmlApplicationViewerPrivate::adjustPath(const QString &path) + QLatin1String("/../Resources/") + path; #else QString pathInInstallDir; -#ifdef HARMATTAN_BOOSTER - QString applicationDirPath = MDeclarativeCache::applicationDirPath(); -#else - QString applicationDirPath = QCoreApplication::applicationDirPath(); -#endif + const QString applicationDirPath = QCoreApplication::applicationDirPath(); pathInInstallDir = QString::fromAscii("%1/../%2").arg(applicationDirPath, path); if (QFileInfo(pathInInstallDir).exists()) From 421a1cf93c1ec5e6fae088a3bfc6547cb8481738 Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Mon, 12 Sep 2011 10:21:53 +0200 Subject: [PATCH 27/35] QmlDesigner.contextMenu: crash fix Task-number: QTCREATORBUG-6071 Change-Id: Iae2cc199cd8ec3809bc635084b8a8fa79bb36b08 Reviewed-on: http://codereview.qt-project.org/4643 Reviewed-by: Qt Sanity Bot Reviewed-by: Eike Ziller --- .../qmldesigner/designercore/model/modelnodecontextmenu.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.cpp b/src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.cpp index 0333b5e4fcd..3ae4815cc2d 100644 --- a/src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.cpp +++ b/src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.cpp @@ -71,7 +71,7 @@ static inline bool checkIfNodeIsAView(const ModelNode &node) static inline bool isItem(const ModelNode &node) { - return node.metaInfo().isValid() && node.metaInfo().isSubclassOf("QtQuick.Item", -1, -1); + return node.isValid() && node.metaInfo().isValid() && node.metaInfo().isSubclassOf("QtQuick.Item", -1, -1); } static inline QList siblingsForNode(const QmlItemNode &itemNode) @@ -251,7 +251,7 @@ void ModelNodeContextMenu::execute(const QPoint &pos, bool selectionMenuBool) editMenu->addAction(action); action = createModelNodeAction(tr("Visibility"), editMenu, QList() << currentSingleNode, ModelNodeAction::ModelNodeVisibility, singleSelected); editMenu->addAction(action); - if (!isItem(currentSingleNode)) + if (singleSelected && !isItem(currentSingleNode)) action->setDisabled(true); } else { From cdbb6f2cb96307dae09fa84bc8cd2d4a0985afa5 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Mon, 12 Sep 2011 10:06:27 +0200 Subject: [PATCH 28/35] QtQuickApp: Fix qmake dependency to Qt Quick Components for Symbian MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The .prf to add the dependency is called qt-components.prf . This broke building a SmartInstaller package. Task-number: QTCREATORBUG-6075 Change-Id: I816eac60ab15f40ffc9d3c866f0bf695bfa0983e Reviewed-on: http://codereview.qt-project.org/4641 Reviewed-by: Qt Sanity Bot Reviewed-by: Paweł Polański Reviewed-by: Eike Ziller --- dist/changes-2.3.1 | 1 + share/qtcreator/templates/qtquickapp/app.pro | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/dist/changes-2.3.1 b/dist/changes-2.3.1 index 01f15ca0b6d..f029e4464bf 100644 --- a/dist/changes-2.3.1 +++ b/dist/changes-2.3.1 @@ -41,6 +41,7 @@ Windows Symbian Target * Warn if EPOCROOT is on different drive from the sources * Fix several debugging issues with CODA 4.0.23 + * Qt Quick Application wizard: Fix qmake dependency to Qt Quick Components for Symbian (QTCREATORBUG-6075) Remote Linux Support * Harmattan: Include Aegis manifest file in list of files to add to project diff --git a/share/qtcreator/templates/qtquickapp/app.pro b/share/qtcreator/templates/qtquickapp/app.pro index fcbcc0b8aff..3aebf6ed964 100644 --- a/share/qtcreator/templates/qtquickapp/app.pro +++ b/share/qtcreator/templates/qtquickapp/app.pro @@ -34,7 +34,7 @@ symbian:TARGET.CAPABILITY += NetworkServices # Add dependency to Symbian components # QTQUICKCOMPONENTS # -# CONFIG += qtquickcomponents +# CONFIG += qt-components # The .cpp file which was generated for your project. Feel free to hack it. SOURCES += main.cpp From b79fa21d1d00baf79c05229df268370f2e67c423 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Mon, 12 Sep 2011 16:59:21 +0200 Subject: [PATCH 29/35] QML Debugging: Fix crash for QML-only debugging on Symbian MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Task-number: QTCREATORBUG-6037 Change-Id: I01080d97d21c230a7a32ea943435b2f763b87c41 Reviewed-on: http://codereview.qt-project.org/4687 Reviewed-by: Qt Sanity Bot Reviewed-by: Paweł Polański --- src/plugins/debugger/qml/qmlengine.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/plugins/debugger/qml/qmlengine.cpp b/src/plugins/debugger/qml/qmlengine.cpp index 11d29e5447c..e702973b7f7 100644 --- a/src/plugins/debugger/qml/qmlengine.cpp +++ b/src/plugins/debugger/qml/qmlengine.cpp @@ -227,10 +227,9 @@ void QmlEngine::setupInferior() QTC_ASSERT(state() == InferiorSetupRequested, qDebug() << state()); if (startParameters().startMode == AttachToRemote) { + emit requestRemoteSetup(); if (startParameters().qmlServerPort != quint16(-1)) notifyInferiorSetupOk(); - else - emit requestRemoteSetup(); } else { d->m_applicationLauncher.setEnvironment(startParameters().environment); d->m_applicationLauncher.setWorkingDirectory(startParameters().workingDirectory); From 519e0a795df4a5123974f42a768dd5f7d36c91b0 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Tue, 13 Sep 2011 16:26:07 +0200 Subject: [PATCH 30/35] don't try to strip the wrapper script yet another hack Change-Id: Ic041e8bdfb7331d6934620c8fbb91435f3495ba7 Reviewed-on: http://codereview.qt-project.org/4790 Reviewed-by: Qt Sanity Bot Reviewed-by: Daniel Molkentin --- bin/bin.pro | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/bin.pro b/bin/bin.pro index 14bbb6b36e3..523cc50bd17 100644 --- a/bin/bin.pro +++ b/bin/bin.pro @@ -5,6 +5,7 @@ OBJECTS_DIR = PRE_TARGETDEPS = $$PWD/qtcreator.sh QMAKE_LINK = cp $$PWD/qtcreator.sh $@ && : IGNORE REST OF LINE: +QMAKE_STRIP = QMAKE_CLEAN = qtcreator.sh From b67c3874b7879f46ba82b10ad27a8d85973d7d40 Mon Sep 17 00:00:00 2001 From: Leena Miettinen Date: Wed, 14 Sep 2011 16:36:18 +0200 Subject: [PATCH 31/35] Doc: separate MeeGo and Maemo instructions Change-Id: I2c7a9bce7ee92c59f91fa41f732f3c90a9e100e3 Reviewed-on: http://codereview.qt-project.org/4886 Reviewed-by: Christian Kandeler --- doc/config/qtcreator-project.qdocconf | 9 +- doc/doc.pri | 2 +- doc/images/qtcreator-build-settings-maemo.png | Bin 0 -> 61258 bytes doc/images/qtcreator-dev-conf-maemo.png | Bin 0 -> 11682 bytes .../qtcreator-maemo-device-configurations.png | Bin 25979 -> 25803 bytes .../qtcreator-maemo-emulator-connection.png | Bin 12610 -> 12096 bytes .../qtcreator-meego-device-configurations.png | Bin 0 -> 25979 bytes .../qtcreator-meego-emulator-connection.png | Bin 0 -> 12610 bytes doc/images/qtcreator-run-settings-maemo.png | Bin 0 -> 97575 bytes .../qtcreator-screenshot-build-settings.png | Bin 61258 -> 36833 bytes ...tcreator-screenshot-run-settings-maemo.png | Bin 57866 -> 0 bytes .../qtcreator-screenshot-run-settings.png | Bin 56845 -> 45445 bytes doc/linuxdev-keys.qdocinc | 25 + doc/linuxdev-processes.qdocinc | 13 + doc/linuxdev.qdoc | 4 +- doc/maemodev.qdoc | 199 +++----- doc/meegodev.qdoc | 462 ++++++++++++++++++ doc/qtcreator.qdoc | 14 +- 18 files changed, 575 insertions(+), 153 deletions(-) create mode 100644 doc/images/qtcreator-build-settings-maemo.png create mode 100644 doc/images/qtcreator-dev-conf-maemo.png create mode 100644 doc/images/qtcreator-meego-device-configurations.png create mode 100644 doc/images/qtcreator-meego-emulator-connection.png create mode 100644 doc/images/qtcreator-run-settings-maemo.png delete mode 100644 doc/images/qtcreator-screenshot-run-settings-maemo.png create mode 100644 doc/linuxdev-keys.qdocinc create mode 100644 doc/linuxdev-processes.qdocinc create mode 100644 doc/meegodev.qdoc diff --git a/doc/config/qtcreator-project.qdocconf b/doc/config/qtcreator-project.qdocconf index 50a644b1604..40d24c60484 100644 --- a/doc/config/qtcreator-project.qdocconf +++ b/doc/config/qtcreator-project.qdocconf @@ -13,8 +13,13 @@ include(macros.qdocconf) include(qt-cpp-ignore.qdocconf) include(qt-defines.qdocconf) -sources.fileextensions = "qtcreator.qdoc maemodev.qdoc symbiandev.qdoc addressbook-sdk.qdoc qtcreator-faq.qdoc linuxdev.qdoc" - +sources.fileextensions = "qtcreator.qdoc \ + maemodev.qdoc \ + symbiandev.qdoc \ + addressbook-sdk.qdoc \ + qtcreator-faq.qdoc \ + linuxdev.qdoc \ + meegodev.qdoc" qhp.projects = QtCreator qhp.QtCreator.file = qtcreator.qhp diff --git a/doc/doc.pri b/doc/doc.pri index 4b30dfb1464..cb788611914 100644 --- a/doc/doc.pri +++ b/doc/doc.pri @@ -83,5 +83,5 @@ OTHER_FILES = $$HELP_DEP_FILES $$DEV_HELP_DEP_FILES fixnavi.commands = \ cd $$targetPath($$PWD) && \ perl fixnavi.pl -Dqcmanual -Dqtquick \ - qtcreator.qdoc maemodev.qdoc symbiandev.qdoc qtcreator-faq.qdoc linuxdev.qdoc + qtcreator.qdoc maemodev.qdoc symbiandev.qdoc qtcreator-faq.qdoc linuxdev.qdoc meegodev.qdoc QMAKE_EXTRA_TARGETS += fixnavi diff --git a/doc/images/qtcreator-build-settings-maemo.png b/doc/images/qtcreator-build-settings-maemo.png new file mode 100644 index 0000000000000000000000000000000000000000..4ed46758d956d0d68b856c61acc227fae5b04a28 GIT binary patch literal 61258 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

{(C%Adi+3qSK2Riw=*gKCY?ES#$boQ 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%0DkD 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 z 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 literal 56845 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 KpUXO@geCyK&~qsO diff --git a/doc/linuxdev-keys.qdocinc b/doc/linuxdev-keys.qdocinc new file mode 100644 index 00000000000..29d9e077abb --- /dev/null +++ b/doc/linuxdev-keys.qdocinc @@ -0,0 +1,25 @@ + \section2 Generating SSH Keys + + If you do not have an SSH public and private key pair, you can generate it + in Qt Creator. You can specify key length and the key algorithm, RSA or DSA. + If you only use the keys to protect connections to the emulator or + device, you can use the default values. + + \list 1 + + \o Select \gui {Tools > Options... > Linux Devices > Device + Configurations > Generate SSH Key...}. + + \o Click \gui {Generate SSH Key}. + + \image qtcreator-ssh-key-configuration.png "SSH Key Configuration dialog" + + \o Click \gui {Save Public Key...} to select the location to save the + public key. + + \o Click \gui {Save Private Key...} to specify the location to save the + private key. + + \o Click \gui Close to close the dialog. + + \endlist diff --git a/doc/linuxdev-processes.qdocinc b/doc/linuxdev-processes.qdocinc new file mode 100644 index 00000000000..387dbc308e1 --- /dev/null +++ b/doc/linuxdev-processes.qdocinc @@ -0,0 +1,13 @@ + \section2 Managing Device Processes + + You can view processes running on devices and kill them. Select + \gui {Tools > Options... > Linux Devices > Device Configurations > + Remote Processes...}. + + You can filter the processes by name in the \gui {List of Remote Processes} + dialog. + + To update the process list, select \gui {Update List}. + + To kill a process, select it in the list, and then select \gui {Kill + Selected Process}. diff --git a/doc/linuxdev.qdoc b/doc/linuxdev.qdoc index 7f49605cc77..8a0eea50541 100644 --- a/doc/linuxdev.qdoc +++ b/doc/linuxdev.qdoc @@ -22,9 +22,9 @@ /*! \contentspage index.html - \previouspage creator-developing-maemo.html + \previouspage creator-developing-meego.html \page creator-developing-generic-linux.html - \nextpage creator-developing-symbian.html + \nextpage creator-developing-maemo.html \title Connecting Generic Linux Devices diff --git a/doc/maemodev.qdoc b/doc/maemodev.qdoc index c20c248dda3..4fe2a79c9e7 100644 --- a/doc/maemodev.qdoc +++ b/doc/maemodev.qdoc @@ -23,35 +23,30 @@ \contentspage index.html \if defined(qcmanual) - \previouspage creator-project-qmake-libraries.html + \previouspage creator-developing-generic-linux.html \else - \previouspage creator-developing-symbian.html + \previouspage creator-developing-meego.html \endif \page creator-developing-maemo.html \if defined(qcmanual) - \nextpage creator-developing-generic-linux.html + \nextpage creator-developing-symbian.html \else \nextpage smartinstaller.html \endif - \title Connecting Maemo and MeeGo Harmattan Devices + \title Connecting Maemo Devices - Maemo 5 (Fremantle) and MeeGo Harmattan are Linux-based software platforms - developed by Nokia for mobile devices. They allow developers to create + Maemo 5 (Fremantle) is a Linux-based software platform developed by Nokia + for mobile devices. It allows developers to create applications using the Qt framework. - The whole tool chain that you need to create, build, debug, run, and deploy - Maemo 5 and Harmattan applications is installed and configured when you - install the - \QSDK. + You can install the whole tool chain that you need to create, build, debug, + run, and deploy Maemo 5 applications as a part of the custom installation + in the \QSDK online installer. \if defined(qcmanual) For more information about the Maemo 5 platform, see \l{http://maemo.org/intro/platform/}{Software Platform} on the Maemo web site. - - For more information about the Harmattan platform, see - \l{http://harmattan-dev.nokia.com/}{Harmattan Platform SDK}. - \endif For more information about developing applications for the Maemo 5 @@ -59,32 +54,13 @@ or see \l{http://doc.qt.nokia.com/qt-maemo/platform-notes-maemo5.html}{Platform Notes - Maemo 5}. - For more information about developing applications for the Harmattan - platform, select \gui {Help > Index} and look for \gui {Platform Notes}. + \section1 Hardware and Software Requirements for Maemo Target - \note \QSDK does not contain the tool chains for building applications for - other MeeGo devices than MeeGo Harmattan. You can try to run applications - from Qt Creator on other MeeGo devices, but it has not been extensively - tested, and the - instructions might not always apply. - - \section1 Hardware and Software Requirements - - To build and run Qt applications for Maemo 5 or Harmattan, you need the - following: + To build and run Qt applications for Maemo 5, you need the following: \list - \o Test device: - - \list - - \o Maemo 5 device: Nokia N900 with software update release 1.3 + \o Maemo 5 device: Nokia N900 with software update release 1.3 (V20.2010.36-2) or later installed. - - \o Harmattan device: Nokia N950, Nokia N9 - - \endlist - \if defined(qcmanual) \o MADDE cross-platform Maemo development tool (installed as part of the \QSDK). @@ -102,16 +78,15 @@ \endlist - \note The only supported build system for Maemo 5 and Harmattan in Qt - Creator is qmake. + \note The only supported build system for Maemo 5 in Qt Creator is qmake. - \section1 Setting Up Connectivity in Devices + \section1 Setting Up Connectivity in Maemo Devices You can connect your device to your development PC using either a USB or WLAN connection. - For the device, you need to use a connectivity tool (Mad Developer on - Maemo 5 and SDK Connectivity on Harmattan) to create the + For the device, you need to use a connectivity tool (Mad Developer) to + create the device-side end point for USB and WLAN connections. It provides no diagnostics functions but is essential for creating connections between the device and your development PC. @@ -127,34 +102,7 @@ WLAN, you can ignore the USB-specific parts in the following sections. - \section2 Starting SDK Connectivity on Harmattan Devices - - SDK Connectivity application is preinstalled in Harmattan devices and - available in developer mode. - - To start SDK Connectivity: - - \list - - \o On the device, select \gui {Settings > Security > Developer - mode} to turn on developer mode. - - \o Select \gui {Applications > SDK Connectivity} to start the SDK - Connectivity application. - - \o Select \gui {Select Connection} and then select the type of the - connection to create: \gui WLAN or \gui USB. - - \o For a USB connection, select the operating system of the - development PC in \gui {Select Module}. - - \endlist - - \gui {Connectivity Details} displays the IP address and developer password. - The address 192.168.2.15 is used by default. You must enter the password in - Qt Creator. - - \section2 Installing and Configuring Mad Developer on Nokia N900 + \section2 Installing and Configuring Mad Developer Install Mad Developer on a Nokia N900 device and configure a connection between the development PC and a device. @@ -197,7 +145,7 @@ \image qtcreator-mad-developer-screenshot.png \endlist - \section1 Installing Qt Mobility Libraries on Nokia N900 + \section1 Installing Qt Mobility Libraries To develop applications for the Nokia N900 devices that use the Qt Mobility APIs, you must install the @@ -220,14 +168,11 @@ \endlist - \note the Qt Mobility Libraries are preinstalled on MeeGo Harmattan - devices. + \section1 Setting Up USB Connections to Maemo Devices - \section1 Setting Up Network Connectivity on Development PC - - Use the network configuration tools on your platform to specify the - connection to the device on the development PC. You need to do this - only if you use a USB connection. + Use the network configuration tools on your platform to specify the USB + connection to the device on the development PC. You do not need to do this + if you use a WLAN connection. \section2 Linux @@ -274,9 +219,9 @@ your version of Microsoft Windows you may have to unplug and re-plug the device to reload the driver with its configuration accordingly. - \section1 Configuring Connections in Qt Creator + \section1 Configuring Connections to Maemo Devices - To be able to run and debug applications on the Maemo or MeeGo Harmattan + To be able to run and debug applications on the Maemo emulator and devices, you must set up connections to the emulator and devices in the Qt Creator build and run settings. If you install \QSDK, the connection to the emulator is configured automatically and you @@ -293,9 +238,10 @@ to test them with real user data. To create a connection as a user, specify the \gui Username and \gui Password in Qt Creator. For more information, see \if defined(qcmanual) - \l{Testing with User Data}. + \l{Testing with User Data on Maemo Devices}. \else - the Qt Creator Manual. + \l{http://doc.qt.nokia.com/qtcreator/creator-developing-maemo.html#testing-with-user-data-on-maemo-devices} + {Testing with User Data on Maemo Devices}. \endif @@ -310,7 +256,18 @@ \if defined(qcmanual) \l{Generating SSH Keys}. \else - the Qt Creator Manual. + \l{http://doc.qt.nokia.com/qtcreator/creator-developing-meego.html#generating-ssh-keys} + {Generating SSH Keys}. + \endif + + + You can view processes running on devices and kill them. For more + information, see + \if defined(qcmanual) + \l{Managing Device Processes}. + \else + \l{http://doc.qt.nokia.com/qtcreator/creator-developing-meego.html#managing-device-processes} + {Managing Device Processes}. \endif @@ -335,7 +292,7 @@ Configurations > Add}, and add a new configuration for a hardware device. - \image qtcreator-screenshot-devconf.png + \image qtcreator-dev-conf-maemo.png "Maemo device configuration" \o In the \gui {The name to identify this configuration} field, enter a name for the connection. @@ -371,7 +328,7 @@ Devices > Device Configurations > Add} to add a new configuration. - \image qtcreator-maemo-emulator-connection.png + \image qtcreator-maemo-emulator-connection.png "Maemo emulator configuration" \o In the \gui {The name to identify this configuration} field, enter a name for @@ -403,7 +360,7 @@ \o In the \gui{Build Settings} section, choose the MADDE Qt version that was registered by the installation program. - \image qtcreator-screenshot-build-settings.png + \image qtcreator-build-settings-maemo.png "Maemo build settings" \o In the \gui{Run Settings} section, click \gui Add to add a new deploy configuration. The configuration is named automatically. To @@ -411,7 +368,7 @@ \o In the \gui {Device configuration} field, select the device connection or the emulator connection. - \image qtcreator-screenshot-run-settings.png + \image qtcreator-run-settings-maemo.png "Maemo run settings" \o Click \gui {} in \gui {Remote Directory} to specify the folder where the file is installed on the device. @@ -421,73 +378,29 @@ \endlist - \if defined(qcmanual) - \section2 Testing with User Data + \section2 Testing with User Data on Maemo Devices - To run your application as the default user, you must first assign a password - for the user account and then create the connection to the device as the - user: + To run your application as the default user, you must first assign a + password for the user account and then create the connection to the device + as the user: \list 1 - \o On the device, in \gui Programs, select \c {X Terminal} to open a - terminal window. + \o On the device, in \gui Programs, select \c {X Terminal} to open a + terminal window. - \o To specify the password, enter the following command: - \c{/usr/lib/mad-developer/devrootsh passwd user} + \o To specify the password, enter the following command: + \c{/usr/lib/mad-developer/devrootsh passwd user} - \o In Qt Creator, select \gui {Tools > Options... Linux Devices > - Device Configurations}. + \o In Qt Creator, select \gui {Tools > Options... Linux Devices > + Device Configurations}. - \o Specify the username \c user and the password in the device configuration. + \o Specify the username \c user and the password in the device + configuration. \endlist - \section2 Generating SSH Keys - - If you do not have an SSH public and private key pair, you can generate it - in Qt Creator. You can specify key length and the key algorithm, RSA or DSA. - If you only use the keys to protect connections to the emulator or - device, you can use the default values. - - \list 1 - - \o Select \gui {Tools > Options... > Linux Devices > Device - Configurations - > Generate SSH Key...}. - - \o Click \gui {Generate SSH Key}. - - \image qtcreator-ssh-key-configuration.png "SSH Key Configuration dialog" - - \o Click \gui {Save Public Key...} to select the location to save the - public key. - - \o Click \gui {Save Private Key...} to specify the location to save the - private key. - - \o Click \gui Close to close the dialog. - - \endlist - - \section2 Managing Device Processes - - You can view processes running on the Maemo or MeeGo Harmattan device and - kill them. - Select \gui {Tools > Options... > Linux Devices > Device Configurations > - Remote Processes...}. - - You can filter the processes by name in the \gui {List of Remote Processes} - dialog. - - To update the process list, select \gui {Update List}. - - To kill a process, select it in the list, and then select \gui {Kill - Selected Process}. - - \endif - - \section1 Troubleshooting + \section1 Troubleshooting Connections to Maemo Devices The addresses used in this example might be reserved by some other application in your network. If you cannot establish a connection, try the following optional diff --git a/doc/meegodev.qdoc b/doc/meegodev.qdoc new file mode 100644 index 00000000000..79ee3360bbc --- /dev/null +++ b/doc/meegodev.qdoc @@ -0,0 +1,462 @@ +/**************************************************************************** +** +** This file is part of Qt Creator +** +** Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies). +** +** Contact: Nokia Corporation (info@qt.nokia.com) +** +** +** GNU Free Documentation License +** +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of this +** file. +** +** If you have questions regarding the use of this file, please contact +** Nokia at info@qt.nokia.com. +** +****************************************************************************/ + + /*! + + \contentspage index.html + \if defined(qcmanual) + \previouspage creator-project-qmake-libraries.html + \else + \previouspage creator-developing-symbian.html + \endif + \page creator-developing-meego.html + \if defined(qcmanual) + \nextpage creator-developing-generic-linux.html + \else + \nextpage creator-developing-maemo.html + \endif + + \title Connecting MeeGo Harmattan Devices + + MeeGo Harmattan is a Linux-based software platform developed by Nokia for + mobile devices. It allows developers to create applications using the Qt + framework. You can install and configure the whole tool chain that you need + to create, build, debug, run, and deploy Harmattan applications as part of + the \QSDK. + + \if defined(qcmanual) + For more information about the Harmattan platform, see + \l{http://library.developer.nokia.com/topic/MeeGo_1.2_Harmattan_API/html/guide/html/Developer_Library_Harmattan_overview_5dcf.html} + {Harmattan Overview} in the MeeGo 1.2 Harmattan Developer Library. + \endif + + + \note \QSDK does not contain the tool chains for building applications for + other MeeGo devices than MeeGo Harmattan. You can try to run applications + from Qt Creator on other MeeGo devices, but it has not been extensively + tested, and the instructions might not always apply. + + \note The only supported build system for Harmattan in Qt Creator is qmake. + + \section1 Setting Up Connectivity in Harmattan Devices + + To build and run Qt applications for Harmattan, you need a Harmattan device: + Nokia N950 or Nokia N9. + + You can connect your device to your development PC using either a USB or + WLAN connection. + + For the device, you need to use the SDK Connectivity tool that is + preinstalled on the device to create the device-side end point for USB and + WLAN connections. It provides no diagnostics functions but is essential for + creating connections between the device and your development PC. + + To use a WLAN connection, you must activate WLAN on the device and connect + it to the same WLAN as the development PC. The network address is displayed + in the connectivity tool. + + To use a USB connection, you might need to set up the device as a network + device on the development PC. However, on Linux, Mac OS X, and Windows 7, + the USB interface is usually automatically configured. + + \note If you plan to connect your development PC to the device only over + WLAN, you can ignore the USB-specific parts in the following sections. + + \section2 Starting SDK Connectivity + + SDK Connectivity application is preinstalled in Harmattan devices and + available in developer mode. + + To start SDK Connectivity: + + \list + + \o On the device, select \gui {Settings > Security > Developer + mode} to turn on developer mode. + + \o Select \gui {Applications > SDK Connectivity} to start the SDK + Connectivity application. + + \o Select \gui {Select Connection} and then select the type of the + connection to create: \gui WLAN or \gui USB. + + \o For a USB connection, select the operating system of the + development PC in \gui {Select Module}. + + \endlist + + \gui {Connectivity Details} displays the IP address and developer password. + The address 192.168.2.15 is used by default. You must enter the password in + Qt Creator. For more information, see + \l{Configuring Connections to Harmattan Devices}. + + \section1 Setting Up Network Connectivity on Development PC + + Use the network configuration tools on your platform to specify the + connection to the device on the development PC. You need to do this + only if you use a USB connection. + + The device uses the IP address 192.168.2.15 with the subnet 255.255.255.0 + for its USB connection by default, so you can create the network interface + with a different address inside the same subnet too. + + \note If you have changed the IP address of the device in the connectivity + tool, you need to reflect those changes in your development PC USB + network settings. + + \section2 Linux + + The USB interface is automatically configured. If, for some reason, that is + not the case, run the following command in a shell as root user to create a + new network interface: + + \c{ifconfig usb0 192.168.2.14 up} + + \section2 Mac OS X + + The USB interface is automatically configured. If, for some reason, that is + not the case, create a new network interface manually: + + \list + + \o Open the network settings. + + \o Click the + button on the network settings panel. + + \o When the interface is available, select \gui {Configure IPv4 > Using + DHCP with manual address}. + + \o Enter the address 192.168.2.14 into the IP address field. + + \o Click \gui Apply. + + The network connection between your device and workstation is now + configured. + + \endlist + + \section2 Windows 7 + + When you connect your device to your Windows 7 computer, Windows installs a + driver for the Linux USB Ethernet connection automatically. If the + installation does not start, unplug the USB cable and try another USB port + on your computer. + + \note Driver installation takes some time. + + The USB interface is automatically configured. If, for some reason, that is + not the case, create a new network interface manually: + + \list 1 + + \o Open the \gui {Network and Sharing Center} and select \gui {Change + adapter settings}. + + The Linux USB Ethernet connection you just installed is displayed + as a new \gui {Local Area Connection Linux USB Ethernet/RNDIS + gadget}. + + \note If you cannot see \gui {Linux USB Ethernet/RNDIS gadget}, try + to unplug and replug the USB cable. + + \o Right-click \gui {Linux USB Ethernet/RNDIS gadget} and select + \gui Properties. + + \o Edit the \gui {Internet Protocol Version 4 (TCP/IPv4)} properties + to specify the IP address for the connection. In the \gui {Use the + following IP address} field, enter the following values: + + \list + + \o \gui {IP Address}: \bold {192.168.2.14} + \o \gui SubnetMask: \bold {255.255.255.0} + \o \gui {Default gateway}: leave this field empty + + \endlist + + \endlist + + \section2 Windows XP + + If you develop on Windows XP and use a USB connection to run applications on + the device, you need the Nokia USB drivers that are installed as part of the + \QSDK. + + When you connect the device to your Windows PC, Windows tries to install a + driver for the Linux USB Ethernet connection. In the + \gui{Found New Hardware Wizard}, select \gui{No, not this time} in the + first dialog and \gui{Install the software automatically} in the second + dialog. + + To specify a network connection: + + \list 1 + + \o Open the Network Connections window. + + \o Select the Linux USB Ethernet connection that is displayed as a new + Local Area Connection. + + \o Edit the \gui {Internet Protocol Version 4 (TCP/IPv4)} properties + to specify the IP address for the connection. In the \gui {Use the + following IP address} field, enter the following values: + + \list + + \o \gui {IP Address}: \bold {192.168.2.14} + \o \gui SubnetMask: \bold {255.255.255.0} + \o \gui {Default gateway}: leave this field empty + + \endlist + + \endlist + + Depending on your version of Microsoft Windows you may have to unplug and + re-plug the device to reload the driver with its configuration accordingly. + + \section1 Configuring Connections to Harmattan Devices + + To be able to run and debug applications on the emulator and devices, you + must set up connections to the emulator and devices in the Qt Creator build + and run settings. If you install \QSDK, the connection to the emulator is + configured automatically and you only need to configure a connection to the + device. + + You use a wizard to create the connections. You can edit the settings later + in \gui {Tools > Options... > Linux Devices > Device Configurations}. + + \image qtcreator-meego-device-configurations.png "MeeGo Device Configurations dialog" + + By default, you create the connection as the \e developer user. This + protects real user data on the device from getting corrupted during testing. + If you write applications that use Qt Mobility APIs, you might want to test + them with real user data. To create a connection as a user, specify the + \gui Username and \gui Password in Qt Creator. For more information, see + \if defined(qcmanual) + \l{Testing with User Data on MeeGo Devices}. + \else + \l{http://doc.qt.nokia.com/qtcreator/creator-developing-meego.html#testing-with-user-data-on-meego-devices} + {Testing with User Data on MeeGo Devices}. + \endif + + + You can protect the connections between Qt Creator and a device by using + either a password or an SSH key. If you use a password, you must generate it + in the connectivity tool and enter it in Qt Creator every time you start the + connectivity tool. + + If you do not have an SSH key, you can create it in Qt Creator. Encrypted + keys are not supported. For more information, see + \if defined(qcmanual) + \l{Generating SSH Keys}. + \else + \l{http://doc.qt.nokia.com/qtcreator/creator-developing-meego.html#generating-ssh-keys} + {Generating SSH Keys}. + \endif + + + You can view processes running on devices and kill them. For more + information, see + \if defined(qcmanual) + \l{Managing Device Processes}. + \else + \l{http://doc.qt.nokia.com/qtcreator/creator-developing-meego.html#managing-device-processes} + {Managing Device Processes}. + \endif + + + To configure connections between Qt Creator and a device: + + \list 1 + + \o To deploy applications and run them remotely on devices, + specify parameters for accessing devices: + + \list a + + \o Connect your device to the development PC via a USB cable or + a WLAN. For a USB connection, you are prompted to select the + mode to use. Choose \gui{PC suite mode}. + + \note If you experience connection problems due to a USB + port issue, switch to a different port or use WLAN to + connect to the device. + + \o Select \gui {Tools > Options... > Linux Devices > Device + Configurations > Add}, and add a new configuration for a + hardware device. + + \image qtcreator-screenshot-devconf.png + + \o In the \gui {The name to identify this configuration} field, + enter a name for the connection. + + \o In the \gui {The system running on the device} field, select + the software platform of the device. + + \o In the \gui {The kind of device} field, select + \gui {Hardware device}. + + \o In the \gui {The device's host name or IP address} field, + enter the IP address from the connectivity tool on the + device. + + \o In the \gui {The SSH server port} field, enter the port + number to use for SSH connections. + + \o Click \gui Next. + + \o Follow the instructions of the wizard to create the + connection. + + \endlist + + \if defined(qcmanual) + + \o To test applications on the emulator (QEMU), you must + create a connection to it from the development PC. If you installed + \QSDK, the connection is created automatically and you can omit this + step. + + \list a + + \o In Qt Creator, select \gui {Tools > Options... > Linux + Devices > Device Configurations > Add} to add a new + configuration. + + \image qtcreator-meego-emulator-connection.png + + \o In the \gui {The name to identify this configuration} field, + enter a name for the connection. + + \o In the \gui {The system running on the device} field, select + the software platform to emulate. + + \o In the \gui {The kind of device} field, select + \gui {Emulator (Qemu)}. + + \o Click \gui Next. + + \o Follow the instructions of the wizard to create the + connection. + + SDK Connectivity is not needed for emulator connections, and + therefore, you do nt need to authenticate the emulator + connection. + + \endlist + + \endif + + \o To specify build and run settings: + + \list a + + \o Open a project for an application you want to develop + for your device. + + \o Click \gui Projects to open the projects mode. + + \o In the \gui{Build Settings} section, choose the MADDE Qt + version that was registered by the installation program. + + \image qtcreator-screenshot-build-settings.png + + \o In the \gui {Device configuration} field, select the + device connection or the emulator connection. + \image qtcreator-screenshot-run-settings.png + + \endlist + + \note The new application wizards automatically set the folder + where the file is installed on the device in the \gui {Remote + Directory} field. For example, \c {/opt/usr/bin}. If the text + \gui {} is displayed, click it to specify a + folder. + + \endlist + + \if defined(qcmanual) + + \section2 Testing with User Data on MeeGo Devices + + To run your application as the default user, you must first assign a + password for the user account and then create the connection to the device + as the user: + + \list 1 + + \o On the device, select \gui Terminal to open a + terminal window. + + \o To specify the password, enter the following command: + \c{/usr/lib/mad-developer/devrootsh passwd user} + + \o In Qt Creator, select \gui {Tools > Options... Linux Devices > + Device Configurations}. + + \o Specify the username \c user and the password in the device + configuration. + + \endlist + + \input linuxdev-keys.qdocinc + \input linuxdev-processes.qdocinc + + \endif + + \section1 Troubleshooting Harmattan Connections + + The addresses used in this example might be reserved by some other + application in your network. If you cannot establish a connection, try the + following optional configurations: + + \table + + \header + \o IP Address and Network on Device + \o USB Network on Development PC + \o Host Name in Qt Creator Build Settings + + \row + \o 172.30.7.15 255.255.255.0 + \o 172.30.7.14 255.255.255.0 + \o 172.30.7.15 + + \row + \o 10.133.133.15 + \o 10.133.133.14 + \o 10.133.133.15 + + \row + \o 192.168.133.15 + \o 192.168.133.14 + \o 192.168.133.15 + + \note You cannot use the value localhost for connections to a + device. + + \endtable + + \note VPN connections might block the device connection. + +*/ + diff --git a/doc/qtcreator.qdoc b/doc/qtcreator.qdoc index 36f0a05e44a..dd6af1b6afb 100644 --- a/doc/qtcreator.qdoc +++ b/doc/qtcreator.qdoc @@ -67,8 +67,9 @@ \o \l{Creating a Project} \o \l{Opening a Project} \o \l{Adding Libraries to Projects} - \o \l{Connecting Maemo and MeeGo Harmattan Devices} + \o \l{Connecting MeeGo Harmattan Devices} \o \l{Connecting Generic Linux Devices} + \o \l{Connecting Maemo Devices} \o \l{Connecting Symbian Devices} \o \l{Managing Sessions} \endlist @@ -3317,7 +3318,8 @@ \o \l{Creating a Project} \o \l{Opening a Project} \o \l{Adding Libraries to Projects} - \o \l{Connecting Maemo and MeeGo Harmattan Devices} + \o \l{Connecting Maemo Devices} + \o \l{Connecting MeeGo Harmattan Devices} \o \l{Connecting Generic Linux Devices} \o \l{Connecting Symbian Devices} \o \l{Managing Sessions} @@ -4259,7 +4261,7 @@ \contentspage index.html \previouspage creator-project-opening.html \page creator-project-qmake-libraries.html - \nextpage creator-developing-maemo.html + \nextpage creator-developing-meego.html \title Adding Libraries to Projects @@ -4587,7 +4589,8 @@ \list 1 \o Configure the device and specify a connection to it. For more - information, see \l{Connecting Maemo and MeeGo Harmattan Devices}. + information, see \l{Connecting Maemo Devices} and + \l{Connecting MeeGo Harmattan Devices}. \o Connect the device to the development PC. @@ -5063,7 +5066,8 @@ create connections from the development PC to the devices. Click \gui {Manage device configurations} to create connections. For more information, see - \l {Configuring Connections in Qt Creator}. + \l{Configuring Connections to Maemo Devices} and + \l{Configuring Connections to Harmattan Devices}. When you run the application on the \gui{Maemo5} or \gui Harmattan target, Qt Creator generates From 11d2f7ccb79d2828c6d230f79f5b9f07aa216b2d Mon Sep 17 00:00:00 2001 From: Leena Miettinen Date: Wed, 14 Sep 2011 17:09:20 +0200 Subject: [PATCH 32/35] Doc: update screen shot after Forum Nokia was renamed Nokia Developer Change-Id: I4c9e39c04e9773de2b239277e99ccbdd8be5e6e6 Reviewed-on: http://codereview.qt-project.org/4920 Reviewed-by: Leena Miettinen --- doc/images/remotecompiler-fn-logon.png | Bin 49325 -> 70717 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/doc/images/remotecompiler-fn-logon.png b/doc/images/remotecompiler-fn-logon.png index fdce99dc3cc2f349949003c9ec2dfe672171eb6b..ba64662bacd92b787b41a70989a96adfa0e6f8f9 100644 GIT binary patch literal 70717 zcmeAS@N?(olHy`uVBq!ia0y~yVDV;PV7kS@#K6Gd7U1=Pfq{XsILO_JVcj{ImkbOH zEa{HEjtmSN`?>!lvNA9*a29w(7BevL9R^{>lFzsfc^Cm%Zl7wRzj$ z|DN`L_wRT6s=vRxx9j`8y}EnbStd=mSIyzsFd`{XKTJ%%1dPTEm{10&czoq?_0VTia%ZIyLHR9ZQHhN zF*)tMc+VXB`hAVuoD&#OkV_xK8kZNH0iqV%XIyoSoN^ysscM#qXt}|$dgbcX*5&W+ z+}xa={q!l1xR3%P3gXabR8-y|w1bm}b)HfV`!gjGw~sO>3#Qn+yjZq!CFjo9uU~I8 z?5cfrW#y|^uO_Sehuxg+rKjS+gn|V0n7TR-cs)=v5UJqGVLiuG+_-;5vnAi*!1lbB z+X;`my1FJ!nsn&Up+A5ABp>g4TBwNX2!%!ufrfq&5fKq_@##~i9<0pD%4&JOqS=z; zo&^v4y=D#mL$(}$70mCj-G2V;*}J>D&5ezXb#-&Uzq`Bpjdxbos!y}@JsMb0kir#~ z1u6oQYkz-}wX2a>6%-X!_2>xakzxhQ4H7$edX6Ppa6ITZmw7?Dr7poWV#D8CTeBbU zL<`ml4V)Zj=2#jlD=XXD%FZi(a$@4APen)4S{`=n%Q8DG`1kSx^9p`T1!oQh-IyH# za}Irbd;98U;SZ%9936~7jXEnXCg>*RaoLNRtVz&Kn#S{g8u!DfJ7VXjHq2U*ExR+U z>cZ^^g|}Wj=ebi1Z%tszar(DaGDmb**yEKRdFQWqXBS5IJLc=&QRHlCYDinAT*$HA z_tuN6$9{{tebx+4|5mrwtm@&V$@gEZY}KuAxG!jD&hOg&$gVbt-;1qao_+nk8&hwy zy?mQAzRr6z)YaLYGcSDgX(?P_oOF$G<@8xE=C>tUy*S<` zbAo;E%WG?;%M{b1A3vJh@LHtwmG75&zOPrdFZZ4|{q*YZ(Qf+XE$hD5WLU+C=^L{z zYTT(egZ=R3rnFb7jvFqXR$6xJL;gog&5qZ3QzvP#im9uf3pWtFz~avs6VhdLap8)v zQsxWybG|&ea(RnQ?0%lR4iZ^@3m&et+__ElukVTK$AXiccj^5zm2i%(%+gx7_UP7? z8f#t8^sLM@SeJX?d1$w!hk^!+%kAR3Q*WECj9j@-Z{_}5HkBOLwByrXdH4QW?N#h~ zF~;-C`>LOZKK=7uUU~gRzp`6>>&Jh*>yED}dB*9oqNMKV4$)ZK_(aE(!c*Afr_5z} zTJpvC`V*6oi#N*d?Wuh9?Le-xQ1#`@$4o50{&}!kbEkpK#V!TS08vHD7wf`8LRt(h zceEZ}+w@|Enq;5QfrD3=UR>B#{M=7)7pIr*v2%V+N|wKFug*Sw;qsm<@%(xF)nnH0 ziCcF!Z$ER7SKp4@($|)a9(_Benv{HBc}`}>bB**Tmy4%#6;GWbP%HT(C#@}N`s?la z8&r;eHH`VC>i*%o|D?ZpW>)4Ry}^$U&zlm_xH2rs%kNFi<{AHe_SSsQ%zJ!f=ZlFl z*Vh|=Ep_|Z>QTH>@P3$Gy$NUQ6OG?j@~zu!-2GFcpW8N^&uPo6zdEzFZgU5Z|J0yS-I?qInE{8BD# z@#~d(l8t5VOzmReTP7BBJ{=SShv4o38EQ_pu-CjNYTILJ!^0TFvCp@h9saN>B zBVzmZ<)^%Yj~4$ikTG=JeS3EJQ<ICY3;qFS0@+zzjr;@?|r!u%)b$=L3LlZ{mPfJ zeflNxZr0(ClB+*Tp1&w_Zt|-Nt+lrbj!c*3Nx!qBaK`^P4-PiZ_!-$!_<=RcSf-}v z!{4rV*)t@hjF&5ZzqU5|>;)#BD7NkUqcoo{+8_BlXUDzUOY7%eyYp{Vib;?1y07z^ zEa&9~_1;^kW#8ETBJAq&CkoB~iYVtX64$UvC%cUc7wu&P*}2XI4h;e>~PpPFwu5GOk$lQt`~oGu{7R zy>MAyFK>Nbn_CU5#VPG2z8VhI7kBQwxa?7x!1Q@?+0XXpY-+jacp#wP^m_NyXS9V*7uHvl-EZrjzTDJ#)#Il|uP?{-qW3W$=h}Fs4c1Gkg*vZb zGj@8s>~xyNj~88@iwuu5sLlMAV)1#K{(G}!m)o`F-fjLk_2kRiYtPQz3ZEEtIUsY= zx5RBp74KI+Gjm&?`RLc})q#gU{#(3z`Te^WWA?}YJZivm-$!Bc6=c2xV_q-YVT*EHogl5C1s1R|KVC)U(jdS{&dH;{E*)T z0_v*`Zo5u;+Udn~%JtaSH!CHh!lSyzW0g zI_-b;LuO`jNLtN5mG|v$f9&byyf}TCcdku&F{u$CnGQR7LT{2C) z7K_PUm+1S&ZoR#^IEI(~sIYV4w>LMHpGhCsT=-#a*ZDOfhYzw#*DrW4^~kzn&2sg_ zKl}5-OJ>)e<^H_x>JoGDyT9(XiL1T)S(fkGB`MW)^VEab(k~|2^L>q9v^`!~KT*DI zagE`No!VE8)s9!&9KUQ5sW`Xdz;273UuDjIVYX_2`XW=e?#ajV1%E!s%-_GcYNo(R z@BQuP+U|r+Hi13| zE?+(A-EaEdFvY+8XWni(mLv?z+u2zB2D|`_&AykCn`ikC%rPm>V8e z*V~c)Wb)4GJnKx~oh-Q17IAf+j!}k+`-L#8wVi*~+1|e+b~u;EUBWLYNGL7Dy5xmG z+oO=Mu&#v`er?U291{*te)wm-U%gP?=QCSY+s9qYJaBD$T;v76Tx;XaY_k_GoUxgQ zv8|+JTeyA5@%?hydF!v=)Bn}>EaG!r^{d)hYcAYf_3O>LXSFGPMzzzX?_3g_A3c@7 z{za2zRn+w5%bp%D(4VVZyvIb{wz;@Rs&9H?Y@3Vfgfp*}y&1cc3qyeOucF0e7`;Z_5vNRS`HQ0NcFKztZ$s_VB>!N zd-v`8Nln$4-xuer{bcy1v-}*-uZ`8GR{lHbGgJ4Lw|7BqlvkRf~z(42v1~B(zn`PI#p(S^NyZ#wg(LQEcXj0?Fq@VPOF|I6Eo}1zqB`2vMat@ zUb|D)TDo^$M8+)Bxsx8xzr6#THD2s*?A-Bc#zW=I2i(!_VT(V+)<<3tKKxPSd|-Q_ zf?U$YWQ!XCmmm5{@WpVeueH=(otL*Yll?Yvyj|G4wm|wfpwkpBmz}*ZFjR)h`LI zbL;fzH?=jCDeX^P{P)_P)qX6z$Aj6U^v&;E<=u6jt=csI)Ps2uDZK1!{m$q$a57x! zmOE*fWud95d8pvS6Y1q~SwEa5_+(C0>u){Yez(7C{IfaiIO-iHEZVE&I|gUklr}EPKv&hra!7!UvbV{CuI#yKmFN^WR>5Ru}URw{kvw z+tM8G$Rq4@SGk-OmPp{{DM-_WNu`)Vd9sIHKWD=VYhbiOyaD%g@Col6K zTX#|Vdi)C;&%W0l`vY1Er_}!1BD=V1ak}2i1J!GO?%91|^14#uS}V=!dpAZ!qH&PbN6!B zwLUlgzD<6-K4#`VtIYRZYkvo&r}19;5_EXu)~V{Q1vyQNx5#PsC~Nkuu{zvdzOgjH zdCu```o3!p+<%(A%j3Uiw3q(d?yRZFzt<_--*Bt>mZfI8 zzWsvNr#-8>$+hJ8tc!|qZE`$P9g4rzE!UlO^FQylboZ>+o2P#9<~wYW_LC{WGK3{& z_R?o^*T3$1Qk>FfB;u}YX{Ww&dr80P+%ZEkHu}YtG@hc z4ePqL=H+h_oS1zdPjIpb;x}E{Ep<=mY8w9|kN>BYlEo!H28kXHTi{$ej_a{%|wJwz5xNS)=CPDv>FPmU+vMacwvr z)xqO_euK>Qm+W8oHNyF~U-yq21=WBR#gDJ31#SF8V?({U&GH|N}k z8A_J31Y_>WE4(i5Gp*{Ad>5OvjpvmA94RI{{rEVWVu(RZz&W#Nfm$*UDzbM8p= zEqgrct$%2Xd)SK?u*2T(=du+^( zdrPQKkbnG_@3F@B9d_00U&>DtKH|RM#hzC?&o28Pl(8anr|ie4uJdaDJ$qHFl<9o9 z=ugGAHS&`dtG6w_w{~9V65FGH_wbx{{G0Xa?v!vZF|Au175Sy>-dA;f=-{4md!J#| zuGK5|uiC?ZnlrZCbbjsCKNWs`=M4IaQZGC<&injBL}I?=m-?eDpIpVJV#|3ZfABNmG{*dKzfy(WP zi!Fl~T?&q0*(eijq1|DhU72+-PHM$MJJ-DQRfWI*FrIySJ0o6M-}ai*_1LrdS3lk^ zm@@yl?b%sR%O2_Ym#=f&$?=MZziMLo_U*EEe=QGmF5&Hc|7kI2<;=zd{b|ZlJ#vnp zEDuIqn0kXJ{<)6x72$&4YoDJ?-&4_dG12l>Mc?$!C3{(l@5E*G*r~YxpE1W_nS6lz z#ykHCUT%M=A>00E_xI5Jr=Pc3cihkZ_x2QzyxV`TbvI9`XKlaB8ooBF^|!F?{U2`i z@4l?GdL{d4b-~k9Qx{#HwM*LjLeEA7{^WC_RT>I)% z?eA|76Bo_UWi*u8zSeQ3w{KneCF$QGnTw{+nqlVqvg+B+>9cB^Oqa)HeUq3Vb2!jF zugGmiOyQf_Z-1uA%>BOjp1yP2v5wXHQ>@;5?X_Qb?``suy(QtFZ)WOFsOXzF+i!d2 zAvH_8=acwOEe+T!Jb${Y^S?K)rA+yLZECNLUs+C^m3FrK$&c&FzIQqA%OW>vSv6fgMU z@NZ?a{+YdH7uR)i+*%MVHSNxwJId~TZ|?5Ce!2AK;m-w6B>cpecd|X{+IUuULH;tv zXnpgG-fLrCElP_%b30h~O>&V*V(olg|1CQezD0ai?h*bcmt7~_cTO%lu5IdS^-13z zp9?KM$aSqWV7XIuR&1MFP38Z8*DfdfW+qpK9AEL!<2!Kd(9L@37Nnr(9GqYw_O0mt#Ke`5qx$nD1XJP~xZZ_H*TeQ>pIt9>*s<{ISp~ z(Lm367o0E8Yk!Vu_79h}DF?ovTjbhZR8*9emBo|$ z;-&B_se_;IrTNXX;oR<+Zh6P9^-h6;Wo%m9-$#F5SLN5Fo}Xu1V11^y;qc<=x1ODy z9mq6a_rOlOIn^tFhKHYv{;AV&(`ZHa`)xT@D_-QUZ>#dDk~;Eo^X^&SUoN>@$0#9d z`c8GmM_q#viLMHFhik;nfbKPVe|1W|cKHYu3(lP7W>f0Np|JyiA zU&mS4b2a<#ms4c^wkGB8+E0d@-|8!C^b+wG%S$@9Qi6 z3c9>M+PKE<>-4a6Kih4OGsCO4m7aZkt);fCrC3^*$4TGRe=67Nn_IKP-Q3vbZJRu0 zO3V6)$5;Ii7aDLMDY$a`S59$NT}EN`UgH#tyx&&UmCt5P*K-4P4F59TJN*mJ1(B$`U`^OFrBEWQFbhTyvKB_J=d|H0_+N z{;ljQYW@CibKgaezVDsvO-UAw{HH%weiwS>$5pjYzSQ)^hLlUeQS&Rm7=ND>d_H#R zbdA;7r!N|xjVeg8n3u&h_wu%!o12QC`|<2Q_*F?qRO%`F$9u_V)4fF{zibbG-+L*T z+xW`P6Th1sOUn#{>epBNGQ4-8`1RhNl^5=8`&BEwN`1-V=b8PF_QcdL3_rhd@xNzf zZyTOe-Cng>kyXOXL`0FtW?pheT+#Nm8XdkG2htX&7r#FrcFEGn-T#IDsr5T;Y>Ndh z{J*Py>h;pyvzD!HTE6evDcSvQqBVR!jlbNOGr_Cx;>>G@uEpvKT)kMyEIcKDBSU#o zTfbk!@`M+C7vIat+-qJP$JCJb-sx(5v|`W084Jr6Z{oSP{_8sN^7q%P_HVu2FMs!H zap9|(uD5=hWdEvf4$q7DyW6w(O0eVJJ14q+haWw1W!~aHPVcoWUunB~C|g#=-0HU9 zZMOCR?{V+wPbNpSHRcJgw7mAEBr2G__z3^uN5L!KRlZ*-Z_{iU`15JfzsW_?X9}yO zpMP6@Ava!p``xQYwojdIxYR0LL7=eIzgEB})dEzNv%g^#x?%Wb@xJeQ-g)m6nf7ny zui;PoVZvG`c5sr+U( zyngdhTVIv8sXndscY9krS{{X6O)oc{KWTC0lD*SAH}AQ>jqRyb#)+lPH@5I>UBU2t zqrt5fr;9mXjucF>xz}tt>*rh%?Q1;x*Mxs{KkC-?Kl_KJB<|pybG8qxL@r$R*P8dp za@Ojuh3~TJy!&okc+SI8R}%jD=L(tY6RYjsdzngpx&OZE)XUHBTvIOGG;o@DR%QMy zg?Y35p3U3zGw|iT#U^&?+Y)$=tMp#@p9C3_y!bot|FI`K<|d#0E#9!u^4gyJ^R(XY znyab3Wc#YR6@CA#!_Ve_KGk2aZu?rtJtD9EKRlj$`BTwTqbpl#$}~UT43ASj}uzke1vS!n&8;jqQO_^mrr4LEijD~?&8u#VZ-=(}g^xeccW!?l;XQ*iCV(UQ_uqRP%u6#xFf5KmH5}xN}r$ zs?1Syp1=FnoqH2pbjR-by|*j}UnN?;y8rXfyJnFeQ!n;kOWhJ!Ijin~cX!d=UV|%N zFRp$2!+heF`)A#rw;h~Ycfecxct<=>B!f`FYs-7eXYzjUmFRu4WFG`}oA+5FD(-_;%ER||jZ@v1*stH;60 z(e<$6|HZo*JjXA8@V&0R?0n&zd&^&b`6OKs_IH9pFm<PR?Bc(dOa7_ke^I-! z{PqsF&rLsA(=);wO|$-QHw*EYKl3Yd`Ps}ZMX|ppYOOtSy4I;6$->UjpgEL-hdRhNybv9>aFlW;0$Ll-}n3gP#d;E0Qlg;WpMlbfCtJo#d?kD|a zx^KOo{l5EO^M$6o=diVY*sc`8^5p_wp4|0kOYZG|rYy;FIC5i>D--5?ops~W)6=!> zo4GRiuM{XWS#bZ|n>}MP>fBcYOOq>uk<(#LF`swss8R}tSQ0E2O`m0y(QY`0Bb<}p zA9X74fjQ&Rf+>1g94}c+rb|_?{242GX9AiL4op&q8=qe&U~)Ni))RHwP06jHP1x{@ zjRDH^XothP8V**D`|0#mi8GaE)~>E_fK=)8wWg)Hd04gR{&uKIY9o64j986&QoR2d!SUO3FMh=EA#uI~QLNHpsCs zvz;h%blaY7CmtNXlz;eRwR1CTN*R*>8$Sqj)bOyYUA|o@n73GhFI4?Yp3ofSAK4a4 z44Yq=-YhyK+Pm;!%XhECizmVZ)nNz6j6(%?j%8(79K6_P@J`j>aG-YI*)oBP6XQ=# zlwID?KUrkuo)g;^c5tj@a`Jnf7^v;?+|2ib$Lwy~`-e(p9~B~kRH1_9OoqiQ3BEt> zM=G}E-Cf1^}Z zv!HlJqeDX5;%@@E{ifpXg&KWIYJNgXf@JvbUfi;Js=&mD3mx|KAy53y=xpeCsNwDH z%^i3A`0@2|d#zMeQ~&?_`}5~dQBhHiB4=mjcZ(i>kpH)0&6+c(Pka0Nx?bD1&Ft%2 z(|vp5)v(^|gVt|KkFiof9PU-bJzre7If^qb_wpqStm=@^t=iNvAzWcXrQA ze#P{5UykqP(3&mQ3ts*BBVx>q$Tu@4G#o2vc{SsDfr)aN1!v>RGpFJY7ry0NwpGZt z#_jIHGr>IWKR3MWd1zrbr{~#>4^Bsw5b@TK$8^m=W@+)PW&TpU>TW#8Gb4JJ7h1eq zWVA}q{L~TVB$+-ly(MxLk8M=kzqfZvA}3iNhXYJ)&9f^Er#GZ6WBl54Y1yue{WlM_ z=(Q==2HiQcRBdh9OoaoPT_)8PC*JC0zM8tew`^W)?`57D4_+NnLWE?4J&RJlh2d-F zi{+2nc#qE)TYa;we=8@G%ey8-W?t0Ez^netML8*5g!Ax6gMJ5-TDMA+1qN=QZ1s%! zV)=s)QhlqgOQqWyf0~&dhe+8Sd7vz~>Xq@u^6B!M(_3!wtbge8oqck;J5ovWKpm8s zWAFZ)wCb|YMHhzBSLw!2(vWkcihv4}pz$1qsq=TEFHc}(XO!ZLMv5DdCmp^BEO_YR zAN$D%Ir(`suw+=|Frygkz;w}>q3yDo{@PWlc6N1NUtQJI)cpPZ{rU6f*RNP{fYaQ> zBw^kLi$Cr5TH4y5KYa=c4xT6~y;@!1@cbK@Uj!b_1X%~qk_?;??F_uftxAthnuH`c zfr0afl7QjipM?oZ!CwSFT)p?B?g9sooLQfy0F&ct&UYQKKtGVeB63);_UaL#zPPL% zJNs|8C%e7wTaABTvQ#R)BWoGMUUVxZ`{Dl;R!mFM^q*1o{Q zC%xa?Ff`PE;4jCkzHR@Hif@p33G{1d6aKJQs60Xa!QSaoEsBTam#t}(wctE(^gt)3@i0P^as&yy?{G#6>#Npx5? zea^rAt;sKLY`s-bBcJ^+yU+T^b+LJ3%NxbNxmMkO>-bglm^UMjMBgLRNpD$RNET^d zTrRmO+LCX&i2Oe1-#MpEWH#5EZmfZLN=1NyakB*9pC{e=`)=&3t#);FoqCXU_M1C9 zKd)ZD@6?$yUnGM~?+j{>aQ|{sczmpa?4zsUQxAL8Cl!`kfkMaTui>0-j+Hk|4-4L& z$m%g^+K&p$JHqo*s?SfmIx%=n!M&i(^6sBMEpVK*x6*1|*4`ME-C>&5rNRG>xM(IV zIlVZ;g0UvMAQ&9Wj6w$1AlEk;oIH7QDx=QIl`ECqdN}UBwf_EQa)bZjm1XY)8bzqw!5zszsH zsj=SXt$U{GyT`72)t^gZQfwEX5r7^Udb-aY4HJ`+hv)*57ksZ}s=*^XvCzUtf3L_WPa7{`P-=Jnpyua>1G3 z<^#jMyW4W5&2+T2tH0kZuf5l5?EHe`hsm7DdDCqtF~7OEPxa=(nvFpz2lf|!3*99A z*7Buke^tBE;@`}f{AnGKeUV4^Y=DtF{tRsumOavb&d!Gmx1XN&{?^vtdEH;c;!b`)`Q!4xOLfKfYF8=G zo^vr>?&?38-&YbM*BuR)(Bt%cStdAs!49rd$^ zSIGP4&TSJuu$|3Z6@R4#kJdh*Y>eJ*POrW^v^2$Zxx!~@$T;0 zeb4S$kaTqB9%;YY+S+x`Q~#QqYng8`uiG4VYDHwLeQy4V{LbrfpPoGPYf?FRy7%rb z&!1PTKg0-uQ%YRIM&_>{AMf%l67jjY|L=l%+{$~E=k`jo#5Fv9WhxVFCVIcsNMiEG zz0S{NOy)4`Gu@#H&8su!Hgxj1_gD)Qa~{aGDt~upW$AuV9ay^Y^4B^24)1<3-MzN_ z;hW8e7MaNyPd7istA63wi{xr4KZg5Kccwrq^)r4B5`9JH4c8+KHr{-7b#-u1(6{&Z z=g*(tzj8*Ql*GJ-oWdXc^$&KM8gQL?)3fH)+lkEeNz3idOP3#hRW0!5dB+}wJm&3{ zk2=*aSo-$g{_|M=|Bu`E|EX=eYRKm<$oX3!BlXGVSB%o%rh9!icq*uP&UuS0b7=~H z;hX4E5!Z=1{E~tFAHz!Ry}QEaxjxFXzxE>a`Q3tZbFH^u=i)x4nFI+z0nSAaf9!FA zw{jzKAAIui`UI{xNjzM^gwFjpPDTmS#BMD^u`&g}CGr5~E@|Nr-W{rBDX zJ3k6BO7*R=kjPsc(Y`#R$F}3~2HE*(k2IUptg`0+HvC$<^0ow@Gw-r>#$tWYi1uh; z(Q$Ivxq8c_hfkh7Ntki$Zu$M%*K4;|y`Q|SZ1(*>&&>D#`?`LkuGsmu#}%8}YIk(s z{+F!Rud#)*qgdp`#ocGJ)lI&~o}06K%S!82m2Z}+*%t>&K2Lt6=5g4t@aYDm&TT?2 z(=?MgI+X`~m@i0wwaI+-(QIAb=lTDC&JT~T-Fo9%^TUYUdb%N1Qhlvj-L9}=Oh|z- zTX4g?hkL%?tIo{Kl$4bG{QSJTzUlRyEO&PGUYM;Jye#4HmoH!BY^x$x&s(%+i^&{~ z)dBPPpqX?61LutPhOa#7PfkocJzc+j>5si@qPAw8n4tJYze9~+PvnM!oa73IhU{EqP zEt5M(l$(~;2swfRy((q7gNf1r)a1{M#66qXDNMd#D9 z)oKEgu$HaTSD}N>?oVne1CU%L!zktV$rh4?Yh|A93vy-U(|WWl=bXCs)XRDX zTH7b`xJUNuXe}>hJ#DJuz?7z(FmtsHH@FQXsG8t;xRXDpQ=>pGM(M%!hY#`&^E#GZ zIA$4sQ?AV(~a2!;)d~Yz6zYCKitaS6J3$S-g_VPzqbzk}a??GekH2{JhrNb0&!I zS@v+oLfcCPIa@)#Xf3eN+#(red)k5NprXTJPCoZ{tt=i2t2iUB7F-Ft>?eBoVD^o( ztiOYzqqXlW^NKq+$I|(*p>s9J5U~h0Aq7Tlp#={kHeQQJ6H;h20HuzOi>9v%dXr3N z82IXR+|bBl-n(+mnj;x9Qhqa{XWTw~vEWPqw+=Jsga%R03k7Q;vUQ9(CpgRiStzjL zAcM3^PRk9Aux884N18G(8+>C6Q=Z0Ed9Wlaj>p~B;I`S9J7%WS7J3!l>h=Dv@LOfy zt;*dzvWGs+%(R%c-f12K=LClq(3lL%ymnPap$$Tys8nCwcq8H9oXi=Pz7f3BiheUa zzbJUPu}(8#J`5pD)+T;&EUSC@ecJ z?U-x7_HHnb#Q<-WJ%Z#^=)KlPQR`l{ozJp8jdgYENF&zx1c(Z2X0%WRGB?o28I+AJ9s8-p&} z_zNjCGH^(k%6wenTj;Q-L4OVMxZn%HwwI>_;t%cywXza;eB$Ebva+-`X+>+@R##C` z=>N`Iet4Gfk#$$Xns@XHoj;iUqW4x-*IVzvKtZnLBLyMrCaK7U>&xjZvWYtqtZ&-; z%VJ)T{_pNv1tM1km#?UrxA*Y!C&z<-87pZtlnFla&9qQtJ9Bq31E-5FqmbdiOSjCV_R%k=|UM}jo;E3P*@w6Hb1C+9e^S?|@0uI{QG8U2@y z{il@2#>ec@ki96#zo|P!gzw72hb-@v&)806;5;J6DCL)P)%^T47LNn^pitg=HGwZ< zqk_xhEK`BmOuw5x^f?|bG#8iRJ-&X~vU?qE!Uj(7K-H8R=Y@i#EsrX1sW>pXar{WP zShPM$rF!MT^ee`^2~rs^dWBX8M)O*o?|k~>x1^Of*jph_g}l&-8$pVq#`hvr9!pmT-DRai42@9QyW5g*}a-sCv$bMRy{tMrC=7( zcapnmy`-Vc#oROdj`$yxKNLH~&}dsH(-vc1joUX^PueYPIPJr1);!Tnz`9T-@S=)T zpC-@p1sf_JKa=gAwkAo5QAnZjg5ZHtws2|v_%9}N7TjYkOjmJWy6AaeRU7l_gNJiB zBrv@w^XJ|1TySGm@59S)&W)%C9csbGHV&vszR@&O%g0%H414C<%g-Aq72q`qa zP;Pkb6X$5jtNtr%TDl99ihv&|7(03+{N`9Rp6KDYvf{95*Hw<~mRkBRj=3G?O#l3; zM5kM-Px8V>9u)_sK>vm|;jf`*gjEeN^(?-vRHsRS{&uvy?6yi`~TrI_Shb=jOfq7CxZ-A6) z*y3$c56yOdYO=hVVd0o#Tlc=J?XkI4o(GePz*m+Gi@^A!HjY9HjRByN#v%Vhf%L~I zvtP@ZI1=icWd4} za`K->c)ORS+`BCHz4T0H&*EADjv+sShxG@^0*zmoD&)( zIWE8p?xma;3Up#?!*pwA@VEy_Ro5I7TQu?CHvLU@6|cpfwOlXeakuKapfWpXB|LOeU(!Ak2CjLcq>1D6uz`j z8C3TOE_m3&X~OT!q$02v)DDZ@u4cD6K%!4Zd*j^ALf)O**9vX_-JU@-i?5dy1 zADd$ZO{o@UlEIvl+%hvP)bcLrNO7`EWZ+frFxaUrq|kUn#o=)0*{c2zk?n^Hp6Dfg zJNis_+rRjT?C6Cj7k5@m$hIfHmUy;q`Yg4i$Et13+ow!)P?|kYqR+^*>HLL&mesS` z)ft5hd>Y!4B_z$klW6Ini0a@F;OKnV^1~*?P{wu6o2rKb>c@SUw^dAXiwf|_EjJQ3 z{+wy?t*>16=}fjcd?HC4cWgN)I7o0@C^*D0vt5Bvs3VWbWX_9q@ssDxJ<5B0Nl2s) zC`&6i9PaF^dJ;K-fzxF|gDP+OxjB~eNFMRJe-|%j**&D^C z3zZpCe7C`a^c6}DhZApu9N5Uf8F8uLfo`7v?zL-q^Lbb7*j#^fEP>V0? zR;YJyurROsj=H^@}DJg-yjrS5fJv}S` z|NSoi{wiOv$Mt!S6F#0Ww~_LD^14A)fl+9K8lzO7>FeI5pki8^(Ob$dw3Ic4%}ZJA zL{G$qPe&h?uZi5u=A5^{eCpJxqN1W5_Y(dV+sFUSJT|wy_J8{NNsDb(+wpaO+E5YN zs?faqYFtqQx6QM-s+_(3yoaOSPPCKYRlj6<;PGSz&WNcDyvJ9W9xs~Az}Ygf;VTb& z6|;Ba7Kcm&+gT9{Od>WEeSLNH`4iTKvp;?Mv}TP?&)&+KFRJBw-PI~Dr^~ea>df#?xVkFzhj?X+@vQvRx{0KdTe~y)iP$W1|RG3TJPl#XFTIN&@_R8Gopuq_jr=%u}6~_I9-|= z6b~Q#b7oe0PS*;~V>{p6-*0bkFF*It1#6yzqI10FNN_fQik+PUZZ^V(h1?H-%s_c9+KYl#!mzS=&s$2Zn>P%<0 zz4g0kKMS|(bnVW+sek`oQTp-q|JEEYklA}J=iDNRzCV2tnwq^4GWFJ*cHi8PoHQv{ zIQqY7<>MKzj<_A}Jkmb*_!hawv$xCjqW6}aJY{-uVu7B8^82d-smpU#Jo@s1(N?PO ztKCT*L(T~fH#j9sWxg7lC29y7%(1Te`*Cu~$pXLmcD?L(6B@5R*cx%ca_x>C7Phv3 zO?BSyE%>}<$LzEtTW8CaKi;xq_J^vxJIvm7-;cFf=l^@bFUNCSO}lITiJMoFn1ut| zGeZLBE~!Y=tcczd;94-}sz+tCp!CTZA#-mZy2p2@#zD$&M&sv#FqH{g5q+7g5_*T@Pw|@V> zU*eyd63y<{ewVdb?iRPeyq!g(0;gByQWpO3LuefMi+&@Mjxv?F)7KPX?ncJJq7 z-|N?JpFT^uW3h+l@xE7{%rcBJ&o%m{#2U(my9;ey^X~Jq#s8yc%y!e@cR$Rj8vD-L zi$f=NYRR`ZmNq}Uznti8Vtw9Ze5kT=)xsCnsm@!UP3GrS_p-Zf!wYK732&J9(8SDi z-_LW>Sw`{oe@&~FC2DGES=IdbV1B>m^QGv!6CeJRJ0D|g_wH6_;g9dLGz-hm{(O5{ z`~8lOw*FO%1NpvoNR@`D`31?S-g#v5%1v|19QoLbGPdVU0u`kE7G+;|S*lx=_3h77 zqc7qtatB>lE*#_(WN_Yo;@SBgkgFESOkJL{B52R&g%4-E_c;Y))4C z`~Q5peBS=2$8+|$%D1UK=Og#k?A%>d$hSnJ-tt-1wzWmCWt9P12R*e?s!{Cc^3#yy7rzszJ(`5OB^e(alQ zdMZMC_rVp`t1OR}T`6Y2P>^A9ZGY4UoYU)sYHu_1-ZAkDW3UqN_+hR=G(XP_y2u1JAc}=X^-w&7C&>z zof`G!M0+AVRg)AdYgul>icEmsz(o^NhTKADxg@UZuR z`oo-e-_{+dHoN4_%l`XU_WOH_rW}9Y^m8M-z1hXL!6tJ))Saj>5mIPep_-6**zvgW znK^AU&Q!nO+x{G^1*X9G*p#0FK~<>Bk& zR%m~*y1gm&^qHB)4~?@Yg*g{Z(~Iu)Lg%Z{khF5nNM<0>hdg>CEIKHJ<6T#d*{tH*|^$C zhb8(v?R#~^I43k*1$BmF>aOzt?Ku;Z)p7VhqCl6VaT-sW)PX&Re*}A$*B0;n^lPnu zT;P7yxW@+uWek*Irb73Z?gT^v1r^U|bEveSqTeN0knCJF)dX;x1TKDX| zU!;8h(Q7lA-xEcSevFg5X`S;e?KaE*l_h*f%O<;*x@mQ9&VQz(dg`A^qw@FmZSuDj z45j=y>^$$Na!zp25&Cer;E3_8*5@wA3hso7%$wZ&ydv)VIr;hXD$|!smdAa)_1?zj znz7jGn>o*Y4jV@IZm>~P5imJ?aR=kOy|KBD{&I;P4-I9GH@@k5e7RssQ|Fvl3R5}a zUfyhe&AICPVwb`z`Zb44oO;@l5BV!~yD+IFxH4T#wpgIA^8D5h`?#N4Uyof`JFzYK z)vLsZXB-t;+8)37ojP4?vSgo|zl!^X$Le0}Hi;HeTQ6*8KN}Wg`KJ0}OPdh% z7nYdLk}fabdnLqnZO+Z5)^*=&ca+>a{QC9MXEhRm5m&9+%Qdv`-soPXKJQkI$@;C; z1$JAqw#)Iq`gh^oo)eh@Q>q-MFl#1T*x8Gp0iWnm#c`qFOF+^*1>pq`StK>e#d}$p zjAVXCRNj6d;_h>#&iJi_-}}U6j8`)%zfMU@vR0N|Kj)77^oJRT_08mi{SNt7%6w+A z;9nbPk+H~XmGg~r9ygn{>R2MU)ce^>rKO7cug|?|p)Ja*E@gkpMqNmukpr}ZhQW&8 z^Khax$XkERW#)bqndob(aQ{Ntztn4~7XRMfniDN~#QX5apF0ykV_`xUoE7f0DbL%f z>D4CA$;ml`^X%`Y-HEp8hit@@91d>`NZq(%qLM(+;lQI3Os`7QLbQ{P6#O~neYo?= z@!sRAj6xkoOcM=d9$K2r(a84s<=@`6c)n=yF`dQB+sWs*Ou}qqnIppJ%OZt7>c| z2CZQCfhyS0IsSGgb5{IW@_7kpgw|1EO`GyOp;aY;$@*IZuB=e~=6QIdi|NJ*g6bR6 z4yU!4UWnDT5<174{$y^}l)0N0c3nQ)ZaAl-UMrG8NP*E?prhg83f1HNGufV1#XdVT z(>V9mmPwO@yf5_Mbh=cKwCz>pBNYcGMxg}#tqhDs#X<^=5ef;mhiBSWn>E=h$+WQ6 zGF&K^^bQUVPEJ<-qGoJdd})d26d7alc&Wab+3l&yj6w#+j0iSo;|8g|TRtu-$NMGD zotbGYx=}E!`RSon?&s&{=VxThFi2#Idw*+d_M00Uj~+d$w(v|+2FHbh8!F%tVS6SM zng2TqL4Cp*N&;brFZLWhIKNJUZ;?sI?H#*(Yin)O)=HXYUD>(I$|fQG_qVsoZao@W zT3st&Z8>%FQo)*_U>$YN2@N+vedsV{9e&OU4V;`V2MVU}rTvpUcV%VpLi3;nYOf=* z((e7c^XSl|ReRgHCSNY{51TJ#Q}JPC@bXhnQxCWCGPCpP=;)XzewWY};#EH;&EP+u z#p6IelZnj!i-pdh4y$6qi2{?)afbpPJ$@X%K5p)$Nt^2b|NHajPgfULi~og49tPC4 zfni&3cU-SKQebe5?e3+n(|&z3b`}1Z!ke6)chWM#qU6%9o!VugVRPSHUhW?n8X6fX zxogG2+_1G#Uk~%!AMq=Vdg_x2>jWLhVac#aTP--PoyFro3rmkwpTt%DkmK@)1!rq^ z%eNWV{i)#D>Da#I&!Vowm8z<#p&wT4`EzNJ(2r2ovKPB%OsMV=?`#u(%-gWspGoC` zIipnH{TDkFIVU*05%_SvK;*ok%;CU0C*Di&EfY8}VfN^tZRR{*vn#b~()XXr0p?7Nw2V|9RL|MJFA00Zle-^lYdS?p&`UH<`ubKoyHp zf`ym3`Tryf=XO399!6JZ-%Xl(NuHzu!|+oyJ?4Z{L*a?e%DF&v7VpmioB|qL%XphxZgOUknp{uwy6hQ#ys_7hG)eF&S?;^A z>++;MNBRo4soHtoY)oDo(Wx6cQ>OlC=k~jAT&%)sY`(3%wR-(0*R#LD^Of^BIN?hQ zXY@Mk;AQXMBxopOsBpZ0=M{ruhG(J&4oIKyadbTR@Nm1~2e#9V%Iy3#;oR{7ERzLJumlP~;GU$kg>~ZbsvRc&v?@zt;TQb$q`bB%&vZ@q9tupO43d)%~VSo2H~QdG_q;4-Xu7@X8(EoPU3xsCL+bVkx(m z3JuMAS+i1KU726&SY#-3GF8S)2WhkGt<^LM}DmeHLRo>#u;+=JB-7r)!_s{eX5 z1vJPCuE$gynA8*nBo7NtdOZK(1I~Fb7L}Rk*T0-4JM(7scJ=p>8)`oPNu7P^l5zT( zS=`$NC%f;~v;S*yPrRg__xMAD3fIFQTYo-smFmlPJL3pS3!p(W2PTyV;-DB(Ic|UW z=eynSFEHm;d$}E&u(M!xKHK@1rWs}H8#h1GiL+07^JU8yotDCw={-F>`;R@$u$p1% zcGaTPAo$FQi}h!{^-WWs_?;;WTKw?G*Tko8P{Y9vw*qyX_x*e}`_Lh$FP`2vr|whN zP5#(*_VV-fv776vtEzrY%RMQq=6CSR1*yZ1<)$|3B7w^B4k5-Y8qFy(lUY`@9;r-Y zOjTpde8&)N7R~q8hxwFWQq?BYV+A#)uKSSJ`ae)-d@XtIdVGEF@v1`wMMXuMHf<7^ z(|CKy(xq>2ZchLH?rz0}=PjJVK|w(Vi%o3UgZb7(@2@-fhjoUr)U(IxDtTf#OeS*@ zgrEKc72n`o=+VHE1L_glR)5pc(mEu=oFry?#-t&W?c2M%v**s8J98%I!^T%o{PR(_ zzJX^+UERKl3uiYb9~Zdf*ulm-`${E(6&{<2m3k!p~jy~6(xh*Kd0G2cxJp?w)dsvfJBbXp8EUakx{a*F` z6@iPD8fP6Z0Tql>+}BH0PYO^dT9lKWqTVT+yGd~h^UCC;6WR85?-tqk?#w#5`-b5J zri9OZ;-xGU#`<>k4o?x-W>)QJu`l6+YVp9LI>*6saPWqi%; z%oNRl!xQIC&wAgxbmp6Lo^?-hvb;NmyVrR6y`F0M{>t1vA-nxN4yaUie%$spcjle* zo7303Zhg4okmjd_OFwud?Gd@>IVt}5=|uTAVMprUEZum#$z-F*)q5>h9nx|>Duw#3 zxnj{@5>xGGel+0e^lhP2<8SW&b0qrt+#^1VpLW7mJ4CcPoRRFCFvqU;SH#k`MVsa{ zO7$hL%1ysI@$Au!UVApp?8)}KEwx9!-*r>tl8Up&U31=^P&3=Mc(>)2;8aWLCSS87 zUXem?W~uC*c3L;G>usxT{|zn8dnZF5Nb|7@9h5BpsFb6c*{@agxIpfD(h2vC^B3%y zT04J&-qvrKMKavS~splN&EP|Emx&n~lQeZL7oAAA53U#(AFR|AvajX_S+oB#}>6z#dIrnPVsGDVCB`~KFP3@#pI)5}m=6#mc z2F}(G6XIW6>dn2c!urYdnfv9}XTpT0uN7E#@ZN>gbAfW__-s;K@T^k|{pjCFBYH##rbpRMD_KRUsC+Vl#+ zVxb#pb)WBe_X-C^|JZzd5omN6G<(b=u;Ael2i4i{MVL)x1WyF2@f6&z_B9o4RQ{2C zK5Mi5@dmk*Q|}y2QE5Fi@ySfKoM83cGj|=h`{%0OL9yd048M{rPW`BRn{rvtn0H6- z!xidlw~5ByJ?_Kvwa~o1@$v-4lhrbJZ<`qN9xG$6L|G^!9|BJ()#pk~tc`e_5-s9fh^;@@2 zotkIHWFoWqD#vMOsAkX-PDr!P&@*M%ihim3{JdQsAMwd#R~U%tVjjRgoak$GE5rWV1!Tge_kPv#faowK3H#hL_ zpS{U$YsKGnk9hk+Hl;j%7<#)e_fD+RrCW1f?#J6D*X^ZTPI5X=zEsR1)hFk5 z2FX(@57-%3OZlCbSFibU_sWvFt{&MFgSwuryZ77k{rvZ@zMO21-M8cQ%KrBipC0S~ zI@j`Q&5b#`Yc4N*I-9@t!`mbN`=y_=E9VK7FqzC*p!}2%v4E<9g@w^uitpIfJ%1i{ zgj#b=3_G29aF_FU``p{iab}o2x=D(SM)z zPxhaitG8~2?^&y9lV*ko#>Pk9HK;n(^+W%-Zd7@I*K2+?zuPUj8{0G1`mLTL4sS$5 zn`aGAK@9?f%Bbyf&C_%2_Ju6b_4wI&dHddfA1~Z%y}=3IEFVR0K4cW?jozcwVp@ zyv)ha^*~kI<@zUU^4s(xcRajtsQ0+o%1a&dx7Qh$e7v*du(z3P{Emkn+vS?Y*7%&$ zxBdF*H#56`gmwAXx`|c&F|!O3y4tP$y82(wn6bR>a%u0UbXMyyvanSe#Ox< zX0v8{d|Y1S-u=A5v{9d__8U%8U=JeMf}duST1~X zQFh4=iBg->-Y9!H4%`@MoS~XgrrwS!#W^jUe3#NDt{iHI3rErd&Sd3 zq1N;3_P*beYI%8@cc#^)O*wBG+k|h5`5*4osTY=ut?loKb~~EYa)V>FW&J;!by^Xx zo-SRt?wyRd5Qi<}7L$ulTs}Kni^R7$m5SWHxT25KK2=8u6nIDY80~r7C(8Wib+6#t z_FcKH_%idy%i(hK_8FD`T6IVAn@Mq~-WK+kbJwfi|M!Faarzp|8R7d1kKg+}@25`U zi%BcJH!agUDfaUD(wjG$?b{|#zhUU7^U?FtH!pqDpRSYM#`@}Szme(Lc5X^rGDrB8 z^sp~(Z_T7O9*k9+w)xYdBenj;ij5b918&XEs9U7DYgONcqOH$e{;E$`_W+et%TyC= z5AXas@w=MtJ^Rw1iq%$sK66FCvM#IrF8B9aiu~>Q(Of5A{`kQzUt?eU=#bAuHAUT1 zGWPbe)gN*!%sK=As?TvXeWj)u7q`@Gj>YXCvL~BfSnP|o<~?q{c*e2?t`(79uJ`cFq zaHKM}n&+);*4G`CFCRZk{nKI+@Ade3I?tR9oYe+0hYMK>rfBpP^BlLcXS~)Wz%Q;3 z+6*Sw)Uf(q2Vdr)T$dee`!9xvhd+KMWIpQ!M|4zNj@X?kQNUHJo(VTLu)}F4I7h2--X6KQ3T;xzw!S${has z8NV+d`fIOiV^B9y*Egah;mn;g-}lY^SNWb(^7kiUwm*Nqg->=r@3(oWWoGh{DSclO z-$&kPj&ECRD89W-d8PpG@$}it9{z9<;g-Dfs#j>&!TcvbHp+aTxMQJ?zP`9ua7080 zWBu_bPgm4h7Cq?z9k#0=!s0U7`L;8+i?vI(%WRj^F27y0U86(Ui#04a7W{l<2^t8P z16s&ier%z7{9Eg^e|8g(ox5*ecJSX3%gDpa-~X$-vP(Vg&DX+1H~iMu{Jwi)iJU)@2=R zoL3z~*ylBeb#2qKTD$OTP|>2_hmLMmW)#}M#po^N_vu}&|GsPWC$@YM++5st_Jo9m zYUzb3B1`z|X8b;;?)+Tm=B3A{C%#uZBV%JK%K1t8(gRIRjt5JY$a0k3{cv%9Tj!+$ z9_8*`ye$ti7MVNc8=PRY?@cb@RhxBuZHk*4o7$55n^I5jDt&EW`S;V))6?~0ccq-1 zjEx!F z^HkkUzOMMq^0@`nk34V%v`9z6D(ljt=lA7pOWeLSXzu>ye@pYy?0Db58?L|5wfTYy{gTFMS5^dec6KVe^+?#&{4mf{5%6NlNLF_5 zb6GvxAo0+bmzNcT1Lpe9Hd~mwZ29uVor_*eg~&Lq^WclxG^4_S=fuK?E_bhXtApkN z7(uJMzU2Q~^!6gAKPW!2?J zj&mk&2<3Ry(v~ct#e3Xf(~8>;xfU}TxyoCTo|y<9XneRpT)=9HVuo?@F`g4=uE*Ec zzBDyAoanHGqvpdw_Py2L+mg@EwHBY$yg=!edX-;N2cK2YB5T#OsNh2u8Rt*!$ugO< zVt3U?P{8UqfEKcCxiHl*c$(dvzq^0rr~UsByvgH!&z&DH8=l_pxpN`CW|PPJdi(zy zr~l@WGuAh$N^Z0=OBBqsP+K#_K-|+%hUfILKbbSSyw2z~+^qOmY{6t9@uA_j$C2DN zKH09>x3t&inrGgc^ZBg!;W<*X^j8H%J8$;R%F5;_Ta}-6dA8K;S9h0R`{m}oDm$li z_Jre?qa)s@@;_SpY}z&RdsWdkFO51*|LAYp@4vtM`=i6(&9`rXl!SHvem>`Td1j7f z@zE~PjwcI_OH~DOoot-8_^VUVg-I9ZU0ijvd2Oae;=XMk3P5?50kpOwuzqHB|DG>- z|J~#MJiK~-dCjHzpW({a>h1H~*H4^n_j3QEUj5~^-#+!vh*Drl&c9K?q~vgzlOsMP zr{}iapBD{zHeL+uo8KkEs}*l1-v7H|X9B>)QTCJDPv)he=UBs9 z1qZv9{?wi(wl*eekC#{K>S@!wGf#3_hOUn)it_5tTDs-Kn(bR&+|hEk(#~(<-S~55 zsCQPFuBGPt4NhK{0=>fYbz}FgNx8b|(A3j@Pg2V3KgBRGW!!gpOYUN!h-F$yD;Jo|iCC5U{dw1IJHxXKZQ2@)GG9JB=F9Ws z+}K-P9uzdGhby1 zv~$|=R_lvi?h!t{BxG~Wy-dridb7*ZZpQd?zR#L;gX`s$O_l0TV?%Z4hAY0`pYn3g zBUSFMX?hwFyA~9@Janq3XWjR^#jEzYZqT*7+;mMt$=RI{=!XmqhL}o%l}nA&oWAHUzC~{^;u@6?)qaB`@*(Y zdAa*-tMJ;X9(_lBeUQrUpv~DdAn@-)y9VvQ)R*r7fPRzG%WkIIri~XlcYB$r3UWF)*TOf>K-5U`tp00IrqyS zdm?{+P7~Fe5xONI>|;}8DtFpc{W+043!ZUWUe%dZ8RcbsPG{CT&6DrXt=Ovmr_Y_zj@dm41>|8GHiDdoc`1#rSRd@F8K5bimprGiK9)sG1d26yAXV-kY zncmJLX;k_u#Ah>`sC)6<&FTD1{V!Il9kSr?=rZ85UKROt(UBt1LLo^;DZeS9D@^^` z+md^$xFR*D>Sa9=oL`}`XGQ{pedFWy0-wOv%*y(IKcCOe+r{}<{?Cg!%f7e;-(j1i!7a+n4_dUaKU#{^0(gehbya-sL50mRI}|~+Zt>Yb@$N}zeVy> ztW4!?GrisY%;YUE&UvjTYj;s)saCXA$kmb+t3D>AK0erWjQN{N2)p?Ur6tO$4=p#n z()cLzC3>=|dw9R;O8(h*l6@uozTW)I8k%mq^kMR{gSl6HIqQ>_2LC&?ne|&p>8`pf z+OelLZ{|NcV~%z5r@$pMC-Pq zxp|lS!>=nNg-x?vw#|y1?C0fq%ei&WY9UL}v$J9pi5=KcQvb#HEL+?;;?*q5i$W;qA0WN|!J__Ly=@WQH#+m6;S%XA5E%H}Kw zZ_0Yd*>by}U~RbApQhOpCNyO11Fd{tvsXje;c(|BF4HQjN1hh1EZIOSpw-orSor1{ zHrd%rJZ$h>eL?ocmV*p^Lc0R*98)v9TDGxJ!#Dch%WX`SqDpfoPWo|qTTt9$m9Npa zt}l<`wo#dFad1}5rH`}3e67MRC;6W}o)xlk*UuSqKDk(BdQW1VyFoQ#g4W4%!8ciM zTQ;b;mKK!j-CdkM{pKS}v-5$!*50gIlgZ0|F8TeOv}*6W;l2`lbDm_}e7UDc^I_|x zPa8J9+2WS(5`55WqVE&Ss4_24(dDm%=GX7iv3+}Bi6OgsucgZJ#gmUe@s%sC`84Ct z$>c7ze$9C{%St}Y_;hlywtD}%SvJ3pJPGtrSMLv!=U(q#doOtNvm;MjQmi%eLk%lU zz6BUn@(6v4RCq7%ZfTWyCeiZYj-%1rOZKh(yYknwIhVMDw03V;zXsG<*_?iU-i#$u zi840RGtbU4t?=WMo7Akyexc298qeEE+xradk0kcG7}$gQ1}q*8ZNdr;dGGicrTXlz zEXt5RT5u$};KEXN+3E{>+2__=aOExLS@4-(uB!RB$C)|LZn@^(Sd}{0t?bptFAvvG zij$mlC%x*}nX5ZBcYAA12zJTOsZwUo{q&|#T5zLdirdCni;QzUj(TkUrt9onF+&H4RVd*V0Q?MoM}GIpL{w?iW}{n&@b$iwVu{PHu5YaaZY$jsj( zQ;_kb;m*XrpWVLMn{BFhO!|N5$UoK2zurr)tdH^Ql&@VCDD~92`D?{?n~nOLrk;!z zJ<0joQt$oe6DR()yYpFC6dh=M$o%~j`_YB{>%FU9Eqk5yYW8OD^V*Y|SAM==WdHNY zWJYGT2a1*wz0C&aj`d0>KC7_dTgG@KrD4(HSrrC+KJ(gyUBmU~adA#)Fy**VuqMzy zFw6^F{9L>oD9vZ}IpLk=(rzg^(f;{|pP!%KFMq;T^4$LNy^C(Y$&Q;*zE*ATz7N;* zC&fu@`g_}Sr}fo^(j^|kdoQ|NU`v!#G*jIgq~&V0+AFE|b=8x={ZIewdg8PCVo1%h z&?Sp5>;4k%S@9rb^X!nzF$&9TW`8qzIyc8@y4J~J134Xh>Ua3UhYt#Au%B@Vv$XCe;Qdn-YL~(CF&&%41g7<$vDSqR7Gud{7|FZ*j zFPVQoSsVHF2ygh|f=ymhA}0mgnjMpBe|CE3!fm$gIx$dug`yExJw%r#Cw z_uyc&t>n4?ufC{1G&}FJ``6>txokPLucxxUy|T?%D|Lg(6SsFW)xNm3V<-EnQ zUDH}y^~}|(VPA46?#v8wCdgx+;4ibxaFZp$Q&>G zm`78Jyf3+KTL0cYhslKb``@I4*>Bap%{hL06}x>^_`z+uyML)DynQ)&!aa4x&G}Ac z_v0*Ut7Tu@eqFFX&i&U{t6Tf8Z~V8H>(_U!DZv}HdMn;LzlneOr{}uzz26IV{J*Xw zdTQl@|JRTI{_bSebjAPH^Mm{Le*5;eb#cm9&l4{uPq?O@SU$f+S$n!|*;`T5(zB6A zd7X+Tv^@Os;v%zip+T+*TaV+3j~P*C%p3Z$UZhq2`BAtfokusA|L8;Jn~UBV9TQe! z6f!VnlT&`kUb=>P`hqwIR z;*-kd?<5Vse2f3T`fNeUNyk}k(%8z zO2vg&E`09)|KH!e(&u#T<08u!=G~omQ9%gHOC4w-e0bF4&)@-y(+)^V!~>Lxy_$% zl)d}hsvPk|$G+@srsmpGmG=u5E($)|x~-y5#d6X^o4rP^a?_L#S+GB?T$-CG^ZN+1 z#02HnzK7-Bes;L~HDa<_(B!tK9EUyaBP_~eXW71;x!Z4U+4)#?)eN_VdmbE}zSn)n zS>+0F_urwREhyyg{2x zzWmk^Ieai!&`@Fbs#RRgn~$0>?{GiD?6%B*{=N0__V3$1|Jd+5upv{jR$i|7Xxp5% z-j~E=^v-$fMty$R#jbMr<2C!WHP?(cJ-l*@XNgnS!yTTR9;SG{?|L%pc>CckQ|6b> zKa~}2v&>jGwJ6AH&&sNOrqkz?sVx0I>sRZG!)*qB`=-n)KU>ddIA_Y_OKX^u9Qfuf zN}gYO;9E|BWskCSpUmOLCmFWKpH5t`==dyyIVKY4etoH2wM1y%mde*luWbI#VJO93 zWt<;7OKoMVyV0Eee~Rv($>e^wKUeS)^LE|Z58Fif?``{ZFnY4wuF}KKvS#*o>W(YF zoh+Zb|MkUhnf=?&S8S=BX3P8Hj%2$-x%J4i+ldP&o9od?7z3? z@x|HOZHhiGYtK72@48*d>s9RevHup7968GG;eOvX=RxlOkM)TblCGr_WFA@`D!5nk z`Rw}r|D5=y>7MsUiG?C z<1fdy*_f-Z->Q^Ac7Zo4;d+9drBb&wRI4 zyw5Fb?8_^(UvlDBamm)V1%-#rJP%F&+Wfa*bD!7xiM;bB?|rdz$Bsm4)rXpMe}2)g zyKyt7N^SG@O`GF+;_H{~eB$$Y*T2I3FYMn`ul%su$ZxvO>y*vx zHd)zLoqchk)MhVfMN6r}7nLo|4qFD8-ORmt~Ve&zWuO1@9?D}Vo@fbYSBa0@fE!?Jm=?+`$yvu7&Rz2feawh$qPxZ5NcjvzMdRue7 z&#yf9b;1U6{=GPfLxp!{< zy)O=b4g?mv*gjzWcf@N?E6=nwb6)70@Tyn64!b_H(op6PSD)i;iM@Xx_uE&QV_a{r zdHaI2>|2f!eit(WOBbN&QJBbnWwPpp5cF+u3e#E|8mU(MNU);{r? zcU7>}>&%v^UQ-X8JI45Fe)^KH5moPVG;KHi>Wt^PU$Cs=+2z9h5;HhgJ4V?%1kGA= z`Rwc8%GdR))RR-WbJX9x49&b0Fy{=*8aI7Y%eLg%mQj76Lx*_Oqf;$79ED=PTi^U;{iJ94CxV20nAy5n^`}hbHcQ#LY|7r_`}ch* z|1EYl`qI~rsdwe#FTVX4dRNZ>)wdtF^7?aMe7o^XT<-3tM~AKBYAl`}ZU4UKPr7+m-1VWz@IZ`-BOF_ZD61@?U4Pf# zGRt^9FH1BV-t#topxV`Q3lSiA1Dp&NF9B?z6qb@%El#%lB;wRVn z4tvTjWGQKpa%_Aeacgr?m2{Y}`5N<_^uU!OXI}2HvM#?WTo{`sd(b6!(!(iF)*YE|-0#u$xtnq3i*;c| zRwit72WxXIm+t*86ZC3#Y}vlcsmHBjx9z!{T3mCT_han!{dY}0 z?cU8Qk2^ER^6R?$|F=a+^u-pLv>E5!u{c^_kXRBHCZ^WoR=sY;3W5G3i9G66>r-ru zg%lV+3mK$XJQ93zs_A9oqsNawR%^fWG^ppn|rs(W|nW#(;lQHtGz#G*Q0&DZ^~VEuXC^7E`4^eV97)CNe_AMs~mfHW2)Q!hfh2br_ai|Xx8JMB|GJae>^oiw>(?Gk3a>~HFOcK(;n`NtM?EIfZ{?bmDX z*5AAJ^J%oTU43=;oC236x}5Wu>qlLA`Dy>bf=k@zH76}LlR5Ll{cz{U)soU@~PA?;Tfd3CbBszOQe`OEVc$lv;Ss3`nMMCbMij5jAp&YrPZDrs$q$()GQ zg=c?q9X{ylBH6yU^P$gNE7AVoFF$SOsH?>oSKak^v*-IUal=2$e$UC?AA33ZG*Sw-fj=KOWWyi?9jd~Eh9hN=6T84MN4chWtSvt`ybpOlexz4=glCW$7-!fGRC|&+V3Rv+T3t^wT^9a;8%Zb z%gL&|8#=4=mWk}roY`2HJvTi46#vPIR!d6bTCX1}c(VMdh<9_rytu8qcfI^kW?7J8 zKF2xq>?h^ISxY*vOmVbO?Ug**`*PF6H-+gIX15E)&udy=wn_T5r|$5vXEN41O?Ou$ zyIuUX#c4@t^%Ir-+tzDFY(GBj+H%nqmv`CzeEnTSBlG>nRd%xLPTk&9__{nk@8`eM zx%cb$E&l%8y1IVf>hsStYwi61fBgJr-~9J)f8X5qZ@#R=hnou<=PSud{`eTE{PM$r zet!NxUmi60f9L&Cl7HWS^O7%-xBBP5efc>u>;3sMg}*n9Q$O(kes*q-ech#g{W5V- z?QAgTdVIa?-YYE+6K>pCXKE@fwzFhd7~V5zO10R4c2mfuYn|4?<&P`7BQ8AW zU2J!4`I8;h*Or?^Z`pM|;#=fJZZ!8VdzW+ji=5{v+QbF(EBH6&YPnW&y8!E zzwGjn>izs>)|y+_CK-D;RXlkre)#%H|D%!S49&%xJ}mkmGOvB|&$VygKHv9J`)EO# z7vr2~&Qs4$x_6>Y`K)2UwHcvl+z&k3nlJc%Y`yCm6m+~`%5}Z|Q03TUTsrmGQ~T3( zuayOFyB=-T_PXZ1GU@TAPrawL%=K1Jy39Gfr0B8H#F+a**AkrHxZk?kmU{H{bn*4E zaa+nN_jyQ9z7(cA-!kjVdO6mYw2~qr$5e`mV6a7 zLnSX*6@0bEL88y*I0KLSJSX12mvb0pF53G_^yygU*&N?`Jj$;yHu37s`DyEGzMsA~ z!_rFQ<=4~yzkE^McID?K`_g@H&YzF_cK>|bzv<7{{qUZy{r}d}SNqHN{*u4D?x*|q zZ2j7QyS(FfyxSzcZhwql_@0WtqCc)r%iFNG;@>arUCB#d`LB6d_V;P*`rUg@Z=G&i zes<~kxWE1B>;Abv*Z%+Si)elIt55swDsR>+@4fo2>&W$8;$ib{hR3Xa(Ocnoxbx#_ zac~(Y#PY{L#E)^`=*X5jLq2Kf7 z=dnlD`=frp>Ui?cc=NM$wv(pCMb-Xrxjk*|?L>=;bvE;4W=)&6t;pHvnY2aRnKP@6y)7*zCE?R#Rqe^&re1j(x_zbm-`8(&UxvRy|Gx!>h3C)_8T{N zmp|BYHusZ%q8{UNmW_giv-eEqxVuHhQuF26g~CBE+zMyE`LrzOg>PnXT4r#SXL6L` zq=FgTyPt|ry1hchz23n6)!}EK5&~>QMLeVQ_pAP!a{Y?7=H3-?o|&zsN=wDBWl#Dv z&6fGoji9K5minA^kCdGc?kuTpI$z=0^U&pHYsYfXNgGF5cqIGM^tN&wFW9yJa{23Z z&FkwdEOdWw_%3y8ZsCis{q1@8Dj8<~SmAv$@6qHpJ3k2tPrV*^hwD&XmdTtA%I4P@ zol`7k2XDTfe`{0X>vO%Dmh4(m{UO^GWnEWIw0#~j`%<#+N126IeD?#6IDd9Z`8;8R z@Ie}jK<2SX_A(*q9+y2blV@A%?NjR zHM4E!!lyfU?<@-`lz!oRdEO$o)Cau+vtvE7PHto`E)$>Ueu?K?q5bh$H(pVvhdwY+5!IyuqB!_V%pg~^;3JB2=i&JkZU9dtHB-KD2%?VOM4dflJ>zu>z5 z_BUrP1zW$~zRdp0*VC~x-PwEQ{eL69_pWyz|G|T|^S&OxTxI*T>!OXx9Er6Rzcbs< z6}Y@N^*Fb1a!}JNj@uWH6t}$USkdQ^WhuCR>DNyNa{4FNX*h)}S#qNDZ|jm!CE3=E zD}qf~j!o>FlOw8mT~*fZV$}IPtV?bO3U2C zYqeymSD5kV^+|^NvmM`MmY=+KhqXB8?$tN>FJEqa zb}QC*O<~_Ri$|9CY>!u$o6eo&j9lccNw;wC6MbwsZ-#4b`L~Vi^L{%$XSr~wVA5s2 z`cHTL=f?l#vn~v_4G_&|&d;!L%)VqYXTicP&-$ElE!d|vTAiCWS^Il*@a?`A2cDUE z-o0(3o@y@_f1}s+lbDRiG*$H%Vlr%(7J0U-^k&*tEOMR8=aBFwvp%)k>h0tIT-k?<~X4|F&B^b-7pPX2|rjp~?j%tGy zf93?tetzSysYKmkm9raU42|4v)!g@7GuCl8l)s*6d9Qjs>%HW)>o&HYKfLi-Ydh$W zj}AqqHXioPuG+z_?w=|xJ_!5BU0D79N~`wd>Ka2Q|I&rirHmF&moh6^Z+@eDxkO*q zD@H@sM%^ioGxyG8I$9434=><

J*)v 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%0ATR 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 Yap$?;0;^{+FfcH9y85}Sb4q9e0M}VEoB#j- literal 49325 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

>T|{0i?$GOUb!oH{Qc_Yha;kWHMa}m2 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 Date: Wed, 14 Sep 2011 17:09:53 +0200 Subject: [PATCH 33/35] Doc: update Symbian information for Anna and Belle Change-Id: I7b59d10ceed278a98b6c7d3e99b87ca4986d8e20 Reviewed-on: http://codereview.qt-project.org/4921 Reviewed-by: Qt Sanity Bot Reviewed-by: Leena Miettinen --- doc/qtcreator.qdoc | 78 ++----------- doc/symbiandev.qdoc | 261 +++++++++++++++++++++++++++----------------- 2 files changed, 167 insertions(+), 172 deletions(-) diff --git a/doc/qtcreator.qdoc b/doc/qtcreator.qdoc index dd6af1b6afb..1ace7009145 100644 --- a/doc/qtcreator.qdoc +++ b/doc/qtcreator.qdoc @@ -1750,7 +1750,6 @@ \page creator-editor-using.html \nextpage creator-highlighting.html - \title Using the Editor Qt Creator's code editor is designed to aid you in creating, editing and @@ -4214,7 +4213,8 @@ The other settings to specify depend on the tool chain. \o For RVCT, select the ARM version to use in the \gui {ARM version} - field. + field. RVCT 2.2 is supported on Symbian^3 and earlier. RVCT 4.0 b902 + or later is required for Symbian Belle. \endlist @@ -4860,7 +4860,8 @@ \note The build configuration for the \gui{Symbian Device} target uses the GCCE tool chain by default. If you want to build for the device using RVCT, install the RVCT tool chain, and then - select it in the \gui {Tool chain} field. + select it in the \gui {Tool chain} field. RVCT 2.2 is supported on Symbian^3 + and earlier. RVCT 4.0 b902 or later is required for Symbian Belle. \section1 Starting External Processes @@ -5452,8 +5453,11 @@ \section1 Creating Smart Installer for Symbian Packages - To deploy Qt applications on Symbian devices, you must install the software that Qt applications - require, typically Qt, QtWebkit, and Open C. Nokia Smart Installer for Symbian makes it easier + You can run Qt applications on Symbian devices if the software that Qt + applications require (typically Qt, Qt Mobility, QtWebkit, and Open C) is + installed on the device. On Symbian^3 and later devices, some version of Qt + is pre-installed. On earlier devices, you must install the modules that Qt + applications require. Nokia Smart Installer for Symbian makes it easier for users to install Qt applications to Symbian phones by checking whether the device contains the necessary software and by installing the missing pieces. @@ -5756,71 +5760,7 @@ application access not granted.} For example, if you try to install a self-signed application that uses a system capability. - \section2 Supported Configurations - When you select the Qt version to build the application with, consider - which version provides the application with the widest support on different - Symbian platforms. The binary compatibility promise of Qt and Symbian means - that applications that are built against Qt 4.6.3 also run on Qt 4.7.3. - Similarly, applications that are supported on Symbian^1 are also supported - on Symbian^3. However, dependencies, such as QML or Qt Mobility API - versions might restrict the choice of Qt versions that you have. - - In general, if you use only Qt widgets and APIs in the application, you - can use \gui {Qt 4.6.3 for Symbian^1} to build it. - The application is supported on both Symbian^1 and Symbian^3 devices. - - If you use QML in the application, you can use \gui {Qt 4.7.3 for - Symbian^1} to build it. The application is supported on both Symbian^1 and - Symbian^3 devices. - - If you use native Symbian APIs, you must check that they are available on - the target devices. For more information about the API differences between - Symbian^1 (S60 5th Edition) and Symbian^3, see the \bold {Symbian - Reference Documentation for Qt}, which is delivered together with \QSDK - and which you can view in the \gui Help mode. - - The following table summarizes the supported configurations for each Qt - version available in Qt Creator build settings: - - \table - \header - \i Qt Version - \i QML - \i Qt Mobility Version - \i Native Symbian C++ APIs - \i Open GL - \row - \i Qt 4.6.3 for S60 3rd Edition - \i No - \i 1.0.2 - \i No - \i No - \row - \i Qt 4.6.3 for Symbian^1 (S60 5th Edition) - \i No - \i 1.0.2 - \i No - \i No - \row - \i Qt 4.6.3 for Symbian^3 - \i No - \i 1.0.2 - \i Yes - \i No - \row - \i Qt 4.7.3 for Symbian^1 - \i Yes - \i 1.1.3 - \i No - \i No - \row - \i Qt 4.7.3 for Symbian^3 - \i Yes - \i 1.1.3 - \i Yes - \i Yes - \endtable \section1 Publishing Qt Content for Maemo Devices diff --git a/doc/symbiandev.qdoc b/doc/symbiandev.qdoc index 687f3049103..61289c09f6b 100644 --- a/doc/symbiandev.qdoc +++ b/doc/symbiandev.qdoc @@ -22,7 +22,7 @@ /*! \contentspage index.html \if defined(qcmanual) - \previouspage creator-developing-generic-linux.html + \previouspage creator-developing-maemo.html \else \previouspage sdk-gs.html \endif @@ -30,30 +30,47 @@ \if defined(qcmanual) \nextpage creator-project-managing-sessions.html \else - \nextpage creator-developing-maemo.html + \nextpage creator-developing-meego.html \endif \title Connecting Symbian Devices When you install \QSDK, the build and run settings for Symbian devices - are set up automatically. You only need to connect the devices to the - development PC. + are set up automatically in Qt Creator. You only need to install and launch + the CODA on-device debugging agent on the devices and connect the devices + to the development PC. + Make sure that PC Suite or Ovi Suite are installed on the development PC. Connect the device to the development PC with an USB cable in PC Suite Mode. If you have not previously used the device with Ovi Suite or PC Suite, all the necessary drivers are installed automatically. This takes approximately one minute. - To run Qt applications on Symbian devices, you must install the software - that Qt applications require, typically Qt, Qt Mobility, QtWebkit, and Open C. - The \QSDK installation program creates shortcuts for installing - the required applications on Symbian devices. You can also use any of - the standard methods for installing applications. + As with every supported platform, Qt strives to maintain application + behavior and binary compatibility throughout the lifetime of the Qt 4.x + major version and on the Symbian devices that support Qt. Symbian + support in \QSDK and Ovi Store were introduced with Qt 4.6. Each Qt release + contains bug fixes that might change the API behavior and thereby affect + application compatibility. - To debug applications on Symbian devices by using the Qt Creator \gui Debug - mode, you must install the CODA on-device debugging agent on the device. - For more information, - see + In addition, Symbian devices have different input methods, such as different + keyboard styles or touch input, screen sizes, memory, and CPU and GPU + capabilities. Therefore, you must test applications on specific target + devices to ensure compatibility. In order to build applications that are + supported also on earlier devices, select the target in \QSDK carefully. + Generally, an earlier target (such as S60 5th Edition) is supported on a + larger number of devices than a later target (such as Symbian Belle). + + You can run Qt applications on Symbian devices if the software that Qt + applications require (typically Qt, Qt Mobility, QtWebkit, and Open C) is + installed on the device. On Symbian^3 and later devices, some version of Qt + is pre-installed. On earlier devices, you must install the modules that Qt + applications require. For more information, see + \l{Installing Required Applications on Devices}. + + To run and debug applications on Symbian devices from Qt Creator, you must + install the CODA on-device debugging agent on the device. For more + information, see \if defined(qcmanual) \l{Using On-device Debugging Agents}. \else @@ -65,35 +82,21 @@ The tool chain for building applications locally on the development PC for the \gui {Symbian Device} target is only supported on Windows. If you develop on Linux or Mac OS, you must use the Remote Compiler - interface to a compilation service at Nokia Developer. + interface to a compilation service at Nokia Developer. You can install + Remote Compiler as part of the \QSDK. For more information, see + \if defined(qcmanual) + \l{Building with Remote Compiler}. + \else + \l{http://doc.qt.nokia.com/qtcreator-snapshot/creator-remote-compiler.html} + {Building with Remote Compiler}. + \endif + For more information about developing applications for the Symbian platform, select \gui {Help > Index} and look for \gui {Platform Notes}, or see \l{http://doc.qt.nokia.com/4.7/platform-notes-symbian.html}{Platform Notes - Symbian}. - \section1 Hardware and Software Requirements - - For deploying and running applications on the device, you need the - following: - \list - \o The Nokia USB drivers that come with \e{PC Suite} or \e{Ovi Suite} - \o The \e CODA on-device debugging agent installed on - the device - \o \e {Qt libraries} installed on the device - \o \e {Qt Mobility libraries} installed on the device, if you use them in - applications - \o \e {QtWebKit} installed on the device, if you use web functionality - in applications - \endlist - - In addition, you can install example applications, demos, and utility - applications, such as Nokia Energy Profiler and Nokia Performance Manager, - on devices. - - The \QSDK installation program creates shortcuts for installing - the applications on Symbian devices. - \if defined(qcmanual) To run your applications in the Symbian emulator, you also need to install Carbide.c++ v2.0.0 or higher. @@ -102,64 +105,128 @@ \section1 Installing Required Applications on Devices - Separate installation packages are provided for Symbian^3 and Symbian^1 - devices. To check the Symbian platform version of your device, see + Generally, when developing for Symbian^3 or later devices, you do not need + to install Qt on devices. However, you might want to upgrade or downgrade + the Qt version on a device to test your application on a particular Qt + version. Use the installation packages delivered with \QSDK + (\c {\Symbian\sis}). Keep in mind that this might + replace the pre-installed Qt on the device. + + \note Earlier Qt for Symbian versions, such as Qt 4.6.3 for Symbian, are + only available in the \QSDK online installer. For more information, see + \if defined(qcmanual) + \l{http://doc.qt.nokia.com/sdk-1.1/sdk-installing.html}{Installing Qt SDK}. + \else + {Installing Qt SDK}. + \endif + + + Qt is supported on different Symbian platforms as follows: + + \list + + \o Symbian Belle devices contain Qt 4.7.4 libraries as part of device + firmware (ROM). To upgrade the Qt version, update the device + firmware. You cannot downgrade the Qt version on Belle devices. + + \omit + To develop applications using Qt 4.8 or later, you can install Qt + 4.8 or later libraries to Belle devices. The Qt in Belle firmware is + not overwritten. It is eclipsed by the installed Qt on the C: drive. + \endomit + + \o Symbian Anna devices have Qt 4.7.3 pre-installed. + + \o Symbian^3 devices have Qt 4.6 pre-installed. + + \o S60 5th Edition and later devices support Qt 4.6.3 and 4.7.3. + + \o S60 3rd Edition feature pack 1 and later devices support Qt 4.6 for + Symbian through Nokia Smart Installer for Symbian. + + \endlist + + To check the Symbian platform version of your device, see \l{http://www.developer.nokia.com/Devices/Device_specifications/} - {Device Specifications}. + {Device Specifications}. The site contains information about the content + that can be published for the device to the Ovi Store (\e General section) + and the Qt libraries that are pre-installed on the device (\e API section). - \note You can also copy the .sis files from - \c {\Symbian\sis} to the device using USB storage - mode and install them from the file manager on the device. + If the device does not have the necessary Qt libraries pre-installed, you + can use Nokia Smart Installer for Symbian to deploy them during application + installation. Smart Installer ensures that the necessary libraries are + available in the target Symbian device before installing the actual + application. For more information about which Qt modules are supported + on-demand for different Symbian device models and how to enable Smart + Installer support in Qt applications, see + \l{http://www.developer.nokia.com/Community/Wiki/Nokia_Smart_Installer_for_Symbian}{Nokia Smart Installer for Symbian}. - \section2 Developing for Symbian^3 + \section2 Supported Configurations - \note The command names and paths depend on the \QSDK version that is - installed. + When you select the Qt version to build the application with, consider + which version provides the application with the widest support on different + Symbian platforms. The binary compatibility promise of Qt and Symbian means + that applications that are built against Qt 4.6.3 also run on Qt 4.7.3. + Similarly, applications that are supported on S60 5th Edition are also + supported + on Symbian^3. However, dependencies, such as QML or Qt Mobility API + versions might restrict the choice of Qt versions that you have. - \list 1 + In general, if you use only Qt widgets and APIs in the application, you + can use \gui {Qt 4.6.3 for Symbian^1} to build it. + The application is supported on both Symbian^1 and Symbian^3 devices. - \o Choose \gui {Start > Qt SDK > Symbian^3 Qt 4.7.3 > Install Qt 4.7.3 for - Symbian^3 on Device}. Follow the instructions on the screen to install Qt - libraries to the device. + If you use QML in the application, you can use \gui {Qt 4.7.3 for + Symbian^1} to build it. The application is supported on both Symbian^1 and + Symbian^3 devices. - \o Choose \gui {Start > Qt SDK > Symbian^3 Qt 4.7.3 > Install QtMobility 1.1.2 for - Symbian^3 on Device} - and follow the instructions on the screen to install Qt - mobility libraries to the device. + If you use native Symbian APIs, you must check that they are available on + the target devices. For more information about the API differences between + Symbian^1 (S60 5th Edition) and Symbian^3, see the \bold {Symbian + Reference Documentation for Qt}, which is delivered together with \QSDK + and which you can view in the \gui Help mode. - \o Choose \gui {Start > Qt SDK > Symbian^3 Qt 4.7.3 > Install QtWebKit - for for Qt 4.7.3 on Symbian^3 Device} and follow the - instructions on the screen to install QtWebKit to the device. - - \endlist - - \section2 Developing for Symbian^1 - - Symbian^1 incorporates Symbian OS and S60 5th Edition (S60 5.0), which is - built on Symbian OS v9.4. - - \note The command names and paths depend on the \QSDK version that is - installed. - - \list 1 - - \o Choose \gui {Start > Qt SDK > Symbian^1 Qt 4.7.3 > Install Qt 4.7.3 - for Symbian^1 on Device}. Follow the instructions on the screen to install Qt - libraries to the device. - - \o Choose \gui {Start > Qt SDK > Symbian^1 Qt 4.7.3 > Install QtMobility 1.1.2 - for Symbian^1 on Device} and follow the instructions on the screen to install Qt - mobility libraries to the device. - - \o Choose \gui {Start > Qt SDK > Symbian^1 Qt 4.7.3 > Install QtWebKit - for for Qt 4.7.3 on Symbian^1 Device} and follow the - instructions on the screen to install QtWebKit to the device. - - \endlist - - In addition, you can install an example application and demos to Symbian^1 - devices. + The following table summarizes the supported configurations for each Qt + version available in Qt Creator build settings: + \table + \header + \i Qt Version + \i QML + \i Qt Mobility Version + \i Native Symbian C++ APIs + \i Open GL + \row + \i Qt 4.6.3 for Symbian^1 (S60 5th Edition) + \i No + \i 1.0.2 + \i No + \i No + \row + \i Qt 4.6.3 for Symbian^3 + \i No + \i 1.0.2 + \i Yes + \i No + \row + \i Qt 4.7.3 for Symbian^1 + \i Yes + \i 1.1.3 + \i No + \i No + \row + \i Qt 4.7.3 for Symbian^3 + \i Yes + \i 1.1.3 + \i Yes + \i Yes + \row + \i Qt 4.7.4 for Symbian Belle + \i Yes + \i 1.2 + \i Yes + \i Yes + \endtable \if defined(qcmanual) \section1 Using On-device Debugging Agents @@ -181,26 +248,14 @@ \section2 Installing Debugging Agents - You can download CODA from the + CODA installation packages are delivered together with the \QSDK. On + Windows, you can use \gui Start menu commands to install CODA on Symbian + devices. + + You can also download CODA from the \l{http://tools.ext.nokia.com/coda/}{CODA download server}. - \section1 Adding Symbian Platform SDKs - - \QSDK contains all the tools you need for developing Qt applications for - Symbian devices. To use Symbian APIs directly in your applications, you can - install additional Symbian Platform SDKs: - - \list - \o \l{http://www.forum.nokia.com/info/sw.nokia.com/id/ec866fab-4b76-49f6-b5a5-af0631419e9c/S60_All_in_One_SDKs.html} - {S60 Platform SDK 3rd Edition FP1 or higher}. - \o Either the GCCE ARM Toolchain that is included in the Symbian - SDKs, or RVCT 2.2 [build 686] or later (which requires a license). - \o Qt for Symbian 4.6.2 or later, installed into the Symbian SDKs you want - to use. - - \endlist - - \section2 Setting Up Qt Creator + \section1 Setting Up Qt Creator When you run Qt Creator after installing the Symbian SDK and Qt for Symbian, the installed SDKs and their corresponding Qt versions are From ee439129c408461a931031685084ceeae1731e40 Mon Sep 17 00:00:00 2001 From: Sergey Belyashov Date: Wed, 14 Sep 2011 17:38:47 +0200 Subject: [PATCH 34/35] Updated Russian translation Merge-request: 384 Reviewed-by: Oswald Buddenhagen Change-Id: I73077a68f3c674f32198a71eeafc60115f2465cc --- share/qtcreator/translations/qtcreator_ru.ts | 111 ++++++++++--------- 1 file changed, 60 insertions(+), 51 deletions(-) diff --git a/share/qtcreator/translations/qtcreator_ru.ts b/share/qtcreator/translations/qtcreator_ru.ts index 1a93788639f..dab0a20da9f 100644 --- a/share/qtcreator/translations/qtcreator_ru.ts +++ b/share/qtcreator/translations/qtcreator_ru.ts @@ -3865,7 +3865,7 @@ Would you like to overwrite them? Shortcut - Комбинация клавиш + Сочетание клавиш Import Keyboard Mapping Scheme @@ -6987,16 +6987,6 @@ Setting breakpoints by file name and line number may fail. %1 debugger activated Отладчик %1 активирован - - QML/C++ Debugging - Отладка QML/C++ - - - Cannot stop execution before QML engine is started. Skipping breakpoint. -Suggestions: Move the breakpoint after QmlApplicationViewer instantiation or switch to C++ only debugging. - Невозможно прекратить выполнение пока запущен движок QML. Пропуск точки останова. -Рекомендуется переустановить точку останова после инициализации QmlApplicationViewer или переключиться в режим отладки только C++. - Debugger::Internal::QmlEngine @@ -11187,11 +11177,11 @@ You can choose between stashing the changes or discarding them. Resize wraps - Перенос при изменении размера + Перенос при изменении размера Determines whether the grid wraps key navigation. - Определяет, меняет ли сетка навигацию клавишами. + Определяет, меняет ли сетка навигацию клавишами. Snap mode @@ -11911,11 +11901,11 @@ QML. Navigation wraps - Перенос при перемещениях + Перенос при перемещениях Determines whether the grid wraps key navigation. - Определяет, меняет ли сетка навигацию клавишами. + Определяет, меняет ли сетка навигацию клавишами. Orientation of the list. @@ -13653,6 +13643,25 @@ Preselects Qt for Simulator and mobile targets if available. Поведение ориентации: + + MobileAppWizardHarmattanOptionsPage + + WizardPage + + + + Application icon (80x80): + Значок приложения (80x80): + + + Generate code to speed up the launching on the device. + Создать код для ускорения запуска на устройстве. + + + Make application boostable + Делать приложение быстрее + + MobileAppWizardMaemoOptionsPage @@ -13660,8 +13669,8 @@ Preselects Qt for Simulator and mobile targets if available. - Application icon (%%w%%x%%h%%): - Значок приложения (%%w%%x%%h%%): + Application icon (64x64): + Значок приложения (64x64): @@ -13879,7 +13888,7 @@ Preselects Qt for Simulator and mobile targets if available. Path View Highlight - Подсветка вида кривой + Подсветка вида кривой Highlight range @@ -18264,7 +18273,7 @@ You can review Qt Quick UI projects in the QML Viewer and you need not build the QML Viewer QMLRunConfiguration display name. - Просмотр QML + @@ -18272,7 +18281,7 @@ You can review Qt Quick UI projects in the QML Viewer and you need not build the QML Viewer QML Viewer target display name - Просмотр QML + @@ -19123,33 +19132,6 @@ Adds the library and include paths to the .pro file. Зафиксировать портретную - - Qt4ProjectManager::Internal::MobileAppWizardMaemoOptionsPage - - Invalid Icon - Неверный значок - - - The file is not a valid image. - Файл не является изображением. - - - Wrong Icon Size - Неверный размер значка - - - The icon needs to be %1x%2 pixels big, but is not. Do you want Creator to scale it? - Значок должен быть размером %1х%2. Желаете, чтобы Qt Creator подогнал размер? - - - File Error - Ошибка файла - - - Could not copy icon file: %1 - Не удалось скопировать файл значка: %1 - - Qt4ProjectManager::Internal::ModulesPage @@ -19168,6 +19150,25 @@ Adds the library and include paths to the .pro file. Создание нескольких библиотек виджетов (%1, %2) в одном проекте (%3) не поддерживается. + + Qt4ProjectManager::Internal::PngIconScaler + + Wrong Icon Size + Неверный размер значка + + + The icon needs to be %1x%2 pixels big, but is not. Do you want Qt Creator to scale it? + Значок должен быть размером в %1x%2 пикселей. Должен ли Qt Creator изменить его масштаб? + + + File Error + Ошибка файла + + + Could not copy icon file: %1 + Не удалось скопировать файл значка: %1 + + Qt4ProjectManager::Internal::ProjectLoadWizard @@ -19940,6 +19941,10 @@ Use a developer certificate or any other signing option to prevent this patching Qt Quick components version: Версия элементов Qt Quick: + + QML Viewer version: + Версия QML Viewer: + Screen size: Размер экрана: @@ -21706,10 +21711,6 @@ Requires Qt 4.7.4 or newer, and the component set installed for your Qt version. Выполнение внешнего процесса завершено. Код завершения %1. - - Remote Execution Failure - Ошибка внешнего выполнения - RemoteLinux::CreateTarStepWidget @@ -21766,6 +21767,14 @@ In addition, device connectivity will be tested. Debian changelog file '%1' has unexpected format. Файл журнала изменений Debian «%1» имеет неожиданный формат. + + Refusing to update changelog file: Already contains version '%1'. + Не удалось обновить файл changelog: Уже содержит версию «%1». + + + Cannot update changelog: Invalid format (no maintainer entry found). + Не удалось обновить changelog: Неверный формат (нет записи о разработчике). + Invalid icon data in Debian control file. Неверные данные значка в управляющем файле Debian. From 33cd873d56f948b4805da31adaf436618ac7edac Mon Sep 17 00:00:00 2001 From: Leena Miettinen Date: Wed, 14 Sep 2011 17:43:27 +0200 Subject: [PATCH 35/35] Doc: add screen shot Change-Id: I00b48066026929ef1773f8c231ee1c57e45f8f9e Reviewed-on: http://codereview.qt-project.org/4925 Reviewed-by: Leena Miettinen --- .../qtcreator-screenshot-run-settings-maemo.png | Bin 0 -> 57866 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 doc/images/qtcreator-screenshot-run-settings-maemo.png diff --git a/doc/images/qtcreator-screenshot-run-settings-maemo.png b/doc/images/qtcreator-screenshot-run-settings-maemo.png new file mode 100644 index 0000000000000000000000000000000000000000..8290e96979eeeefde6e9baa96746476a7f31e602 GIT binary patch literal 57866 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⁢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 literal 0 HcmV?d00001