summaryrefslogtreecommitdiff
path: root/src/plugins/qmlprojectmanager/qmlprojectmanager.cpp
diff options
context:
space:
mode:
authorKai Koehne <kai.koehne@nokia.com>2010-01-07 12:14:35 +0100
committerKai Koehne <kai.koehne@nokia.com>2010-01-07 12:14:35 +0100
commit818a7b226bb79fe6e7e82d25ad329419c931287c (patch)
treeaa6e11b64a22bdbda9c74b1c31fe7f39dd5e6eab /src/plugins/qmlprojectmanager/qmlprojectmanager.cpp
parentae535daa20eecc9feb07941caf65f2966fb8f9b5 (diff)
downloadqt-creator-818a7b226bb79fe6e7e82d25ad329419c931287c.tar.gz
New QmlDesigner plugin & Design mode
This adds a new "Design" mode that can be used to manipulate qml files in a visual way. It will only get build if you have the declarativeui module in Qt. This is a squashed import from the Bauhaus project. Share & enjoy :)
Diffstat (limited to 'src/plugins/qmlprojectmanager/qmlprojectmanager.cpp')
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectmanager.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/plugins/qmlprojectmanager/qmlprojectmanager.cpp b/src/plugins/qmlprojectmanager/qmlprojectmanager.cpp
index 892144522c..4baf42e83b 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectmanager.cpp
+++ b/src/plugins/qmlprojectmanager/qmlprojectmanager.cpp
@@ -33,7 +33,10 @@
#include <coreplugin/icore.h>
#include <coreplugin/uniqueidmanager.h>
+#include <coreplugin/messagemanager.h>
#include <projectexplorer/projectexplorerconstants.h>
+#include <projectexplorer/projectexplorer.h>
+#include <projectexplorer/session.h>
#include <QtDebug>
@@ -60,10 +63,23 @@ QString Manager::mimeType() const
ProjectExplorer::Project *Manager::openProject(const QString &fileName)
{
+ Core::MessageManager *messageManager = Core::ICore::instance()->messageManager();
+ messageManager->displayStatusBarMessage(tr("Loading project %1 ...").arg(fileName), 50000);
+
QFileInfo fileInfo(fileName);
+ ProjectExplorer::ProjectExplorerPlugin *projectExplorer = ProjectExplorer::ProjectExplorerPlugin::instance();
+
+ foreach (ProjectExplorer::Project *pi, projectExplorer->session()->projects()) {
+ if (fileName == pi->file()->fileName()) {
+ messageManager->printToOutputPane(tr("Failed opening project '%1': Project already open").arg(QDir::toNativeSeparators(fileName)));
+ messageManager->displayStatusBarMessage(tr("Failed opening project"), 5000);
+ return 0;
+ }
+ }
if (fileInfo.isFile()) {
QmlProject *project = new QmlProject(this, fileName);
+ messageManager->displayStatusBarMessage(tr("Done opening project"), 5000);
return project;
}