summaryrefslogtreecommitdiff
path: root/src/plugins/qmljseditor/qmljsmodelmanager.h
diff options
context:
space:
mode:
authorChristian Kamm <christian.d.kamm@nokia.com>2010-11-11 10:05:05 +0100
committerChristian Kamm <christian.d.kamm@nokia.com>2010-11-11 11:49:10 +0100
commitf36675446204c58a0f019a95bf4d60a3c9f2ced7 (patch)
tree24dc9d4f3e9a7fbbbee2100b3b81469738a2ed01 /src/plugins/qmljseditor/qmljsmodelmanager.h
parenta4cbd970e52bf03bcd45c1a3da84bd3a1c2a5065 (diff)
downloadqt-creator-f36675446204c58a0f019a95bf4d60a3c9f2ced7.tar.gz
Move shared code to a new QmlJSTools plugin.
Reviewed-by: Thomas Hartmann
Diffstat (limited to 'src/plugins/qmljseditor/qmljsmodelmanager.h')
-rw-r--r--src/plugins/qmljseditor/qmljsmodelmanager.h118
1 files changed, 0 insertions, 118 deletions
diff --git a/src/plugins/qmljseditor/qmljsmodelmanager.h b/src/plugins/qmljseditor/qmljsmodelmanager.h
deleted file mode 100644
index 842ba4a4fd..0000000000
--- a/src/plugins/qmljseditor/qmljsmodelmanager.h
+++ /dev/null
@@ -1,118 +0,0 @@
-/**************************************************************************
-**
-** This file is part of Qt Creator
-**
-** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-**
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** Commercial Usage
-**
-** Licensees holding valid Qt Commercial licenses may use this file in
-** accordance with the Qt Commercial License Agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Nokia.
-**
-** GNU Lesser General Public License Usage
-**
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** If you are unsure which license is appropriate for your use, please
-** contact the sales department at http://qt.nokia.com/contact.
-**
-**************************************************************************/
-
-#ifndef QMLJSMODELMANAGER_H
-#define QMLJSMODELMANAGER_H
-
-#include <qmljs/qmljsmodelmanagerinterface.h>
-#include <qmljs/qmljsdocument.h>
-
-#include <QFuture>
-#include <QFutureSynchronizer>
-#include <QMutex>
-#include <QProcess>
-
-namespace Core {
-class ICore;
-class MimeType;
-}
-
-namespace QmlJSEditor {
-namespace Internal {
-
-class ModelManager: public QmlJS::ModelManagerInterface
-{
- Q_OBJECT
-
-public:
- ModelManager(QObject *parent = 0);
-
- virtual WorkingCopy workingCopy() const;
- virtual QmlJS::Snapshot snapshot() const;
-
- virtual void updateSourceFiles(const QStringList &files,
- bool emitDocumentOnDiskChanged);
- virtual void fileChangedOnDisk(const QString &path);
- virtual void removeFiles(const QStringList &files);
-
- virtual QList<ProjectInfo> projectInfos() const;
- virtual ProjectInfo projectInfo(ProjectExplorer::Project *project) const;
- virtual void updateProjectInfo(const ProjectInfo &pinfo);
-
- void updateDocument(QmlJS::Document::Ptr doc);
- void updateLibraryInfo(const QString &path, const QmlJS::LibraryInfo &info);
- void emitDocumentChangedOnDisk(QmlJS::Document::Ptr doc);
-
- virtual QStringList importPaths() const;
-
- virtual void loadPluginTypes(const QString &libraryPath, const QString &importPath, const QString &importUri);
-
-Q_SIGNALS:
- void projectPathChanged(const QString &projectPath);
-
-private Q_SLOTS:
- void onLoadPluginTypes(const QString &libraryPath, const QString &importPath, const QString &importUri);
- void qmlPluginTypeDumpDone(int exitCode);
- void qmlPluginTypeDumpError(QProcess::ProcessError error);
-
-protected:
- QFuture<void> refreshSourceFiles(const QStringList &sourceFiles,
- bool emitDocumentOnDiskChanged);
-
- static void parse(QFutureInterface<void> &future,
- WorkingCopy workingCopy,
- QStringList files,
- ModelManager *modelManager,
- bool emitDocChangedOnDisk);
-
- void loadQmlTypeDescriptions();
- void loadQmlTypeDescriptions(const QString &path);
-
- void updateImportPaths();
-
-private:
- static bool matchesMimeType(const Core::MimeType &fileMimeType, const Core::MimeType &knownMimeType);
-
- mutable QMutex m_mutex;
- Core::ICore *m_core;
- QmlJS::Snapshot _snapshot;
- QStringList m_allImportPaths;
- QStringList m_defaultImportPaths;
- QHash<QProcess *, QString> m_runningQmldumps;
-
- QFutureSynchronizer<void> m_synchronizer;
-
- // project integration
- QMap<ProjectExplorer::Project *, ProjectInfo> m_projects;
-};
-
-} // namespace Internal
-} // namespace QmlJSEditor
-
-#endif // QMLJSMODELMANAGER_H