summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKai Koehne <kai.koehne@nokia.com>2010-02-17 13:37:00 +0100
committerKai Koehne <kai.koehne@nokia.com>2010-02-17 16:32:41 +0100
commitfb8357136efff51c9874c1a17a3889a650a3dada (patch)
tree738729d706cad2ab1ace8a1aa240981937b0df9b /src
parent20ec30223c95c49b7512de13add5edb77453352c (diff)
downloadqt-creator-fb8357136efff51c9874c1a17a3889a650a3dada.tar.gz
Remove support for old .qmlproject file format
We used to fail back to the old format if the .qmlproject file was invalid. Anyhow, this lead to weird effects ... better disable it explicitly. That no warning is shown right now when loading an invalid qmlproject file is a bug in coreplugin.
Diffstat (limited to 'src')
-rw-r--r--src/plugins/qmlprojectmanager/qmlproject.cpp39
-rw-r--r--src/plugins/qmlprojectmanager/qmlproject.h2
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectmanager.cpp8
3 files changed, 16 insertions, 33 deletions
diff --git a/src/plugins/qmlprojectmanager/qmlproject.cpp b/src/plugins/qmlprojectmanager/qmlproject.cpp
index c738c6c2ce..975c5a623c 100644
--- a/src/plugins/qmlprojectmanager/qmlproject.cpp
+++ b/src/plugins/qmlprojectmanager/qmlproject.cpp
@@ -31,6 +31,9 @@
#include "qmlprojectfile.h"
#include "qmlprojectmanagerconstants.h"
#include "fileformat/qmlprojectitem.h"
+
+#include <coreplugin/icore.h>
+#include <coreplugin/messagemanager.h>
#include <extensionsystem/pluginmanager.h>
#include <projectexplorer/filewatcher.h>
#include <qmljseditor/qmljsmodelmanagerinterface.h>
@@ -77,30 +80,6 @@ QDir QmlProject::projectDir() const
QString QmlProject::filesFileName() const
{ return m_fileName; }
-static QStringList readLines(const QString &absoluteFileName)
-{
- QStringList lines;
-
- QFile file(absoluteFileName);
- if (file.open(QFile::ReadOnly)) {
- QTextStream stream(&file);
-
- forever {
- QString line = stream.readLine();
- if (line.isNull())
- break;
-
- line = line.trimmed();
- if (line.isEmpty())
- continue;
-
- lines.append(line);
- }
- }
-
- return lines;
-}
-
void QmlProject::parseProject(RefreshOptions options)
{
if (options & Files) {
@@ -116,10 +95,9 @@ void QmlProject::parseProject(RefreshOptions options)
m_projectItem = qobject_cast<QmlProjectItem*>(component->create());
connect(m_projectItem.data(), SIGNAL(qmlFilesChanged()), this, SLOT(refreshFiles()));
} else {
- qWarning() << m_fileName << "is not valid qml file, falling back to old format ...";
- m_files = convertToAbsoluteFiles(readLines(filesFileName()));
- m_files.removeDuplicates();
- m_modelManager->updateSourceFiles(m_files);
+ Core::MessageManager *messageManager = Core::ICore::instance()->messageManager();
+ messageManager->printToOutputPane(tr("Error while loading project file!"));
+ messageManager->printToOutputPane(component->errorsString(), true);
}
}
}
@@ -173,6 +151,11 @@ QStringList QmlProject::files() const
return files;
}
+bool QmlProject::validProjectFile() const
+{
+ return !m_projectItem.isNull();
+}
+
QStringList QmlProject::libraryPaths() const
{
QStringList libraryPaths;
diff --git a/src/plugins/qmlprojectmanager/qmlproject.h b/src/plugins/qmlprojectmanager/qmlproject.h
index 994d75acb4..3e209e53fa 100644
--- a/src/plugins/qmlprojectmanager/qmlproject.h
+++ b/src/plugins/qmlprojectmanager/qmlproject.h
@@ -85,6 +85,8 @@ public:
Internal::QmlProjectNode *rootProjectNode() const;
QStringList files(FilesMode fileMode) const;
+ bool validProjectFile() const;
+
enum RefreshOption {
ProjectFile = 0x01,
Files = 0x02,
diff --git a/src/plugins/qmlprojectmanager/qmlprojectmanager.cpp b/src/plugins/qmlprojectmanager/qmlprojectmanager.cpp
index 3d352876b9..2fc768f195 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectmanager.cpp
+++ b/src/plugins/qmlprojectmanager/qmlprojectmanager.cpp
@@ -73,16 +73,14 @@ ProjectExplorer::Project *Manager::openProject(const QString &fileName)
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);
+ messageManager->printToOutputPanePopup(tr("Failed opening project '%1': Project already open")
+ .arg(QDir::toNativeSeparators(fileName)));
return 0;
}
}
if (fileInfo.isFile()) {
- QmlProject *project = new QmlProject(this, fileName);
- messageManager->displayStatusBarMessage(tr("Done opening project"), 5000);
- return project;
+ return new QmlProject(this, fileName);
}
return 0;