forked from qt-creator/qt-creator
Mimetypes: Make implementation switchable between new and old
- configure with QTC_USE_NEW_MIMEDATABASE to switch to the new one in utils/mimetypes2/ - added utils/mimeutils.h header for the Qt Creator specific static wrappers, that also includes the "public" headers for MimeType et al from the new or old implementation, depending on configuration - change all utils/mimetypes/ includes to utils/mimeutils.h - move the implementation for the wrappers to utils/mimetypes(2)/mimeutils.cpp - also move the MimeDatabase declaration in the "old" implementation back to utils/mimetypes/mimedatabase.h Change-Id: Ie8de229c035d6cd9a5e4739dc0fa78d9c17228e3 Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
@@ -53,7 +53,7 @@
|
||||
#include <utils/executeondestruction.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/hostosinfo.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/qtcprocess.h>
|
||||
#include <utils/qtcsettings.h>
|
||||
|
@@ -27,8 +27,6 @@
|
||||
|
||||
#include "jsonrpcmessages.h"
|
||||
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
|
||||
#include <QBuffer>
|
||||
#include <QTextCodec>
|
||||
|
||||
|
@@ -27,8 +27,6 @@
|
||||
|
||||
#include "languageserverprotocol_global.h"
|
||||
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
|
||||
#include <QByteArray>
|
||||
#include <QCoreApplication>
|
||||
#include <QLoggingCategory>
|
||||
|
@@ -28,7 +28,6 @@
|
||||
#include "basemessage.h"
|
||||
#include "lsputils.h"
|
||||
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/variant.h>
|
||||
|
||||
|
@@ -28,7 +28,6 @@
|
||||
#include "lsputils.h"
|
||||
#include "initializemessages.h"
|
||||
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
||||
#include <QCoreApplication>
|
||||
|
@@ -26,7 +26,6 @@
|
||||
#include "lsptypes.h"
|
||||
#include "lsputils.h"
|
||||
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/textutils.h>
|
||||
|
||||
#include <QFile>
|
||||
|
@@ -31,6 +31,7 @@
|
||||
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/link.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/optional.h>
|
||||
#include <utils/textutils.h>
|
||||
#include <utils/variant.h>
|
||||
|
@@ -25,8 +25,6 @@
|
||||
|
||||
#include "lsputils.h"
|
||||
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
|
||||
#include <QHash>
|
||||
#include <QLoggingCategory>
|
||||
#include <QVector>
|
||||
|
@@ -28,7 +28,6 @@
|
||||
#include "languageserverprotocol_global.h"
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
#include <utils/optional.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/variant.h>
|
||||
|
@@ -86,13 +86,7 @@ add_qtc_library(Utils
|
||||
listutils.h
|
||||
macroexpander.cpp macroexpander.h
|
||||
mapreduce.h
|
||||
mimetypes/mimedatabase.cpp mimetypes/mimedatabase.h mimetypes/mimedatabase_p.h
|
||||
mimetypes/mimeglobpattern.cpp mimetypes/mimeglobpattern_p.h
|
||||
mimetypes/mimemagicrule.cpp mimetypes/mimemagicrule_p.h
|
||||
mimetypes/mimemagicrulematcher.cpp mimetypes/mimemagicrulematcher_p.h
|
||||
mimetypes/mimeprovider.cpp mimetypes/mimeprovider_p.h
|
||||
mimetypes/mimetype.cpp mimetypes/mimetype.h mimetypes/mimetype_p.h
|
||||
mimetypes/mimetypeparser.cpp mimetypes/mimetypeparser_p.h
|
||||
mimeutils.h
|
||||
multitextcursor.cpp multitextcursor.h
|
||||
namevaluedictionary.cpp namevaluedictionary.h
|
||||
namevaluedictionary.cpp namevaluedictionary.h
|
||||
@@ -192,6 +186,37 @@ add_qtc_library(Utils
|
||||
wizardpage.cpp wizardpage.h
|
||||
)
|
||||
|
||||
option(QTC_USE_NEW_MIMEDATABASE "Use updated MIME database implementation" NO)
|
||||
|
||||
if(QTC_USE_NEW_MIMEDATABASE)
|
||||
set(mime_prefix "mimetypes2")
|
||||
else()
|
||||
set(mime_prefix "mimetypes")
|
||||
endif()
|
||||
|
||||
extend_qtc_library(Utils
|
||||
SOURCES_PREFIX ${mime_prefix}
|
||||
PUBLIC_INCLUDES ${mime_prefix}
|
||||
SOURCES
|
||||
mimedatabase.cpp
|
||||
mimedatabase.h
|
||||
mimedatabase_p.h
|
||||
mimeglobpattern.cpp
|
||||
mimeglobpattern_p.h
|
||||
mimemagicrule.cpp
|
||||
mimemagicrule_p.h
|
||||
mimemagicrulematcher.cpp
|
||||
mimemagicrulematcher_p.h
|
||||
mimeprovider.cpp
|
||||
mimeprovider_p.h
|
||||
mimetype.cpp
|
||||
mimetype.h
|
||||
mimetype_p.h
|
||||
mimetypeparser.cpp
|
||||
mimetypeparser_p.h
|
||||
mimeutils.cpp
|
||||
)
|
||||
|
||||
extend_qtc_library(Utils CONDITION WIN32
|
||||
SOURCES
|
||||
touchbar/touchbar.cpp
|
||||
|
@@ -28,7 +28,7 @@
|
||||
#include "algorithm.h"
|
||||
#include "checkablemessagebox.h"
|
||||
#include "environment.h"
|
||||
#include "mimetypes/mimedatabase.h"
|
||||
#include "mimeutils.h"
|
||||
#include "qtcassert.h"
|
||||
#include "qtcprocess.h"
|
||||
|
||||
|
@@ -328,19 +328,6 @@ MimeDatabase::~MimeDatabase()
|
||||
d = nullptr;
|
||||
}
|
||||
|
||||
void Utils::addMimeTypes(const QString &fileName, const QByteArray &data)
|
||||
{
|
||||
auto d = MimeDatabasePrivate::instance();
|
||||
QMutexLocker locker(&d->mutex);
|
||||
|
||||
if (d->m_startupPhase >= MimeDatabase::PluginsDelayedInitializing)
|
||||
qWarning("Adding items from %s to MimeDatabase after initialization time",
|
||||
qPrintable(fileName));
|
||||
|
||||
auto xmlProvider = static_cast<MimeXMLProvider *>(d->provider());
|
||||
xmlProvider->addData(fileName, data);
|
||||
}
|
||||
|
||||
/*!
|
||||
\fn MimeType MimeDatabase::mimeTypeForName(const QString &nameOrAlias) const;
|
||||
Returns a MIME type for \a nameOrAlias or an invalid one if none found.
|
||||
@@ -633,77 +620,3 @@ QList<MimeType> MimeDatabase::allMimeTypes() const
|
||||
|
||||
\value MatchContent The file content is used to look for a match
|
||||
*/
|
||||
|
||||
QMap<int, QList<MimeMagicRule> > Utils::magicRulesForMimeType(const MimeType &mimeType)
|
||||
{
|
||||
auto d = MimeDatabasePrivate::instance();
|
||||
QMutexLocker locker(&d->mutex);
|
||||
return d->provider()->magicRulesForMimeType(mimeType);
|
||||
}
|
||||
|
||||
void Utils::setGlobPatternsForMimeType(const MimeType &mimeType, const QStringList &patterns)
|
||||
{
|
||||
auto d = MimeDatabasePrivate::instance();
|
||||
QMutexLocker locker(&d->mutex);
|
||||
d->provider()->setGlobPatternsForMimeType(mimeType, patterns);
|
||||
}
|
||||
|
||||
void Utils::setMagicRulesForMimeType(const MimeType &mimeType, const QMap<int, QList<MimeMagicRule> > &rules)
|
||||
{
|
||||
auto d = MimeDatabasePrivate::instance();
|
||||
QMutexLocker locker(&d->mutex);
|
||||
d->provider()->setMagicRulesForMimeType(mimeType, rules);
|
||||
}
|
||||
|
||||
void Utils::setMimeStartupPhase(MimeStartupPhase phase)
|
||||
{
|
||||
auto d = MimeDatabasePrivate::instance();
|
||||
QMutexLocker locker(&d->mutex);
|
||||
if (int(phase) != d->m_startupPhase + 1)
|
||||
qWarning("Unexpected jump in MimedDatabase lifetime from %d to %d", d->m_startupPhase, int(phase));
|
||||
d->m_startupPhase = int(phase);
|
||||
}
|
||||
|
||||
MimeType Utils::mimeTypeForName(const QString &nameOrAlias)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForName(nameOrAlias);
|
||||
}
|
||||
|
||||
MimeType Utils::mimeTypeForFile(const QString &fileName, MimeMatchMode mode)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForFile(fileName, MimeDatabase::MatchMode(mode));
|
||||
}
|
||||
|
||||
MimeType Utils::mimeTypeForFile(const QFileInfo &fileInfo, MimeMatchMode mode)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForFile(fileInfo, MimeDatabase::MatchMode(mode));
|
||||
}
|
||||
|
||||
MimeType Utils::mimeTypeForFile(const FilePath &filePath, MimeMatchMode mode)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
if (filePath.needsDevice())
|
||||
return mdb.mimeTypeForUrl(filePath.toUrl());
|
||||
return mdb.mimeTypeForFile(filePath.toString(), MimeDatabase::MatchMode(mode));
|
||||
}
|
||||
|
||||
QList<MimeType> Utils::mimeTypesForFileName(const QString &fileName)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypesForFileName(fileName);
|
||||
}
|
||||
|
||||
MimeType Utils::mimeTypeForData(const QByteArray &data)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForData(data);
|
||||
}
|
||||
|
||||
QList<MimeType> Utils::allMimeTypes()
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.allMimeTypes();
|
||||
}
|
||||
|
@@ -40,49 +40,54 @@
|
||||
#pragma once
|
||||
|
||||
#include "mimetype.h"
|
||||
#include "mimemagicrule_p.h"
|
||||
|
||||
#include <utils/utils_global.h>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
class QFileInfo;
|
||||
class QIODevice;
|
||||
class QUrl;
|
||||
QT_END_NAMESPACE
|
||||
|
||||
namespace Utils {
|
||||
|
||||
class FilePath;
|
||||
class MimeDatabase
|
||||
{
|
||||
Q_DISABLE_COPY(MimeDatabase)
|
||||
|
||||
// Wrapped QMimeDataBase functions
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForName(const QString &nameOrAlias);
|
||||
public:
|
||||
MimeDatabase();
|
||||
~MimeDatabase();
|
||||
|
||||
enum class MimeMatchMode {
|
||||
MatchDefault = 0x0,
|
||||
MatchExtension = 0x1,
|
||||
MatchContent = 0x2
|
||||
MimeType mimeTypeForName(const QString &nameOrAlias) const;
|
||||
|
||||
enum MatchMode { MatchDefault = 0x0, MatchExtension = 0x1, MatchContent = 0x2 };
|
||||
|
||||
MimeType mimeTypeForFile(const QString &fileName, MatchMode mode = MatchDefault) const;
|
||||
MimeType mimeTypeForFile(const QFileInfo &fileInfo, MatchMode mode = MatchDefault) const;
|
||||
QList<MimeType> mimeTypesForFileName(const QString &fileName) const;
|
||||
|
||||
MimeType mimeTypeForData(const QByteArray &data) const;
|
||||
MimeType mimeTypeForData(QIODevice *device) const;
|
||||
|
||||
MimeType mimeTypeForUrl(const QUrl &url) const;
|
||||
MimeType mimeTypeForFileNameAndData(const QString &fileName, QIODevice *device) const;
|
||||
MimeType mimeTypeForFileNameAndData(const QString &fileName, const QByteArray &data) const;
|
||||
|
||||
QString suffixForFileName(const QString &fileName) const;
|
||||
|
||||
QList<MimeType> allMimeTypes() const;
|
||||
|
||||
// For debugging purposes.
|
||||
enum StartupPhase {
|
||||
BeforeInitialize,
|
||||
PluginsLoading,
|
||||
PluginsInitializing, // Register up to here.
|
||||
PluginsDelayedInitializing, // Use from here on.
|
||||
UpAndRunning
|
||||
};
|
||||
static void setStartupPhase(StartupPhase);
|
||||
|
||||
private:
|
||||
Internal::MimeDatabasePrivate *d;
|
||||
};
|
||||
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForFile(const QString &fileName, MimeMatchMode mode = MimeMatchMode::MatchDefault);
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForFile(const QFileInfo &fileInfo, MimeMatchMode mode = MimeMatchMode::MatchDefault);
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForFile(const FilePath &filePath, MimeMatchMode mode = MimeMatchMode::MatchDefault);
|
||||
QTCREATOR_UTILS_EXPORT QList<MimeType> mimeTypesForFileName(const QString &fileName);
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForData(const QByteArray &data);
|
||||
QTCREATOR_UTILS_EXPORT QList<MimeType> allMimeTypes();
|
||||
|
||||
// Qt Creator additions
|
||||
// For debugging purposes.
|
||||
enum class MimeStartupPhase {
|
||||
BeforeInitialize,
|
||||
PluginsLoading,
|
||||
PluginsInitializing, // Register up to here.
|
||||
PluginsDelayedInitializing, // Use from here on.
|
||||
UpAndRunning
|
||||
};
|
||||
|
||||
QTCREATOR_UTILS_EXPORT void setMimeStartupPhase(MimeStartupPhase);
|
||||
QTCREATOR_UTILS_EXPORT void addMimeTypes(const QString &id, const QByteArray &data);
|
||||
QTCREATOR_UTILS_EXPORT QMap<int, QList<Internal::MimeMagicRule> > magicRulesForMimeType(const MimeType &mimeType); // priority -> rules
|
||||
QTCREATOR_UTILS_EXPORT void setGlobPatternsForMimeType(const MimeType &mimeType, const QStringList &patterns);
|
||||
QTCREATOR_UTILS_EXPORT void setMagicRulesForMimeType(const MimeType &mimeType,
|
||||
const QMap<int, QList<Internal::MimeMagicRule> > &rules); // priority -> rules
|
||||
|
||||
} // Utils
|
||||
|
@@ -62,9 +62,7 @@
|
||||
#include <QtCore/qhash.h>
|
||||
#include <QtCore/qmutex.h>
|
||||
QT_BEGIN_NAMESPACE
|
||||
class QFileInfo;
|
||||
class QIODevice;
|
||||
class QUrl;
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#include "mimetype.h"
|
||||
@@ -108,50 +106,5 @@ public:
|
||||
int m_startupPhase = 0;
|
||||
};
|
||||
|
||||
class MimeDatabase
|
||||
{
|
||||
Q_DISABLE_COPY(MimeDatabase)
|
||||
|
||||
public:
|
||||
MimeDatabase();
|
||||
~MimeDatabase();
|
||||
|
||||
MimeType mimeTypeForName(const QString &nameOrAlias) const;
|
||||
|
||||
enum MatchMode {
|
||||
MatchDefault = 0x0,
|
||||
MatchExtension = 0x1,
|
||||
MatchContent = 0x2
|
||||
};
|
||||
|
||||
MimeType mimeTypeForFile(const QString &fileName, MatchMode mode = MatchDefault) const;
|
||||
MimeType mimeTypeForFile(const QFileInfo &fileInfo, MatchMode mode = MatchDefault) const;
|
||||
QList<MimeType> mimeTypesForFileName(const QString &fileName) const;
|
||||
|
||||
MimeType mimeTypeForData(const QByteArray &data) const;
|
||||
MimeType mimeTypeForData(QIODevice *device) const;
|
||||
|
||||
MimeType mimeTypeForUrl(const QUrl &url) const;
|
||||
MimeType mimeTypeForFileNameAndData(const QString &fileName, QIODevice *device) const;
|
||||
MimeType mimeTypeForFileNameAndData(const QString &fileName, const QByteArray &data) const;
|
||||
|
||||
QString suffixForFileName(const QString &fileName) const;
|
||||
|
||||
QList<MimeType> allMimeTypes() const;
|
||||
|
||||
// For debugging purposes.
|
||||
enum StartupPhase {
|
||||
BeforeInitialize,
|
||||
PluginsLoading,
|
||||
PluginsInitializing, // Register up to here.
|
||||
PluginsDelayedInitializing, // Use from here on.
|
||||
UpAndRunning
|
||||
};
|
||||
static void setStartupPhase(StartupPhase);
|
||||
|
||||
private:
|
||||
Internal::MimeDatabasePrivate *d;
|
||||
};
|
||||
|
||||
} // Internal
|
||||
} // Utils
|
||||
|
@@ -62,8 +62,8 @@ namespace Utils {
|
||||
class MimeType;
|
||||
|
||||
namespace Internal {
|
||||
|
||||
class MimeMagicRulePrivate;
|
||||
}
|
||||
|
||||
class QTCREATOR_UTILS_EXPORT MimeMagicRule
|
||||
{
|
||||
@@ -97,12 +97,11 @@ public:
|
||||
static bool matchSubstring(const char *dataPtr, int dataSize, int rangeStart, int rangeLength, int valueLength, const char *valueData, const char *mask);
|
||||
|
||||
private:
|
||||
const QScopedPointer<MimeMagicRulePrivate> d;
|
||||
const QScopedPointer<Internal::MimeMagicRulePrivate> d;
|
||||
};
|
||||
|
||||
} // Internal
|
||||
} // Utils
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
Q_DECLARE_TYPEINFO(Utils::Internal::MimeMagicRule, Q_MOVABLE_TYPE);
|
||||
Q_DECLARE_TYPEINFO(Utils::MimeMagicRule, Q_MOVABLE_TYPE);
|
||||
QT_END_NAMESPACE
|
||||
|
140
src/libs/utils/mimetypes/mimeutils.cpp
Normal file
140
src/libs/utils/mimetypes/mimeutils.cpp
Normal file
@@ -0,0 +1,140 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2022 The Qt Company Ltd.
|
||||
** Contact: https://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the QtCore module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see https://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at https://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPL3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or (at your option) the GNU General
|
||||
** Public license version 3 or any later version approved by the KDE Free
|
||||
** Qt Foundation. The licenses are as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
|
||||
** included in the packaging of this file. Please review the following
|
||||
** information to ensure the GNU General Public License requirements will
|
||||
** be met: https://www.gnu.org/licenses/gpl-2.0.html and
|
||||
** https://www.gnu.org/licenses/gpl-3.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
#include "mimeutils.h"
|
||||
|
||||
#include "mimedatabase.h"
|
||||
#include "mimedatabase_p.h"
|
||||
#include "mimemagicrule_p.h"
|
||||
#include "mimeprovider_p.h"
|
||||
|
||||
#include "filepath.h"
|
||||
|
||||
using namespace Utils;
|
||||
using namespace Utils::Internal;
|
||||
|
||||
void Utils::addMimeTypes(const QString &fileName, const QByteArray &data)
|
||||
{
|
||||
auto d = MimeDatabasePrivate::instance();
|
||||
QMutexLocker locker(&d->mutex);
|
||||
|
||||
if (d->m_startupPhase >= MimeDatabase::PluginsDelayedInitializing)
|
||||
qWarning("Adding items from %s to MimeDatabase after initialization time",
|
||||
qPrintable(fileName));
|
||||
|
||||
auto xmlProvider = static_cast<MimeXMLProvider *>(d->provider());
|
||||
xmlProvider->addData(fileName, data);
|
||||
}
|
||||
|
||||
QMap<int, QList<MimeMagicRule>> Utils::magicRulesForMimeType(const MimeType &mimeType)
|
||||
{
|
||||
auto d = MimeDatabasePrivate::instance();
|
||||
QMutexLocker locker(&d->mutex);
|
||||
return d->provider()->magicRulesForMimeType(mimeType);
|
||||
}
|
||||
|
||||
void Utils::setGlobPatternsForMimeType(const MimeType &mimeType, const QStringList &patterns)
|
||||
{
|
||||
auto d = MimeDatabasePrivate::instance();
|
||||
QMutexLocker locker(&d->mutex);
|
||||
d->provider()->setGlobPatternsForMimeType(mimeType, patterns);
|
||||
}
|
||||
|
||||
void Utils::setMagicRulesForMimeType(const MimeType &mimeType,
|
||||
const QMap<int, QList<MimeMagicRule>> &rules)
|
||||
{
|
||||
auto d = MimeDatabasePrivate::instance();
|
||||
QMutexLocker locker(&d->mutex);
|
||||
d->provider()->setMagicRulesForMimeType(mimeType, rules);
|
||||
}
|
||||
|
||||
void Utils::setMimeStartupPhase(MimeStartupPhase phase)
|
||||
{
|
||||
auto d = MimeDatabasePrivate::instance();
|
||||
QMutexLocker locker(&d->mutex);
|
||||
if (int(phase) != d->m_startupPhase + 1)
|
||||
qWarning("Unexpected jump in MimedDatabase lifetime from %d to %d",
|
||||
d->m_startupPhase,
|
||||
int(phase));
|
||||
d->m_startupPhase = int(phase);
|
||||
}
|
||||
|
||||
MimeType Utils::mimeTypeForName(const QString &nameOrAlias)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForName(nameOrAlias);
|
||||
}
|
||||
|
||||
MimeType Utils::mimeTypeForFile(const QString &fileName, MimeMatchMode mode)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForFile(fileName, MimeDatabase::MatchMode(mode));
|
||||
}
|
||||
|
||||
MimeType Utils::mimeTypeForFile(const QFileInfo &fileInfo, MimeMatchMode mode)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForFile(fileInfo, MimeDatabase::MatchMode(mode));
|
||||
}
|
||||
|
||||
MimeType Utils::mimeTypeForFile(const FilePath &filePath, MimeMatchMode mode)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
if (filePath.needsDevice())
|
||||
return mdb.mimeTypeForUrl(filePath.toUrl());
|
||||
return mdb.mimeTypeForFile(filePath.toString(), MimeDatabase::MatchMode(mode));
|
||||
}
|
||||
|
||||
QList<MimeType> Utils::mimeTypesForFileName(const QString &fileName)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypesForFileName(fileName);
|
||||
}
|
||||
|
||||
MimeType Utils::mimeTypeForData(const QByteArray &data)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForData(data);
|
||||
}
|
||||
|
||||
QList<MimeType> Utils::allMimeTypes()
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.allMimeTypes();
|
||||
}
|
@@ -46,8 +46,6 @@
|
||||
#include "mimeprovider_p.h"
|
||||
#include "mimetype_p.h"
|
||||
|
||||
#include "filepath.h"
|
||||
|
||||
#include <QtCore/QFile>
|
||||
#include <QtCore/QFileInfo>
|
||||
#include <QtCore/QStandardPaths>
|
||||
@@ -829,94 +827,4 @@ QList<MimeType> MimeDatabase::allMimeTypes() const
|
||||
\value MatchContent The file content is used to look for a match
|
||||
*/
|
||||
|
||||
MimeType mimeTypeForName(const QString &nameOrAlias)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForName(nameOrAlias);
|
||||
}
|
||||
|
||||
MimeType mimeTypeForFile(const QString &fileName, MimeMatchMode mode)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForFile(fileName, MimeDatabase::MatchMode(mode));
|
||||
}
|
||||
|
||||
MimeType mimeTypeForFile(const QFileInfo &fileInfo, MimeMatchMode mode)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForFile(fileInfo, MimeDatabase::MatchMode(mode));
|
||||
}
|
||||
|
||||
MimeType mimeTypeForFile(const FilePath &filePath, MimeMatchMode mode)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
if (filePath.needsDevice())
|
||||
return mdb.mimeTypeForUrl(filePath.toUrl());
|
||||
return mdb.mimeTypeForFile(filePath.toString(), MimeDatabase::MatchMode(mode));
|
||||
}
|
||||
|
||||
QList<MimeType> mimeTypesForFileName(const QString &fileName)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypesForFileName(fileName);
|
||||
}
|
||||
|
||||
MimeType mimeTypeForData(const QByteArray &data)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForData(data);
|
||||
}
|
||||
|
||||
QList<MimeType> allMimeTypes()
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.allMimeTypes();
|
||||
}
|
||||
|
||||
void setMimeStartupPhase(MimeStartupPhase phase)
|
||||
{
|
||||
// auto d = MimeDatabasePrivate::instance();
|
||||
// QMutexLocker locker(&d->mutex);
|
||||
// if (int(phase) != d->m_startupPhase + 1)
|
||||
// qWarning("Unexpected jump in MimedDatabase lifetime from %d to %d", d->m_startupPhase, int(phase));
|
||||
// d->m_startupPhase = int(phase);
|
||||
}
|
||||
|
||||
void addMimeTypes(const QString &fileName, const QByteArray &data)
|
||||
{
|
||||
// auto d = MimeDatabasePrivate::instance();
|
||||
// QMutexLocker locker(&d->mutex);
|
||||
|
||||
// if (d->m_startupPhase >= MimeDatabase::PluginsDelayedInitializing)
|
||||
// qWarning("Adding items from %s to MimeDatabase after initialization time",
|
||||
// qPrintable(fileName));
|
||||
|
||||
// auto xmlProvider = static_cast<MimeXMLProvider *>(d->provider());
|
||||
// xmlProvider->addData(fileName, data);
|
||||
}
|
||||
|
||||
QMap<int, QList<MimeMagicRule> > magicRulesForMimeType(const MimeType &mimeType)
|
||||
{
|
||||
// auto d = MimeDatabasePrivate::instance();
|
||||
// QMutexLocker locker(&d->mutex);
|
||||
// return d->provider()->magicRulesForMimeType(mimeType);
|
||||
return {};
|
||||
}
|
||||
|
||||
void setGlobPatternsForMimeType(const MimeType &mimeType, const QStringList &patterns)
|
||||
{
|
||||
// auto d = MimeDatabasePrivate::instance();
|
||||
// QMutexLocker locker(&d->mutex);
|
||||
// d->provider()->setGlobPatternsForMimeType(mimeType, patterns);
|
||||
}
|
||||
|
||||
void setMagicRulesForMimeType(const MimeType &mimeType, const QMap<int, QList<MimeMagicRule> > &rules)
|
||||
{
|
||||
// auto d = MimeDatabasePrivate::instance();
|
||||
// QMutexLocker locker(&d->mutex);
|
||||
// d->provider()->setMagicRulesForMimeType(mimeType, rules);
|
||||
}
|
||||
|
||||
|
||||
|
||||
} // namespace Utils
|
||||
|
@@ -57,45 +57,9 @@ QT_END_NAMESPACE
|
||||
|
||||
namespace Utils {
|
||||
|
||||
class FilePath;
|
||||
|
||||
// Wrapped QMimeDataBase functions
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForName(const QString &nameOrAlias);
|
||||
|
||||
enum class MimeMatchMode {
|
||||
MatchDefault = 0x0,
|
||||
MatchExtension = 0x1,
|
||||
MatchContent = 0x2
|
||||
};
|
||||
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForFile(const QString &fileName, MimeMatchMode mode = MimeMatchMode::MatchDefault);
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForFile(const QFileInfo &fileInfo, MimeMatchMode mode = MimeMatchMode::MatchDefault);
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForFile(const FilePath &filePath, MimeMatchMode mode = MimeMatchMode::MatchDefault);
|
||||
QTCREATOR_UTILS_EXPORT QList<MimeType> mimeTypesForFileName(const QString &fileName);
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForData(const QByteArray &data);
|
||||
QTCREATOR_UTILS_EXPORT QList<MimeType> allMimeTypes();
|
||||
|
||||
// Qt Creator additions
|
||||
// For debugging purposes.
|
||||
enum class MimeStartupPhase {
|
||||
BeforeInitialize,
|
||||
PluginsLoading,
|
||||
PluginsInitializing, // Register up to here.
|
||||
PluginsDelayedInitializing, // Use from here on.
|
||||
UpAndRunning
|
||||
};
|
||||
|
||||
QTCREATOR_UTILS_EXPORT void setMimeStartupPhase(MimeStartupPhase);
|
||||
QTCREATOR_UTILS_EXPORT void addMimeTypes(const QString &id, const QByteArray &data);
|
||||
QTCREATOR_UTILS_EXPORT QMap<int, QList<MimeMagicRule> > magicRulesForMimeType(const MimeType &mimeType); // priority -> rules
|
||||
QTCREATOR_UTILS_EXPORT void setGlobPatternsForMimeType(const MimeType &mimeType, const QStringList &patterns);
|
||||
QTCREATOR_UTILS_EXPORT void setMagicRulesForMimeType(const MimeType &mimeType,
|
||||
const QMap<int, QList<MimeMagicRule> > &rules); // priority -> rules
|
||||
|
||||
// Original
|
||||
|
||||
class MimeDatabasePrivate;
|
||||
class QTCREATOR_UTILS_EXPORT MimeDatabase
|
||||
|
||||
class MimeDatabase
|
||||
{
|
||||
Q_DISABLE_COPY(MimeDatabase)
|
||||
|
||||
|
139
src/libs/utils/mimetypes2/mimeutils.cpp
Normal file
139
src/libs/utils/mimetypes2/mimeutils.cpp
Normal file
@@ -0,0 +1,139 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2022 The Qt Company Ltd.
|
||||
** Contact: https://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the QtCore module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see https://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at https://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPL3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or (at your option) the GNU General
|
||||
** Public license version 3 or any later version approved by the KDE Free
|
||||
** Qt Foundation. The licenses are as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
|
||||
** included in the packaging of this file. Please review the following
|
||||
** information to ensure the GNU General Public License requirements will
|
||||
** be met: https://www.gnu.org/licenses/gpl-2.0.html and
|
||||
** https://www.gnu.org/licenses/gpl-3.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
#include "mimeutils.h"
|
||||
|
||||
#include "mimedatabase.h"
|
||||
#include "mimedatabase_p.h"
|
||||
#include "mimemagicrule_p.h"
|
||||
#include "mimeprovider_p.h"
|
||||
|
||||
#include "filepath.h"
|
||||
|
||||
namespace Utils {
|
||||
|
||||
MimeType mimeTypeForName(const QString &nameOrAlias)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForName(nameOrAlias);
|
||||
}
|
||||
|
||||
MimeType mimeTypeForFile(const QString &fileName, MimeMatchMode mode)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForFile(fileName, MimeDatabase::MatchMode(mode));
|
||||
}
|
||||
|
||||
MimeType mimeTypeForFile(const QFileInfo &fileInfo, MimeMatchMode mode)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForFile(fileInfo, MimeDatabase::MatchMode(mode));
|
||||
}
|
||||
|
||||
MimeType mimeTypeForFile(const FilePath &filePath, MimeMatchMode mode)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
if (filePath.needsDevice())
|
||||
return mdb.mimeTypeForUrl(filePath.toUrl());
|
||||
return mdb.mimeTypeForFile(filePath.toString(), MimeDatabase::MatchMode(mode));
|
||||
}
|
||||
|
||||
QList<MimeType> mimeTypesForFileName(const QString &fileName)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypesForFileName(fileName);
|
||||
}
|
||||
|
||||
MimeType mimeTypeForData(const QByteArray &data)
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.mimeTypeForData(data);
|
||||
}
|
||||
|
||||
QList<MimeType> allMimeTypes()
|
||||
{
|
||||
MimeDatabase mdb;
|
||||
return mdb.allMimeTypes();
|
||||
}
|
||||
|
||||
void setMimeStartupPhase(MimeStartupPhase phase)
|
||||
{
|
||||
// auto d = MimeDatabasePrivate::instance();
|
||||
// QMutexLocker locker(&d->mutex);
|
||||
// if (int(phase) != d->m_startupPhase + 1)
|
||||
// qWarning("Unexpected jump in MimedDatabase lifetime from %d to %d", d->m_startupPhase, int(phase));
|
||||
// d->m_startupPhase = int(phase);
|
||||
}
|
||||
|
||||
void addMimeTypes(const QString &fileName, const QByteArray &data)
|
||||
{
|
||||
// auto d = MimeDatabasePrivate::instance();
|
||||
// QMutexLocker locker(&d->mutex);
|
||||
|
||||
// if (d->m_startupPhase >= MimeDatabase::PluginsDelayedInitializing)
|
||||
// qWarning("Adding items from %s to MimeDatabase after initialization time",
|
||||
// qPrintable(fileName));
|
||||
|
||||
// auto xmlProvider = static_cast<MimeXMLProvider *>(d->provider());
|
||||
// xmlProvider->addData(fileName, data);
|
||||
}
|
||||
|
||||
QMap<int, QList<MimeMagicRule>> magicRulesForMimeType(const MimeType &mimeType)
|
||||
{
|
||||
// auto d = MimeDatabasePrivate::instance();
|
||||
// QMutexLocker locker(&d->mutex);
|
||||
// return d->provider()->magicRulesForMimeType(mimeType);
|
||||
return {};
|
||||
}
|
||||
|
||||
void setGlobPatternsForMimeType(const MimeType &mimeType, const QStringList &patterns)
|
||||
{
|
||||
// auto d = MimeDatabasePrivate::instance();
|
||||
// QMutexLocker locker(&d->mutex);
|
||||
// d->provider()->setGlobPatternsForMimeType(mimeType, patterns);
|
||||
}
|
||||
|
||||
void setMagicRulesForMimeType(const MimeType &mimeType, const QMap<int, QList<MimeMagicRule>> &rules)
|
||||
{
|
||||
// auto d = MimeDatabasePrivate::instance();
|
||||
// QMutexLocker locker(&d->mutex);
|
||||
// d->provider()->setMagicRulesForMimeType(mimeType, rules);
|
||||
}
|
||||
|
||||
} // namespace Utils
|
89
src/libs/utils/mimeutils.h
Normal file
89
src/libs/utils/mimeutils.h
Normal file
@@ -0,0 +1,89 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2022 The Qt Company Ltd.
|
||||
** Contact: https://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the QtCore module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see https://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at https://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPL3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or (at your option) the GNU General
|
||||
** Public license version 3 or any later version approved by the KDE Free
|
||||
** Qt Foundation. The licenses are as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
|
||||
** included in the packaging of this file. Please review the following
|
||||
** information to ensure the GNU General Public License requirements will
|
||||
** be met: https://www.gnu.org/licenses/gpl-2.0.html and
|
||||
** https://www.gnu.org/licenses/gpl-3.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <mimemagicrule_p.h>
|
||||
#include <mimetype.h>
|
||||
|
||||
#include <utils/utils_global.h>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
class QFileInfo;
|
||||
QT_END_NAMESPACE
|
||||
|
||||
namespace Utils {
|
||||
|
||||
class FilePath;
|
||||
|
||||
// Wrapped QMimeDataBase functions
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForName(const QString &nameOrAlias);
|
||||
|
||||
enum class MimeMatchMode { MatchDefault = 0x0, MatchExtension = 0x1, MatchContent = 0x2 };
|
||||
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForFile(const QString &fileName,
|
||||
MimeMatchMode mode = MimeMatchMode::MatchDefault);
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForFile(const QFileInfo &fileInfo,
|
||||
MimeMatchMode mode = MimeMatchMode::MatchDefault);
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForFile(const FilePath &filePath,
|
||||
MimeMatchMode mode = MimeMatchMode::MatchDefault);
|
||||
QTCREATOR_UTILS_EXPORT QList<MimeType> mimeTypesForFileName(const QString &fileName);
|
||||
QTCREATOR_UTILS_EXPORT MimeType mimeTypeForData(const QByteArray &data);
|
||||
QTCREATOR_UTILS_EXPORT QList<MimeType> allMimeTypes();
|
||||
|
||||
// Qt Creator additions
|
||||
// For debugging purposes.
|
||||
enum class MimeStartupPhase {
|
||||
BeforeInitialize,
|
||||
PluginsLoading,
|
||||
PluginsInitializing, // Register up to here.
|
||||
PluginsDelayedInitializing, // Use from here on.
|
||||
UpAndRunning
|
||||
};
|
||||
|
||||
QTCREATOR_UTILS_EXPORT void setMimeStartupPhase(MimeStartupPhase);
|
||||
QTCREATOR_UTILS_EXPORT void addMimeTypes(const QString &id, const QByteArray &data);
|
||||
QTCREATOR_UTILS_EXPORT QMap<int, QList<MimeMagicRule>> magicRulesForMimeType(
|
||||
const MimeType &mimeType); // priority -> rules
|
||||
QTCREATOR_UTILS_EXPORT void setGlobPatternsForMimeType(const MimeType &mimeType,
|
||||
const QStringList &patterns);
|
||||
QTCREATOR_UTILS_EXPORT void setMagicRulesForMimeType(
|
||||
const MimeType &mimeType, const QMap<int, QList<MimeMagicRule>> &rules); // priority -> rules
|
||||
|
||||
} // namespace Utils
|
@@ -5,7 +5,7 @@ Project {
|
||||
name: "Utils"
|
||||
|
||||
QtcLibrary {
|
||||
|
||||
cpp.includePaths: base.concat("mimetypes", ".")
|
||||
cpp.defines: base.concat([
|
||||
"UTILS_LIBRARY"
|
||||
])
|
||||
@@ -179,6 +179,7 @@ Project {
|
||||
"macroexpander.cpp",
|
||||
"macroexpander.h",
|
||||
"mapreduce.h",
|
||||
"mimeutils.h",
|
||||
"multitextcursor.cpp",
|
||||
"multitextcursor.h",
|
||||
"namevaluedictionary.cpp",
|
||||
@@ -404,6 +405,7 @@ Project {
|
||||
"mimetype_p.h",
|
||||
"mimetypeparser.cpp",
|
||||
"mimetypeparser_p.h",
|
||||
"mimeutils.cpp"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -430,6 +432,7 @@ Project {
|
||||
|
||||
Export {
|
||||
Depends { name: "Qt"; submodules: ["concurrent", "widgets" ] }
|
||||
cpp.includePaths: base.concat("mimetypes")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -33,7 +33,7 @@
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/genericconstants.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QFile>
|
||||
#include <QFileInfo>
|
||||
|
@@ -51,7 +51,7 @@
|
||||
#include <texteditor/texteditorconstants.h>
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/qtcprocess.h>
|
||||
#include <utils/runextensions.h>
|
||||
|
@@ -30,7 +30,7 @@
|
||||
#include <coreplugin/icore.h>
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/genericconstants.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
namespace Beautifier {
|
||||
namespace Internal {
|
||||
|
@@ -25,7 +25,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QList>
|
||||
|
||||
|
@@ -50,7 +50,7 @@
|
||||
#include <clangsupport/filecontainer.h>
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/optional.h>
|
||||
#include <utils/porting.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
@@ -38,8 +38,7 @@
|
||||
#include "clangtoolsunittests.h"
|
||||
#endif
|
||||
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
||||
#include <coreplugin/actionmanager/actioncontainer.h>
|
||||
|
@@ -59,7 +59,7 @@
|
||||
#include <utils/checkablemessagebox.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/macroexpander.h>
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/qtcprocess.h>
|
||||
#include <utils/runextensions.h>
|
||||
|
@@ -31,7 +31,7 @@
|
||||
#include <cppeditor/cppeditorconstants.h>
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/qtcprocess.h>
|
||||
#include <utils/utilsicons.h>
|
||||
|
@@ -28,7 +28,7 @@
|
||||
#include <coreplugin/progressmanager/progressmanager.h>
|
||||
#include <projectexplorer/task.h>
|
||||
#include <projectexplorer/treescanner.h>
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/runextensions.h>
|
||||
|
||||
#include <QCryptographicHash>
|
||||
|
@@ -26,14 +26,14 @@
|
||||
#include "basefilewizardfactory.h"
|
||||
|
||||
#include "basefilewizard.h"
|
||||
#include "dialogs/promptoverwritedialog.h"
|
||||
#include "editormanager/editormanager.h"
|
||||
#include "icontext.h"
|
||||
#include "icore.h"
|
||||
#include "ifilewizardextension.h"
|
||||
#include "editormanager/editormanager.h"
|
||||
#include "dialogs/promptoverwritedialog.h"
|
||||
#include <extensionsystem/pluginmanager.h>
|
||||
#include <utils/filewizardpage.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/stringutils.h>
|
||||
#include <utils/wizard.h>
|
||||
|
@@ -28,7 +28,7 @@
|
||||
#include <app/app_version.h>
|
||||
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
||||
#include <QDir>
|
||||
|
@@ -53,7 +53,7 @@
|
||||
#include <utils/commandline.h>
|
||||
#include <utils/infobar.h>
|
||||
#include <utils/macroexpander.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/pathchooser.h>
|
||||
#include <utils/savefile.h>
|
||||
#include <utils/stringutils.h>
|
||||
|
@@ -29,7 +29,7 @@
|
||||
#include <coreplugin/editormanager/editormanager.h>
|
||||
#include <coreplugin/editormanager/ieditorfactory.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QDateTime>
|
||||
#include <QDebug>
|
||||
|
@@ -50,7 +50,7 @@
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/globalfilechangeblocker.h>
|
||||
#include <utils/hostosinfo.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/optional.h>
|
||||
#include <utils/pathchooser.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
@@ -72,8 +72,7 @@
|
||||
#include <utils/infobar.h>
|
||||
#include <utils/link.h>
|
||||
#include <utils/macroexpander.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/overridecursor.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/stringutils.h>
|
||||
|
@@ -28,7 +28,7 @@
|
||||
#include "editormanager.h"
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
||||
#include <QFileInfo>
|
||||
|
@@ -28,14 +28,16 @@
|
||||
#include <coreplugin/core_global.h>
|
||||
|
||||
#include <utils/id.h>
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
|
||||
#include <QObject>
|
||||
#include <QStringList>
|
||||
|
||||
#include <functional>
|
||||
|
||||
namespace Utils { class FilePath; }
|
||||
namespace Utils {
|
||||
class FilePath;
|
||||
class MimeType;
|
||||
}
|
||||
|
||||
namespace Core {
|
||||
|
||||
|
@@ -25,8 +25,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QHash>
|
||||
#include <QSet>
|
||||
|
@@ -30,11 +30,13 @@
|
||||
#include <coreplugin/core_global.h>
|
||||
|
||||
#include <utils/id.h>
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
|
||||
#include <QObject>
|
||||
|
||||
namespace Utils { class FilePath; }
|
||||
namespace Utils {
|
||||
class FilePath;
|
||||
class MimeType;
|
||||
}
|
||||
|
||||
namespace Core {
|
||||
|
||||
|
@@ -27,7 +27,7 @@
|
||||
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/hostosinfo.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/optional.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/variant.h>
|
||||
|
@@ -56,13 +56,13 @@
|
||||
#include <coreplugin/actionmanager/actionmanager_p.h>
|
||||
#include <coreplugin/actionmanager/command.h>
|
||||
#include <coreplugin/dialogs/externaltoolconfig.h>
|
||||
#include <coreplugin/iwizardfactory.h>
|
||||
#include <coreplugin/dialogs/shortcutsettings.h>
|
||||
#include <coreplugin/editormanager/documentmodel_p.h>
|
||||
#include <coreplugin/editormanager/editormanager.h>
|
||||
#include <coreplugin/editormanager/editormanager_p.h>
|
||||
#include <coreplugin/editormanager/ieditor.h>
|
||||
#include <coreplugin/inavigationwidgetfactory.h>
|
||||
#include <coreplugin/iwizardfactory.h>
|
||||
#include <coreplugin/progressmanager/progressmanager_p.h>
|
||||
#include <coreplugin/progressmanager/progressview.h>
|
||||
#include <coreplugin/settingsdatabase.h>
|
||||
@@ -70,11 +70,11 @@
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/historycompleter.h>
|
||||
#include <utils/hostosinfo.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/stringutils.h>
|
||||
#include <utils/stylehelper.h>
|
||||
#include <utils/theme/theme.h>
|
||||
#include <utils/stringutils.h>
|
||||
#include <utils/utilsicons.h>
|
||||
|
||||
#include <QActionGroup>
|
||||
|
@@ -37,11 +37,11 @@
|
||||
using namespace Core;
|
||||
using namespace Internal;
|
||||
|
||||
static Utils::Internal::MimeMagicRule::Type typeValue(int i)
|
||||
static Utils::MimeMagicRule::Type typeValue(int i)
|
||||
{
|
||||
QTC_ASSERT(i < Utils::Internal::MimeMagicRule::Byte,
|
||||
return Utils::Internal::MimeMagicRule::Invalid);
|
||||
return Utils::Internal::MimeMagicRule::Type(i + 1/*0==invalid*/);
|
||||
QTC_ASSERT(i < Utils::MimeMagicRule::Byte,
|
||||
return Utils::MimeMagicRule::Invalid);
|
||||
return Utils::MimeMagicRule::Type(i + 1/*0==invalid*/);
|
||||
}
|
||||
|
||||
MimeTypeMagicDialog::MimeTypeMagicDialog(QWidget *parent) :
|
||||
@@ -96,7 +96,7 @@ void MimeTypeMagicDialog::applyRecommended(bool checked)
|
||||
void MimeTypeMagicDialog::validateAccept()
|
||||
{
|
||||
QString errorMessage;
|
||||
Utils::Internal::MimeMagicRule rule = createRule(&errorMessage);
|
||||
Utils::MimeMagicRule rule = createRule(&errorMessage);
|
||||
if (rule.isValid())
|
||||
accept();
|
||||
else
|
||||
@@ -130,12 +130,12 @@ bool MagicData::operator==(const MagicData &other) const
|
||||
Returns the mask, or an empty string if the mask is the default mask which is set by
|
||||
MimeMagicRule when setting an empty mask for string patterns.
|
||||
*/
|
||||
QByteArray MagicData::normalizedMask(const Utils::Internal::MimeMagicRule &rule)
|
||||
QByteArray MagicData::normalizedMask(const Utils::MimeMagicRule &rule)
|
||||
{
|
||||
// convert mask and see if it is the "default" one (which corresponds to "empty" mask)
|
||||
// see MimeMagicRule constructor
|
||||
QByteArray mask = rule.mask();
|
||||
if (rule.type() == Utils::Internal::MimeMagicRule::String) {
|
||||
if (rule.type() == Utils::MimeMagicRule::String) {
|
||||
QByteArray actualMask = QByteArray::fromHex(QByteArray::fromRawData(mask.constData() + 2,
|
||||
mask.size() - 2));
|
||||
if (actualMask.count(char(-1)) == actualMask.size()) {
|
||||
@@ -146,16 +146,16 @@ QByteArray MagicData::normalizedMask(const Utils::Internal::MimeMagicRule &rule)
|
||||
return mask;
|
||||
}
|
||||
|
||||
Utils::Internal::MimeMagicRule MimeTypeMagicDialog::createRule(QString *errorMessage) const
|
||||
Utils::MimeMagicRule MimeTypeMagicDialog::createRule(QString *errorMessage) const
|
||||
{
|
||||
Utils::Internal::MimeMagicRule::Type type = typeValue(ui.typeSelector->currentIndex());
|
||||
Utils::Internal::MimeMagicRule rule(type,
|
||||
Utils::MimeMagicRule::Type type = typeValue(ui.typeSelector->currentIndex());
|
||||
Utils::MimeMagicRule rule(type,
|
||||
ui.valueLineEdit->text().toUtf8(),
|
||||
ui.startRangeSpinBox->value(),
|
||||
ui.endRangeSpinBox->value(),
|
||||
ui.maskLineEdit->text().toLatin1(),
|
||||
errorMessage);
|
||||
if (type == Utils::Internal::MimeMagicRule::Invalid) {
|
||||
if (type == Utils::MimeMagicRule::Invalid) {
|
||||
if (errorMessage)
|
||||
*errorMessage = tr("Internal error: Type is invalid");
|
||||
}
|
||||
|
@@ -27,7 +27,7 @@
|
||||
|
||||
#include "ui_mimetypemagicdialog.h"
|
||||
|
||||
#include <utils/mimetypes/mimemagicrule_p.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
namespace Core {
|
||||
namespace Internal {
|
||||
@@ -36,11 +36,11 @@ class MagicData
|
||||
{
|
||||
public:
|
||||
MagicData()
|
||||
: m_rule(Utils::Internal::MimeMagicRule::String, QByteArray(" "), 0, 0)
|
||||
: m_rule(Utils::MimeMagicRule::String, QByteArray(" "), 0, 0)
|
||||
{
|
||||
}
|
||||
|
||||
MagicData(Utils::Internal::MimeMagicRule rule, int priority)
|
||||
MagicData(Utils::MimeMagicRule rule, int priority)
|
||||
: m_rule(rule)
|
||||
, m_priority(priority)
|
||||
{
|
||||
@@ -49,9 +49,9 @@ public:
|
||||
bool operator==(const MagicData &other) const;
|
||||
bool operator!=(const MagicData &other) { return !(*this == other); }
|
||||
|
||||
static QByteArray normalizedMask(const Utils::Internal::MimeMagicRule &rule);
|
||||
static QByteArray normalizedMask(const Utils::MimeMagicRule &rule);
|
||||
|
||||
Utils::Internal::MimeMagicRule m_rule;
|
||||
Utils::MimeMagicRule m_rule;
|
||||
int m_priority = 0;
|
||||
};
|
||||
|
||||
@@ -68,7 +68,7 @@ private:
|
||||
void setToRecommendedValues();
|
||||
void applyRecommended(bool checked);
|
||||
void validateAccept();
|
||||
Utils::Internal::MimeMagicRule createRule(QString *errorMessage = nullptr) const;
|
||||
Utils::MimeMagicRule createRule(QString *errorMessage = nullptr) const;
|
||||
|
||||
Ui::MimeTypeMagicDialog ui;
|
||||
int m_customRangeStart = 0;
|
||||
|
@@ -35,7 +35,7 @@
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/headerviewstretcher.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/stringutils.h>
|
||||
|
||||
@@ -87,7 +87,7 @@ public:
|
||||
bool isValid() const { return !name.isEmpty(); }
|
||||
QString name;
|
||||
QStringList globPatterns;
|
||||
QMap<int, QList<Utils::Internal::MimeMagicRule> > rules;
|
||||
QMap<int, QList<Utils::MimeMagicRule> > rules;
|
||||
};
|
||||
|
||||
// MimeTypeSettingsModel
|
||||
@@ -346,12 +346,12 @@ void MimeTypeSettingsPrivate::syncData(const QModelIndex ¤t,
|
||||
modifiedType.isValid() ? modifiedType.globPatterns.join(kSemiColon)
|
||||
: currentMimeType.globPatterns().join(kSemiColon));
|
||||
|
||||
QMap<int, QList<Utils::Internal::MimeMagicRule> > rules =
|
||||
QMap<int, QList<Utils::MimeMagicRule> > rules =
|
||||
modifiedType.isValid() ? modifiedType.rules
|
||||
: Utils::magicRulesForMimeType(currentMimeType);
|
||||
for (auto it = rules.constBegin(); it != rules.constEnd(); ++it) {
|
||||
int priority = it.key();
|
||||
foreach (const Utils::Internal::MimeMagicRule &rule, it.value()) {
|
||||
foreach (const Utils::MimeMagicRule &rule, it.value()) {
|
||||
addMagicHeaderRow(MagicData(rule, priority));
|
||||
}
|
||||
}
|
||||
@@ -394,7 +394,7 @@ void MimeTypeSettingsPrivate::editMagicHeaderRowData(const int row, const MagicD
|
||||
{
|
||||
auto item = new QTreeWidgetItem;
|
||||
item->setText(0, QString::fromUtf8(data.m_rule.value()));
|
||||
item->setText(1, QString::fromLatin1(Utils::Internal::MimeMagicRule::typeName(data.m_rule.type())));
|
||||
item->setText(1, QString::fromLatin1(Utils::MimeMagicRule::typeName(data.m_rule.type())));
|
||||
item->setText(2, QString::fromLatin1("%1:%2").arg(data.m_rule.startPos()).arg(data.m_rule.endPos()));
|
||||
item->setText(3, QString::number(data.m_priority));
|
||||
item->setData(0, Qt::UserRole, QVariant::fromValue(data));
|
||||
@@ -522,12 +522,12 @@ void MimeTypeSettingsPrivate::writeUserModifiedMimeTypes()
|
||||
mt.globPatterns.join(kSemiColon));
|
||||
for (auto prioIt = mt.rules.constBegin(); prioIt != mt.rules.constEnd(); ++prioIt) {
|
||||
const QString priorityString = QString::number(prioIt.key());
|
||||
foreach (const Utils::Internal::MimeMagicRule &rule, prioIt.value()) {
|
||||
foreach (const Utils::MimeMagicRule &rule, prioIt.value()) {
|
||||
writer.writeStartElement(QLatin1String(matchTagC));
|
||||
writer.writeAttribute(QLatin1String(matchValueAttributeC),
|
||||
QString::fromUtf8(rule.value()));
|
||||
writer.writeAttribute(QLatin1String(matchTypeAttributeC),
|
||||
QString::fromUtf8(Utils::Internal::MimeMagicRule::typeName(rule.type())));
|
||||
QString::fromUtf8(Utils::MimeMagicRule::typeName(rule.type())));
|
||||
writer.writeAttribute(QLatin1String(matchOffsetAttributeC),
|
||||
QString::fromLatin1("%1:%2").arg(rule.startPos())
|
||||
.arg(rule.endPos()));
|
||||
@@ -585,7 +585,7 @@ MimeTypeSettingsPrivate::UserMimeTypeHash MimeTypeSettingsPrivate::readUserModif
|
||||
int priority = atts.value(QLatin1String(priorityAttributeC)).toString().toInt();
|
||||
QByteArray mask = atts.value(QLatin1String(matchMaskAttributeC)).toLatin1();
|
||||
QString errorMessage;
|
||||
Utils::Internal::MimeMagicRule rule(Utils::Internal::MimeMagicRule::type(typeName),
|
||||
Utils::MimeMagicRule rule(Utils::MimeMagicRule::type(typeName),
|
||||
value, range.first, range.second, mask,
|
||||
&errorMessage);
|
||||
if (rule.isValid()) {
|
||||
|
@@ -43,7 +43,7 @@
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/temporarydirectory.h>
|
||||
|
||||
|
@@ -42,9 +42,9 @@
|
||||
#include <texteditor/texteditorsettings.h>
|
||||
#include <texteditor/completionsettings.h>
|
||||
|
||||
#include <utils/textutils.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/textutils.h>
|
||||
|
||||
#include <cplusplus/BackwardsScanner.h>
|
||||
#include <cplusplus/CppRewriter.h>
|
||||
|
@@ -49,7 +49,7 @@
|
||||
|
||||
#include <utils/executeondestruction.h>
|
||||
#include <utils/infobar.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/runextensions.h>
|
||||
|
||||
|
@@ -107,7 +107,7 @@
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/hostosinfo.h>
|
||||
#include <utils/macroexpander.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/theme/theme.h>
|
||||
|
||||
|
@@ -37,7 +37,7 @@
|
||||
#include <utils/environment.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/hostosinfo.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/stringutils.h>
|
||||
|
||||
#include <QCoreApplication>
|
||||
|
@@ -28,7 +28,7 @@
|
||||
#include "cppeditorconstants.h"
|
||||
|
||||
#include <coreplugin/icore.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QDebug>
|
||||
|
||||
|
@@ -32,7 +32,7 @@
|
||||
#include <texteditor/texteditor.h>
|
||||
#include <utils/executeondestruction.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/tooltip/tooltip.h>
|
||||
|
||||
|
@@ -43,7 +43,7 @@
|
||||
#include <texteditor/texteditor.h>
|
||||
|
||||
#include <utils/aspects.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
||||
#include <QTextBlock>
|
||||
|
@@ -31,7 +31,7 @@
|
||||
|
||||
#include <coreplugin/icore.h>
|
||||
#include <cppeditor/cppeditorconstants.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QDebug>
|
||||
#include <QMessageBox>
|
||||
|
@@ -39,14 +39,14 @@
|
||||
#include <coreplugin/actionmanager/actioncontainer.h>
|
||||
#include <coreplugin/actionmanager/actionmanager.h>
|
||||
#include <coreplugin/actionmanager/command.h>
|
||||
#include <coreplugin/coreconstants.h>
|
||||
#include <coreplugin/designmode.h>
|
||||
#include <coreplugin/editormanager/editormanager.h>
|
||||
#include <coreplugin/icore.h>
|
||||
#include <coreplugin/idocument.h>
|
||||
#include <coreplugin/coreconstants.h>
|
||||
#include <coreplugin/designmode.h>
|
||||
#include <cppeditor/cppeditorconstants.h>
|
||||
#include <projectexplorer/jsonwizard/jsonwizardfactory.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QAction>
|
||||
#include <QCoreApplication>
|
||||
|
@@ -46,7 +46,7 @@
|
||||
#include <projectexplorer/projecttree.h>
|
||||
#include <projectexplorer/session.h>
|
||||
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/stringutils.h>
|
||||
|
||||
|
@@ -36,7 +36,7 @@
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/filewizardpage.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QApplication>
|
||||
#include <QDebug>
|
||||
|
@@ -47,7 +47,7 @@
|
||||
#include <utils/commandline.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/hostosinfo.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/qtcprocess.h>
|
||||
#include <utils/stringutils.h>
|
||||
|
@@ -30,7 +30,7 @@
|
||||
|
||||
#include <coreplugin/editormanager/documentmodel.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
||||
#include <QFileInfo>
|
||||
|
@@ -57,7 +57,7 @@
|
||||
#include <texteditor/texteditoractionhandler.h>
|
||||
#include <texteditor/texteditorsettings.h>
|
||||
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcprocess.h>
|
||||
|
||||
|
||||
|
@@ -30,7 +30,7 @@
|
||||
|
||||
#include <texteditor/tabsettings.h>
|
||||
#include <texteditor/textdocument.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QTextDocument>
|
||||
|
||||
|
@@ -29,7 +29,7 @@
|
||||
|
||||
#include <texteditor/textdocument.h>
|
||||
#include <texteditor/texteditor.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/tooltip/tooltip.h>
|
||||
|
||||
|
@@ -42,7 +42,6 @@
|
||||
#include <texteditor/textmark.h>
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/executeondestruction.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/theme/theme.h>
|
||||
#include <utils/utilsicons.h>
|
||||
|
||||
|
@@ -28,13 +28,12 @@
|
||||
#include "languageclientmanager.h"
|
||||
#include "languageclientutils.h"
|
||||
|
||||
#include <coreplugin/find/itemviewfind.h>
|
||||
#include <coreplugin/editormanager/ieditor.h>
|
||||
#include <coreplugin/find/itemviewfind.h>
|
||||
#include <languageserverprotocol/languagefeatures.h>
|
||||
#include <texteditor/textdocument.h>
|
||||
#include <texteditor/texteditor.h>
|
||||
#include <utils/itemviews.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/treemodel.h>
|
||||
#include <utils/treeviewcombobox.h>
|
||||
#include <utils/utilsicons.h>
|
||||
|
@@ -41,12 +41,11 @@
|
||||
#include <texteditor/textmark.h>
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/utilsicons.h>
|
||||
#include <utils/delegates.h>
|
||||
#include <utils/fancylineedit.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/jsontreeitem.h>
|
||||
#include <utils/stringutils.h>
|
||||
#include <utils/utilsicons.h>
|
||||
#include <utils/variablechooser.h>
|
||||
|
||||
#include <QBoxLayout>
|
||||
|
@@ -31,7 +31,7 @@
|
||||
#include <coreplugin/editormanager/editormanager.h>
|
||||
#include <coreplugin/find/searchresultwindow.h>
|
||||
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QFile>
|
||||
|
||||
|
@@ -32,7 +32,7 @@
|
||||
#include <texteditor/syntaxhighlighter.h>
|
||||
#include <texteditor/texteditor.h>
|
||||
#include <texteditor/texteditorsettings.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QTextDocument>
|
||||
|
||||
|
@@ -43,10 +43,9 @@
|
||||
#include <projectexplorer/session.h>
|
||||
#include <projectexplorer/projectnodes.h>
|
||||
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/porting.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
||||
#include <QQueue>
|
||||
#include <QMutex>
|
||||
|
@@ -39,7 +39,6 @@
|
||||
#include <projectexplorer/target.h>
|
||||
|
||||
#include <utils/aspects.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
||||
using namespace ProjectExplorer;
|
||||
|
@@ -49,10 +49,9 @@
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/detailswidget.h>
|
||||
#include <utils/macroexpander.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
#include <utils/layoutbuilder.h>
|
||||
#include <utils/macroexpander.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/variablechooser.h>
|
||||
|
||||
|
@@ -30,7 +30,7 @@
|
||||
#include <cppeditor/cppeditorconstants.h>
|
||||
|
||||
#include <utils/macroexpander.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/stringutils.h>
|
||||
#include <utils/templateengine.h>
|
||||
|
@@ -35,7 +35,7 @@
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/macroexpander.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
||||
using namespace Core;
|
||||
|
@@ -42,9 +42,9 @@
|
||||
#include <texteditor/textindenter.h>
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/stringutils.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/stringutils.h>
|
||||
|
||||
#include <QCoreApplication>
|
||||
#include <QDebug>
|
||||
|
@@ -34,9 +34,9 @@
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/macroexpander.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
||||
#include <QCoreApplication>
|
||||
#include <QDir>
|
||||
|
@@ -139,7 +139,7 @@
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/macroexpander.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/parameteraction.h>
|
||||
#include <utils/processhandle.h>
|
||||
#include <utils/proxyaction.h>
|
||||
|
@@ -44,7 +44,7 @@
|
||||
#include <texteditor/tabsettings.h>
|
||||
#include <texteditor/texteditorsettings.h>
|
||||
#include <texteditor/textindenter.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QPointer>
|
||||
#include <QDebug>
|
||||
|
@@ -39,8 +39,7 @@
|
||||
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/hostosinfo.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/pointeralgorithm.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/stringutils.h>
|
||||
|
@@ -42,7 +42,7 @@
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/filewizardpage.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/wizard.h>
|
||||
|
||||
#include <QApplication>
|
||||
|
@@ -28,8 +28,8 @@
|
||||
#include "projectexplorer_export.h"
|
||||
#include "projectnodes.h"
|
||||
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QObject>
|
||||
#include <QFuture>
|
||||
|
@@ -36,7 +36,7 @@
|
||||
#include <projectexplorer/target.h>
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcprocess.h>
|
||||
|
||||
using namespace Utils;
|
||||
|
@@ -46,7 +46,6 @@
|
||||
|
||||
#include <qtsupport/qtkitinformation.h>
|
||||
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/qtcprocess.h>
|
||||
|
||||
|
@@ -56,10 +56,8 @@
|
||||
#include <qtsupport/qtkitinformation.h>
|
||||
#include <qtsupport/qtversionmanager.h>
|
||||
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/qtcprocess.h>
|
||||
#include <utils/qtcassert.h>
|
||||
|
||||
#include <QDebug>
|
||||
#include <QInputDialog>
|
||||
|
@@ -46,13 +46,13 @@
|
||||
#include <texteditor/tabsettings.h>
|
||||
#include <texteditor/texteditorsettings.h>
|
||||
|
||||
#include <utils/QtConcurrentTools>
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/filesystemwatcher.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcprocess.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/stringutils.h>
|
||||
#include <utils/temporarydirectory.h>
|
||||
#include <utils/QtConcurrentTools>
|
||||
|
||||
#include <QLoggingCategory>
|
||||
#include <QMessageBox>
|
||||
|
@@ -55,7 +55,7 @@
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/hostosinfo.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QDir>
|
||||
#include <QFile>
|
||||
|
@@ -37,7 +37,7 @@
|
||||
#include <projectexplorer/projectexplorer.h>
|
||||
#include <projectexplorer/target.h>
|
||||
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
|
||||
#include <QComboBox>
|
||||
|
||||
|
@@ -49,7 +49,6 @@
|
||||
#include <utils/aspects.h>
|
||||
#include <utils/environment.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/qtcprocess.h>
|
||||
#include <utils/winutils.h>
|
||||
|
||||
|
@@ -34,7 +34,7 @@
|
||||
|
||||
#include <utils/algorithm.h>
|
||||
#include <utils/fileutils.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/threadutils.h>
|
||||
|
||||
|
@@ -51,10 +51,10 @@
|
||||
#include <qmldesigner/qmldesignerplugin.h>
|
||||
|
||||
#include <utils/checkablemessagebox.h>
|
||||
#include <utils/dynamiclicensecheck.h>
|
||||
#include <utils/hostosinfo.h>
|
||||
#include <utils/icon.h>
|
||||
#include <utils/infobar.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/stringutils.h>
|
||||
#include <utils/theme/theme.h>
|
||||
|
||||
|
@@ -34,7 +34,7 @@
|
||||
#include <coreplugin/editormanager/documentmodel.h>
|
||||
#include <coreplugin/icore.h>
|
||||
#include <coreplugin/messagemanager.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/stylehelper.h>
|
||||
|
||||
|
@@ -27,21 +27,21 @@
|
||||
|
||||
#include "extraencodingsettings.h"
|
||||
#include "fontsettings.h"
|
||||
#include "textindenter.h"
|
||||
#include "storagesettings.h"
|
||||
#include "syntaxhighlighter.h"
|
||||
#include "tabsettings.h"
|
||||
#include "textdocumentlayout.h"
|
||||
#include "texteditor.h"
|
||||
#include "texteditorconstants.h"
|
||||
#include "textindenter.h"
|
||||
#include "typingsettings.h"
|
||||
#include <coreplugin/diffservice.h>
|
||||
#include <coreplugin/editormanager/editormanager.h>
|
||||
#include <coreplugin/editormanager/documentmodel.h>
|
||||
#include <coreplugin/editormanager/editormanager.h>
|
||||
#include <extensionsystem/pluginmanager.h>
|
||||
#include <utils/textutils.h>
|
||||
#include <utils/guard.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/textutils.h>
|
||||
|
||||
#include <QAction>
|
||||
#include <QApplication>
|
||||
|
@@ -79,7 +79,7 @@
|
||||
#include <utils/fixedsizeclicklabel.h>
|
||||
#include <utils/hostosinfo.h>
|
||||
#include <utils/infobar.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
#include <utils/mimeutils.h>
|
||||
#include <utils/multitextcursor.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/styledbar.h>
|
||||
|
@@ -26,8 +26,6 @@
|
||||
#include <languageserverprotocol/basemessage.h>
|
||||
#include <languageserverprotocol/jsonobject.h>
|
||||
#include <languageserverprotocol/jsonrpcmessages.h>
|
||||
#include <utils/mimetypes/mimetype.h>
|
||||
#include <utils/mimetypes/mimedatabase.h>
|
||||
|
||||
#include <QTextCodec>
|
||||
#include <QtTest>
|
||||
|
Reference in New Issue
Block a user