diff --git a/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp b/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp index bab91d36117a64bfa38a2625a3436b0234efed4a..258927156f5e08ec555b50cf0a31974899f286a4 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp +++ b/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp @@ -50,10 +50,15 @@ #include <projectexplorer/taskhub.h> +#include <qtsupport/qtsupportconstants.h> + #include <QtCore/QtPlugin> +#include <QtGui/QApplication> +#include <QtGui/QMessageBox> +#include <QtGui/QPushButton> + namespace QmlProjectManager { -namespace Internal { QmlProjectPlugin::QmlProjectPlugin() { } @@ -74,13 +79,13 @@ bool QmlProjectPlugin::initialize(const QStringList &, QString *errorMessage) if (! mimeDB->addMimeTypes(mimetypesXml, errorMessage)) return false; - Manager *manager = new Manager; + Internal::Manager *manager = new Internal::Manager; addAutoReleasedObject(manager); addAutoReleasedObject(new Internal::QmlProjectRunConfigurationFactory); addAutoReleasedObject(new Internal::QmlProjectRunControlFactory); - addAutoReleasedObject(new QmlProjectApplicationWizard); - addAutoReleasedObject(new QmlProjectTargetFactory); + addAutoReleasedObject(new Internal::QmlProjectApplicationWizard); + addAutoReleasedObject(new Internal::QmlProjectTargetFactory); QmlProjectFileFormat::registerDeclarativeTypes(); @@ -93,7 +98,29 @@ void QmlProjectPlugin::extensionsInitialized() { } -} // namespace Internal +void QmlProjectPlugin::showQmlObserverToolWarning() +{ + QMessageBox dialog(QApplication::activeWindow()); + QPushButton *qtPref = dialog.addButton(tr("Open Qt4 Options"), + QMessageBox::ActionRole); + dialog.addButton(tr("Cancel"), QMessageBox::ActionRole); + dialog.setDefaultButton(qtPref); + dialog.setWindowTitle(tr("QML Observer Missing")); + dialog.setText(tr("QML Observer could not be found.")); + dialog.setInformativeText(tr( + "QML Observer is used to offer debugging features for " + "QML applications, such as interactive debugging and inspection tools. " + "It must be compiled for each used Qt version separately. " + "On the Qt4 options page, select the current Qt installation " + "and click Rebuild.")); + dialog.exec(); + if (dialog.clickedButton() == qtPref) { + Core::ICore::instance()->showOptionsDialog( + QtSupport::Constants::QT_SETTINGS_CATEGORY, + QtSupport::Constants::QTVERSION_SETTINGS_PAGE_ID); + } +} + } // namespace QmlProjectManager -Q_EXPORT_PLUGIN(QmlProjectManager::Internal::QmlProjectPlugin) +Q_EXPORT_PLUGIN(QmlProjectManager::QmlProjectPlugin) diff --git a/src/plugins/qmlprojectmanager/qmlprojectplugin.h b/src/plugins/qmlprojectmanager/qmlprojectplugin.h index 7b5d37ac652dce51c1a9185da4e4012a310dd022..8e1ce09da04652669a7a6423d98305bbcb249177 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectplugin.h +++ b/src/plugins/qmlprojectmanager/qmlprojectplugin.h @@ -33,6 +33,8 @@ #ifndef QMLPROJECTPLUGIN_H #define QMLPROJECTPLUGIN_H +#include "qmlprojectmanager_global.h" + #include <extensionsystem/iplugin.h> #include <QtCore/QObject> @@ -42,7 +44,9 @@ namespace Internal { class ProjectFilesFactory; -class QmlProjectPlugin: public ExtensionSystem::IPlugin +} + +class QMLPROJECTMANAGER_EXPORT QmlProjectPlugin: public ExtensionSystem::IPlugin { Q_OBJECT @@ -52,9 +56,11 @@ public: virtual bool initialize(const QStringList &arguments, QString *errorString); virtual void extensionsInitialized(); + + static void showQmlObserverToolWarning(); + }; -} // namespace Internal } // namespace QmlProject #endif // QMLPROJECTPLUGIN_H diff --git a/src/plugins/qmlprojectmanager/qmlprojectruncontrol.cpp b/src/plugins/qmlprojectmanager/qmlprojectruncontrol.cpp index 6bf422b093625a997443b8ce22d0a1f065f4fe4f..80c7d29df6368be1b02a81717615f2ad06e678ab 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectruncontrol.cpp +++ b/src/plugins/qmlprojectmanager/qmlprojectruncontrol.cpp @@ -50,20 +50,15 @@ #include <debugger/debuggerengine.h> #include <debugger/debuggerstartparameters.h> #include <qmljsinspector/qmljsinspectorconstants.h> -#include <qtsupport/qtversionmanager.h> #include <qtsupport/qmlobservertool.h> -#include <qtsupport/qtsupportconstants.h> -#include <QtGui/QApplication> -#include <QtGui/QLabel> -#include <QtGui/QMessageBox> -#include <QtGui/QPushButton> +#include <qmlprojectmanager/qmlprojectplugin.h> -#include <QtCore/QDir> using namespace ProjectExplorer; namespace QmlProjectManager { + namespace Internal { QmlProjectRunControl::QmlProjectRunControl(QmlProjectRunConfiguration *runConfiguration, QString mode) @@ -213,35 +208,12 @@ RunControl *QmlProjectRunControlFactory::createDebugRunControl(QmlProjectRunConf params.projectSourceFiles = runConfig->target()->project()->files(Project::ExcludeGeneratedFiles); if (params.executable.isEmpty()) { - showQmlObserverToolWarning(); + QmlProjectPlugin::showQmlObserverToolWarning(); return 0; } return Debugger::DebuggerPlugin::createDebugger(params, runConfig); } -void QmlProjectRunControlFactory::showQmlObserverToolWarning() -{ - QMessageBox dialog(QApplication::activeWindow()); - QPushButton *qtPref = dialog.addButton(tr("Open Qt4 Options"), - QMessageBox::ActionRole); - dialog.addButton(tr("Cancel"), QMessageBox::ActionRole); - dialog.setDefaultButton(qtPref); - dialog.setWindowTitle(tr("QML Observer Missing")); - dialog.setText(tr("QML Observer could not be found.")); - dialog.setInformativeText(tr( - "QML Observer is used to offer debugging features for " - "QML applications, such as interactive debugging and inspection tools. " - "It must be compiled for each used Qt version separately. " - "On the Qt4 options page, select the current Qt installation " - "and click Rebuild.")); - dialog.exec(); - if (dialog.clickedButton() == qtPref) { - Core::ICore::instance()->showOptionsDialog( - QtSupport::Constants::QT_SETTINGS_CATEGORY, - QtSupport::Constants::QTVERSION_SETTINGS_PAGE_ID); - } -} - } // namespace Internal } // namespace QmlProjectManager diff --git a/src/plugins/qmlprojectmanager/qmlprojectruncontrol.h b/src/plugins/qmlprojectmanager/qmlprojectruncontrol.h index 02a22c972890662a4fb9e2cb707478350b55c01b..be612a0de5bd4db3e290df229db38095804e409a 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectruncontrol.h +++ b/src/plugins/qmlprojectmanager/qmlprojectruncontrol.h @@ -82,7 +82,6 @@ public: private: ProjectExplorer::RunControl *createDebugRunControl(QmlProjectRunConfiguration *runConfig); - static void showQmlObserverToolWarning(); }; } // namespace Internal