forked from qt-creator/qt-creator
Utils/all: Move mime constants into a central place
They are reasonably standardized, and generally usable cross-plugin, so this can help to avoid a few cross-plugin compiletime dependencies. Change-Id: Icb2b010c3e12dee69df54ab16f6f8e90d9cffba6 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -2,7 +2,6 @@
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
|
||||
|
||||
#include "qmljsmodelmanager.h"
|
||||
#include "qmljstoolsconstants.h"
|
||||
#include "qmljssemanticinfo.h"
|
||||
#include "qmljsbundleprovider.h"
|
||||
|
||||
@@ -28,24 +27,22 @@
|
||||
#include <qmljs/qmljsbind.h>
|
||||
#include <qmljs/qmljsfindexportedcpptypes.h>
|
||||
#include <qmljs/qmljsplugindumper.h>
|
||||
|
||||
#include <qtsupport/qtkitaspect.h>
|
||||
#include <qtsupport/qtsupportconstants.h>
|
||||
|
||||
#include <texteditor/textdocument.h>
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/hostosinfo.h>
|
||||
#include <utils/mimeconstants.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QDir>
|
||||
#include <QFile>
|
||||
#include <QFileInfo>
|
||||
#include <QLibraryInfo>
|
||||
#include <QTextDocument>
|
||||
#include <QTextStream>
|
||||
#include <QTimer>
|
||||
#include <QSet>
|
||||
#include <QString>
|
||||
#include <qglobal.h>
|
||||
|
||||
using namespace Utils;
|
||||
using namespace Core;
|
||||
@@ -117,10 +114,12 @@ ModelManagerInterface::ProjectInfo ModelManager::defaultProjectInfoForProject(
|
||||
projectInfo.qmlDumpEnvironment = Utils::Environment::systemEnvironment();
|
||||
Target *activeTarget = nullptr;
|
||||
if (project) {
|
||||
const QSet<QString> qmlTypeNames = { Constants::QML_MIMETYPE ,Constants::QBS_MIMETYPE,
|
||||
Constants::QMLPROJECT_MIMETYPE,
|
||||
Constants::QMLTYPES_MIMETYPE,
|
||||
Constants::QMLUI_MIMETYPE };
|
||||
using namespace Utils::Constants;
|
||||
const QSet<QString> qmlTypeNames = { QML_MIMETYPE ,
|
||||
QBS_MIMETYPE,
|
||||
QMLPROJECT_MIMETYPE,
|
||||
QMLTYPES_MIMETYPE,
|
||||
QMLUI_MIMETYPE };
|
||||
projectInfo.sourceFiles = project->files([&qmlTypeNames](const Node *n) {
|
||||
if (!Project::SourceFiles(n))
|
||||
return false;
|
||||
@@ -224,27 +223,28 @@ QHash<QString,Dialect> ModelManager::initLanguageForSuffix() const
|
||||
QHash<QString,Dialect> res = ModelManagerInterface::languageForSuffix();
|
||||
|
||||
if (ICore::instance()) {
|
||||
MimeType jsSourceTy = Utils::mimeTypeForName(Constants::JS_MIMETYPE);
|
||||
using namespace Utils::Constants;;
|
||||
MimeType jsSourceTy = Utils::mimeTypeForName(JS_MIMETYPE);
|
||||
const QStringList jsSuffixes = jsSourceTy.suffixes();
|
||||
for (const QString &suffix : jsSuffixes)
|
||||
res[suffix] = Dialect::JavaScript;
|
||||
MimeType qmlSourceTy = Utils::mimeTypeForName(Constants::QML_MIMETYPE);
|
||||
MimeType qmlSourceTy = Utils::mimeTypeForName(QML_MIMETYPE);
|
||||
const QStringList qmlSuffixes = qmlSourceTy.suffixes();
|
||||
for (const QString &suffix : qmlSuffixes)
|
||||
res[suffix] = Dialect::Qml;
|
||||
MimeType qbsSourceTy = Utils::mimeTypeForName(Constants::QBS_MIMETYPE);
|
||||
MimeType qbsSourceTy = Utils::mimeTypeForName(QBS_MIMETYPE);
|
||||
const QStringList qbsSuffixes = qbsSourceTy.suffixes();
|
||||
for (const QString &suffix : qbsSuffixes)
|
||||
res[suffix] = Dialect::QmlQbs;
|
||||
MimeType qmlProjectSourceTy = Utils::mimeTypeForName(Constants::QMLPROJECT_MIMETYPE);
|
||||
MimeType qmlProjectSourceTy = Utils::mimeTypeForName(QMLPROJECT_MIMETYPE);
|
||||
const QStringList qmlProjSuffixes = qmlProjectSourceTy.suffixes();
|
||||
for (const QString &suffix : qmlProjSuffixes)
|
||||
res[suffix] = Dialect::QmlProject;
|
||||
MimeType qmlUiSourceTy = Utils::mimeTypeForName(Constants::QMLUI_MIMETYPE);
|
||||
MimeType qmlUiSourceTy = Utils::mimeTypeForName(QMLUI_MIMETYPE);
|
||||
const QStringList qmlUiSuffixes = qmlUiSourceTy.suffixes();
|
||||
for (const QString &suffix : qmlUiSuffixes)
|
||||
res[suffix] = Dialect::QmlQtQuick2Ui;
|
||||
MimeType jsonSourceTy = Utils::mimeTypeForName(Constants::JSON_MIMETYPE);
|
||||
MimeType jsonSourceTy = Utils::mimeTypeForName(JSON_MIMETYPE);
|
||||
const QStringList jsonSuffixes = jsonSourceTy.suffixes();
|
||||
for (const QString &suffix : jsonSuffixes)
|
||||
res[suffix] = Dialect::Json;
|
||||
|
||||
@@ -8,14 +8,6 @@
|
||||
namespace QmlJSTools {
|
||||
namespace Constants {
|
||||
|
||||
const char QML_MIMETYPE[] = "text/x-qml"; // separate def also in projectexplorerconstants.h
|
||||
const char QBS_MIMETYPE[] = "application/x-qt.qbs+qml";
|
||||
const char QMLPROJECT_MIMETYPE[] = "application/x-qmlproject";
|
||||
const char QMLTYPES_MIMETYPE[] = "application/x-qt.meta-info+qml";
|
||||
const char QMLUI_MIMETYPE[] = "application/x-qt.ui+qml";
|
||||
const char JS_MIMETYPE[] = "application/javascript";
|
||||
const char JSON_MIMETYPE[] = "application/json";
|
||||
|
||||
const char QML_JS_CODE_STYLE_SETTINGS_ID[] = "A.Code Style";
|
||||
const char QML_JS_CODE_STYLE_SETTINGS_NAME[] = QT_TRANSLATE_NOOP("QtC::QmlJSTools", "Code Style");
|
||||
|
||||
|
||||
@@ -13,6 +13,8 @@
|
||||
#include <texteditor/tabsettings.h>
|
||||
#include <texteditor/codestylepool.h>
|
||||
|
||||
#include <utils/mimeconstants.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
||||
using namespace TextEditor;
|
||||
@@ -69,13 +71,14 @@ QmlJSToolsSettings::QmlJSToolsSettings()
|
||||
m_globalCodeStyle->fromSettings(QmlJSTools::Constants::QML_JS_SETTINGS_ID);
|
||||
|
||||
// mimetypes to be handled
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(Constants::QML_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(Constants::QMLUI_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(Constants::QBS_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(Constants::QMLPROJECT_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(Constants::QMLTYPES_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(Constants::JS_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(Constants::JSON_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
using namespace Utils::Constants;
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(QML_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(QMLUI_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(QBS_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(QMLPROJECT_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(QMLTYPES_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(JS_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
TextEditorSettings::registerMimeTypeForLanguageId(JSON_MIMETYPE, Constants::QML_JS_SETTINGS_ID);
|
||||
}
|
||||
|
||||
QmlJSToolsSettings::~QmlJSToolsSettings()
|
||||
|
||||
Reference in New Issue
Block a user