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:
@@ -57,6 +57,7 @@
|
||||
#include <utils/infolabel.h>
|
||||
#include <utils/itemviews.h>
|
||||
#include <utils/layoutbuilder.h>
|
||||
#include <utils/mimeconstants.h>
|
||||
#include <utils/progressindicator.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/stringutils.h>
|
||||
@@ -1875,7 +1876,7 @@ CMakeBuildConfigurationFactory::CMakeBuildConfigurationFactory()
|
||||
registerBuildConfiguration<CMakeBuildConfiguration>(Constants::CMAKE_BUILDCONFIGURATION_ID);
|
||||
|
||||
setSupportedProjectType(CMakeProjectManager::Constants::CMAKE_PROJECT_ID);
|
||||
setSupportedProjectMimeTypeName(Constants::CMAKE_PROJECT_MIMETYPE);
|
||||
setSupportedProjectMimeTypeName(Utils::Constants::CMAKE_PROJECT_MIMETYPE);
|
||||
|
||||
setBuildGenerator([](const Kit *k, const FilePath &projectPath, bool forSetup) {
|
||||
QList<BuildInfo> result;
|
||||
|
||||
@@ -23,8 +23,6 @@
|
||||
#include <coreplugin/messagemanager.h>
|
||||
#include <coreplugin/progressmanager/progressmanager.h>
|
||||
|
||||
#include <cppeditor/cppeditorconstants.h>
|
||||
|
||||
#include <projectexplorer/extracompiler.h>
|
||||
#include <projectexplorer/kitaspects.h>
|
||||
#include <projectexplorer/projectexplorer.h>
|
||||
@@ -38,15 +36,13 @@
|
||||
|
||||
#include <qmljs/qmljsmodelmanagerinterface.h>
|
||||
|
||||
#include <qmljstools/qmljstoolsconstants.h>
|
||||
|
||||
#include <qtsupport/qtcppkitinfo.h>
|
||||
#include <qtsupport/qtsupportconstants.h>
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/checkablemessagebox.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/macroexpander.h>
|
||||
#include <utils/mimeconstants.h>
|
||||
#include <utils/process.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
||||
@@ -100,8 +96,8 @@ CMakeBuildSystem::CMakeBuildSystem(CMakeBuildConfiguration *bc)
|
||||
if (type == FileType::Unknown) {
|
||||
if (mimeType.isValid()) {
|
||||
const QString mt = mimeType.name();
|
||||
if (mt == CMakeProjectManager::Constants::CMAKE_PROJECT_MIMETYPE
|
||||
|| mt == CMakeProjectManager::Constants::CMAKE_MIMETYPE)
|
||||
if (mt == Utils::Constants::CMAKE_PROJECT_MIMETYPE
|
||||
|| mt == Utils::Constants::CMAKE_MIMETYPE)
|
||||
type = FileType::Project;
|
||||
}
|
||||
}
|
||||
@@ -239,17 +235,18 @@ static QString newFilesForFunction(const std::string &cmakeFunction,
|
||||
FilePaths qmlFiles;
|
||||
|
||||
for (const auto &file : filePaths) {
|
||||
using namespace Utils::Constants;
|
||||
const auto mimeType = Utils::mimeTypeForFile(file);
|
||||
if (mimeType.matchesName(CppEditor::Constants::CPP_SOURCE_MIMETYPE)
|
||||
|| mimeType.matchesName(CppEditor::Constants::CPP_HEADER_MIMETYPE)
|
||||
|| mimeType.matchesName(CppEditor::Constants::OBJECTIVE_C_SOURCE_MIMETYPE)
|
||||
|| mimeType.matchesName(CppEditor::Constants::OBJECTIVE_CPP_SOURCE_MIMETYPE)) {
|
||||
if (mimeType.matchesName(CPP_SOURCE_MIMETYPE)
|
||||
|| mimeType.matchesName(CPP_HEADER_MIMETYPE)
|
||||
|| mimeType.matchesName(OBJECTIVE_C_SOURCE_MIMETYPE)
|
||||
|| mimeType.matchesName(OBJECTIVE_CPP_SOURCE_MIMETYPE)) {
|
||||
sourceFiles << file;
|
||||
} else if (mimeType.matchesName(QmlJSTools::Constants::QML_MIMETYPE)
|
||||
|| mimeType.matchesName(QmlJSTools::Constants::QMLUI_MIMETYPE)
|
||||
|| mimeType.matchesName(QmlJSTools::Constants::QMLPROJECT_MIMETYPE)
|
||||
|| mimeType.matchesName(QmlJSTools::Constants::JS_MIMETYPE)
|
||||
|| mimeType.matchesName(QmlJSTools::Constants::JSON_MIMETYPE)) {
|
||||
} else if (mimeType.matchesName(QML_MIMETYPE)
|
||||
|| mimeType.matchesName(QMLUI_MIMETYPE)
|
||||
|| mimeType.matchesName(QMLPROJECT_MIMETYPE)
|
||||
|| mimeType.matchesName(JS_MIMETYPE)
|
||||
|| mimeType.matchesName(JSON_MIMETYPE)) {
|
||||
qmlFiles << file;
|
||||
} else {
|
||||
resourceFiles << file;
|
||||
|
||||
@@ -15,15 +15,19 @@
|
||||
#include <coreplugin/actionmanager/actioncontainer.h>
|
||||
#include <coreplugin/actionmanager/actionmanager.h>
|
||||
#include <coreplugin/coreplugintr.h>
|
||||
|
||||
#include <projectexplorer/buildconfiguration.h>
|
||||
#include <projectexplorer/buildsystem.h>
|
||||
#include <projectexplorer/project.h>
|
||||
#include <projectexplorer/projectmanager.h>
|
||||
#include <projectexplorer/projecttree.h>
|
||||
#include <projectexplorer/target.h>
|
||||
|
||||
#include <texteditor/basehoverhandler.h>
|
||||
#include <texteditor/textdocument.h>
|
||||
#include <texteditor/texteditoractionhandler.h>
|
||||
|
||||
#include <utils/mimeconstants.h>
|
||||
#include <utils/textutils.h>
|
||||
#include <utils/tooltip/tooltip.h>
|
||||
|
||||
@@ -411,7 +415,7 @@ static TextDocument *createCMakeDocument()
|
||||
{
|
||||
auto doc = new TextDocument;
|
||||
doc->setId(Constants::CMAKE_EDITOR_ID);
|
||||
doc->setMimeType(QLatin1String(Constants::CMAKE_MIMETYPE));
|
||||
doc->setMimeType(Utils::Constants::CMAKE_MIMETYPE);
|
||||
return doc;
|
||||
}
|
||||
|
||||
@@ -505,8 +509,8 @@ CMakeEditorFactory::CMakeEditorFactory()
|
||||
{
|
||||
setId(Constants::CMAKE_EDITOR_ID);
|
||||
setDisplayName(::Core::Tr::tr("CMake Editor"));
|
||||
addMimeType(Constants::CMAKE_MIMETYPE);
|
||||
addMimeType(Constants::CMAKE_PROJECT_MIMETYPE);
|
||||
addMimeType(Utils::Constants::CMAKE_MIMETYPE);
|
||||
addMimeType(Utils::Constants::CMAKE_PROJECT_MIMETYPE);
|
||||
|
||||
setEditorCreator([] { return new CMakeEditor; });
|
||||
setEditorWidgetCreator([] { return new CMakeEditorWidget; });
|
||||
|
||||
@@ -17,8 +17,11 @@
|
||||
#include <projectexplorer/projectnodes.h>
|
||||
#include <projectexplorer/target.h>
|
||||
#include <projectexplorer/taskhub.h>
|
||||
|
||||
#include <qtsupport/qtkitaspect.h>
|
||||
|
||||
#include <utils/mimeconstants.h>
|
||||
|
||||
using namespace ProjectExplorer;
|
||||
using namespace Utils;
|
||||
using namespace CMakeProjectManager::Internal;
|
||||
@@ -29,7 +32,7 @@ namespace CMakeProjectManager {
|
||||
\class CMakeProject
|
||||
*/
|
||||
CMakeProject::CMakeProject(const FilePath &fileName)
|
||||
: Project(Constants::CMAKE_MIMETYPE, fileName)
|
||||
: Project(Utils::Constants::CMAKE_MIMETYPE, fileName)
|
||||
{
|
||||
setId(CMakeProjectManager::Constants::CMAKE_PROJECT_ID);
|
||||
setProjectLanguages(Core::Context(ProjectExplorer::Constants::CXX_LANGUAGE_ID));
|
||||
|
||||
@@ -6,8 +6,6 @@
|
||||
namespace CMakeProjectManager {
|
||||
namespace Constants {
|
||||
|
||||
const char CMAKE_MIMETYPE[] = "text/x-cmake";
|
||||
const char CMAKE_PROJECT_MIMETYPE[] = "text/x-cmake-project";
|
||||
const char CMAKE_EDITOR_ID[] = "CMakeProject.CMakeEditor";
|
||||
const char RUN_CMAKE[] = "CMakeProject.RunCMake";
|
||||
const char RUN_CMAKE_PROFILER[] = "CMakeProject.RunCMakeProfiler";
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
#include <texteditor/formattexteditor.h>
|
||||
#include <texteditor/snippets/snippetprovider.h>
|
||||
|
||||
#include <utils/mimeconstants.h>
|
||||
#include <utils/fsengine/fileiconprovider.h>
|
||||
#include <utils/parameteraction.h>
|
||||
|
||||
@@ -82,7 +83,7 @@ void CMakeProjectPlugin::initialize()
|
||||
|
||||
TextEditor::SnippetProvider::registerGroup(Constants::CMAKE_SNIPPETS_GROUP_ID,
|
||||
Tr::tr("CMake", "SnippetProvider"));
|
||||
ProjectManager::registerProjectType<CMakeProject>(Constants::CMAKE_PROJECT_MIMETYPE);
|
||||
ProjectManager::registerProjectType<CMakeProject>(Utils::Constants::CMAKE_PROJECT_MIMETYPE);
|
||||
|
||||
//register actions
|
||||
Command *command = ActionManager::registerAction(&d->buildTargetContextAction,
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/icon.h>
|
||||
#include <utils/mimeconstants.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/process.h>
|
||||
#include <utils/qtcassert.h>
|
||||
@@ -68,8 +69,8 @@ static CMakeFileResult extractCMakeFilesData(const QFuture<void> &cancelFuture,
|
||||
absolute.path = sfn;
|
||||
|
||||
const auto mimeType = Utils::mimeTypeForFile(info.path);
|
||||
if (mimeType.matchesName(Constants::CMAKE_MIMETYPE)
|
||||
|| mimeType.matchesName(Constants::CMAKE_PROJECT_MIMETYPE)) {
|
||||
if (mimeType.matchesName(Utils::Constants::CMAKE_MIMETYPE)
|
||||
|| mimeType.matchesName(Utils::Constants::CMAKE_PROJECT_MIMETYPE)) {
|
||||
expected_str<QByteArray> fileContent = sfn.fileContents();
|
||||
std::string errorString;
|
||||
if (fileContent) {
|
||||
@@ -445,9 +446,9 @@ static RawProjectParts generateRawProjectParts(const QFuture<void> &cancelFuture
|
||||
|
||||
const QString headerMimeType = [&]() -> QString {
|
||||
if (ci.language == "C") {
|
||||
return CppEditor::Constants::C_HEADER_MIMETYPE;
|
||||
return Utils::Constants::C_HEADER_MIMETYPE;
|
||||
} else if (ci.language == "CXX") {
|
||||
return CppEditor::Constants::CPP_HEADER_MIMETYPE;
|
||||
return Utils::Constants::CPP_HEADER_MIMETYPE;
|
||||
}
|
||||
return {};
|
||||
}();
|
||||
|
||||
Reference in New Issue
Block a user