Apply 'static' pattern to MimeDatabase

Also adjust and streamline using and surrounding code.

Change-Id: I6a8b05126bdcbb74ff611b21c7cb3c5902a2d5ca
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
hjk
2013-08-30 16:38:57 +02:00
committed by Tobias Hunger
parent 1226400af3
commit a37589d431
57 changed files with 362 additions and 466 deletions
+1 -1
View File
@@ -89,7 +89,7 @@ bool AndroidPlugin::initialize(const QStringList &arguments, QString *errorMessa
androidManifestMimeType.setGlobPatterns(QList<Core::MimeGlobPattern>() << androidManifestGlobPattern);
androidManifestMimeType.setSubClassesOf(QStringList() << QLatin1String("application/xml"));
if (!Core::ICore::mimeDatabase()->addMimeType(androidManifestMimeType)) {
if (!Core::MimeDatabase::addMimeType(androidManifestMimeType)) {
*errorMessage = tr("Could not add mime-type for AndroidManifest.xml editor.");
return false;
}
@@ -38,7 +38,6 @@
#include "configurestep.h"
#include "autotoolsprojectconstants.h"
#include <coreplugin/icore.h>
#include <coreplugin/mimedatabase.h>
#include <QStringList>
@@ -59,7 +58,7 @@ bool AutotoolsProjectPlugin::initialize(const QStringList &arguments,
{
Q_UNUSED(arguments);
if (!Core::ICore::mimeDatabase()->addMimeTypes(QLatin1String(":autotoolsproject/AutotoolsProjectManager.mimetypes.xml"), errorString))
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(":autotoolsproject/AutotoolsProjectManager.mimetypes.xml"), errorString))
return false;
addAutoReleasedObject(new AutotoolsBuildConfigurationFactory);
+1 -1
View File
@@ -374,7 +374,7 @@ bool ClearCasePlugin::initialize(const QStringList & /*arguments */, QString *er
connect(ProgressManager::instance(), SIGNAL(allTasksFinished(QString)),
this, SLOT(tasksFinished(QString)));
if (!ICore::mimeDatabase()->addMimeTypes(QLatin1String(":/clearcase/ClearCase.mimetypes.xml"), errorMessage))
if (!MimeDatabase::addMimeTypes(QLatin1String(":/clearcase/ClearCase.mimetypes.xml"), errorMessage))
return false;
m_settings.fromSettings(ICore::settings());
@@ -39,7 +39,6 @@
#include "cmakehighlighterfactory.h"
#include <coreplugin/featureprovider.h>
#include <coreplugin/icore.h>
#include <coreplugin/mimedatabase.h>
#include <texteditor/texteditoractionhandler.h>
@@ -69,7 +68,7 @@ CMakeProjectPlugin::~CMakeProjectPlugin()
bool CMakeProjectPlugin::initialize(const QStringList & /*arguments*/, QString *errorMessage)
{
if (!Core::ICore::mimeDatabase()->addMimeTypes(QLatin1String(":cmakeproject/CMakeProjectManager.mimetypes.xml"), errorMessage))
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(":cmakeproject/CMakeProjectManager.mimetypes.xml"), errorMessage))
return false;
CMakeSettingsPage *cmp = new CMakeSettingsPage();
addAutoReleasedObject(cmp);
+14 -14
View File
@@ -77,8 +77,8 @@ public:
QString id;
QString category;
QString displayCategory;
Core::FeatureSet requiredFeatures;
Core::IWizard::WizardFlags flags;
FeatureSet requiredFeatures;
IWizard::WizardFlags flags;
QString descriptionImage;
};
@@ -210,12 +210,12 @@ QString BaseFileWizardParameters::displayCategory() const
return m_d->displayCategory;
}
Core::FeatureSet BaseFileWizardParameters::requiredFeatures() const
FeatureSet BaseFileWizardParameters::requiredFeatures() const
{
return m_d->requiredFeatures;
}
void BaseFileWizardParameters::setRequiredFeatures(Core::FeatureSet features)
void BaseFileWizardParameters::setRequiredFeatures(FeatureSet features)
{
m_d->requiredFeatures = features;
@@ -226,12 +226,12 @@ void BaseFileWizardParameters::setDisplayCategory(const QString &v)
m_d->displayCategory = v;
}
Core::IWizard::WizardFlags BaseFileWizardParameters::flags() const
IWizard::WizardFlags BaseFileWizardParameters::flags() const
{
return m_d->flags;
}
void BaseFileWizardParameters::setFlags(Core::IWizard::WizardFlags flags)
void BaseFileWizardParameters::setFlags(IWizard::WizardFlags flags)
{
m_d->flags = flags;
}
@@ -537,8 +537,8 @@ void BaseFileWizard::runWizard(const QString &path, QWidget *parent, const QStri
if (removeOpenProjectAttribute) {
for (int i = 0; i < files.count(); i++) {
if (files[i].attributes() & Core::GeneratedFile::OpenProjectAttribute)
files[i].setAttributes(Core::GeneratedFile::OpenEditorAttribute);
if (files[i].attributes() & GeneratedFile::OpenProjectAttribute)
files[i].setAttributes(GeneratedFile::OpenEditorAttribute);
}
}
@@ -549,12 +549,12 @@ void BaseFileWizard::runWizard(const QString &path, QWidget *parent, const QStri
}
Core::FeatureSet BaseFileWizard::requiredFeatures() const
FeatureSet BaseFileWizard::requiredFeatures() const
{
return d->m_parameters.requiredFeatures();
}
Core::IWizard::WizardFlags BaseFileWizard::flags() const
IWizard::WizardFlags BaseFileWizard::flags() const
{
return d->m_parameters.flags();
}
@@ -649,9 +649,9 @@ bool BaseFileWizard::postGenerateFiles(const QWizard *, const GeneratedFiles &l,
bool BaseFileWizard::postGenerateOpenEditors(const GeneratedFiles &l, QString *errorMessage)
{
foreach (const Core::GeneratedFile &file, l) {
if (file.attributes() & Core::GeneratedFile::OpenEditorAttribute) {
if (!Core::EditorManager::openEditor(file.path(), file.editorId())) {
foreach (const GeneratedFile &file, l) {
if (file.attributes() & GeneratedFile::OpenEditorAttribute) {
if (!EditorManager::openEditor(file.path(), file.editorId())) {
if (errorMessage)
*errorMessage = tr("Failed to open an editor for '%1'.").arg(QDir::toNativeSeparators(file.path()));
return false;
@@ -773,7 +773,7 @@ QString BaseFileWizard::buildFileName(const QString &path,
QString BaseFileWizard::preferredSuffix(const QString &mimeType)
{
const QString rc = Core::ICore::mimeDatabase()->preferredSuffixByType(mimeType);
const QString rc = MimeDatabase::preferredSuffixByType(mimeType);
if (rc.isEmpty())
qWarning("%s: WARNING: Unable to find a preferred suffix for %s.",
Q_FUNC_INFO, mimeType.toUtf8().constData());
+2 -2
View File
@@ -759,7 +759,7 @@ QString DocumentManager::getSaveAsFileName(const IDocument *document, const QStr
QString filterString;
if (filter.isEmpty()) {
if (const MimeType &mt = Core::ICore::mimeDatabase()->findByFile(fi))
if (const MimeType &mt = MimeDatabase::findByFile(fi))
filterString = mt.filterString();
selectedFilter = &filterString;
} else {
@@ -1298,7 +1298,7 @@ void DocumentManager::populateOpenWithMenu(QMenu *menu, const QString &fileName)
bool anyMatches = false;
if (const MimeType mt = ICore::mimeDatabase()->findByFile(QFileInfo(fileName))) {
if (const MimeType mt = MimeDatabase::findByFile(QFileInfo(fileName))) {
const EditorFactoryList factories = EditorManager::editorFactories(mt, false);
const ExternalEditorList externalEditors = EditorManager::externalEditors(mt, false);
anyMatches = !factories.empty() || !externalEditors.empty();
@@ -1280,8 +1280,7 @@ Core::IEditor *EditorManager::activateEditorForDocument(Core::Internal::EditorVi
* or IExternalEditor), find the one best matching the mimetype passed in.
* Recurse over the parent classes of the mimetype to find them. */
template <class EditorFactoryLike>
static void mimeTypeFactoryRecursion(const MimeDatabase *db,
const MimeType &mimeType,
static void mimeTypeFactoryRecursion(const MimeType &mimeType,
const QList<EditorFactoryLike*> &allFactories,
bool firstMatchOnly,
QList<EditorFactoryLike*> *list)
@@ -1305,8 +1304,8 @@ static void mimeTypeFactoryRecursion(const MimeDatabase *db,
return;
const QStringList::const_iterator pcend = parentTypes .constEnd();
for (QStringList::const_iterator pit = parentTypes .constBegin(); pit != pcend; ++pit) {
if (const MimeType parent = db->findByType(*pit))
mimeTypeFactoryRecursion(db, parent, allFactories, firstMatchOnly, list);
if (const MimeType parent = MimeDatabase::findByType(*pit))
mimeTypeFactoryRecursion(parent, allFactories, firstMatchOnly, list);
}
}
@@ -1315,7 +1314,7 @@ EditorManager::EditorFactoryList
{
EditorFactoryList rc;
const EditorFactoryList allFactories = ExtensionSystem::PluginManager::getObjects<IEditorFactory>();
mimeTypeFactoryRecursion(ICore::mimeDatabase(), mimeType, allFactories, bestMatchOnly, &rc);
mimeTypeFactoryRecursion(mimeType, allFactories, bestMatchOnly, &rc);
if (debugEditorManager)
qDebug() << Q_FUNC_INFO << mimeType.type() << " returns " << rc;
return rc;
@@ -1326,7 +1325,7 @@ EditorManager::ExternalEditorList
{
ExternalEditorList rc;
const ExternalEditorList allEditors = ExtensionSystem::PluginManager::getObjects<IExternalEditor>();
mimeTypeFactoryRecursion(ICore::mimeDatabase(), mimeType, allEditors, bestMatchOnly, &rc);
mimeTypeFactoryRecursion(mimeType, allEditors, bestMatchOnly, &rc);
if (debugEditorManager)
qDebug() << Q_FUNC_INFO << mimeType.type() << " returns " << rc;
return rc;
@@ -1353,15 +1352,15 @@ IEditor *EditorManager::createEditor(const Id &editorId, const QString &fileName
if (!editorId.isValid()) {
const QFileInfo fileInfo(fileName);
// Find by mime type
MimeType mimeType = ICore::mimeDatabase()->findByFile(fileInfo);
MimeType mimeType = MimeDatabase::findByFile(fileInfo);
if (!mimeType) {
qWarning("%s unable to determine mime type of %s/%s. Falling back to text/plain",
Q_FUNC_INFO, fileName.toUtf8().constData(), editorId.name().constData());
mimeType = ICore::mimeDatabase()->findByType(QLatin1String("text/plain"));
mimeType = MimeDatabase::findByType(QLatin1String("text/plain"));
}
// open text files > 48 MB in binary editor
if (fileInfo.size() > maxTextFileSize() && mimeType.type().startsWith(QLatin1String("text")))
mimeType = ICore::mimeDatabase()->findByType(QLatin1String("application/octet-stream"));
mimeType = MimeDatabase::findByType(QLatin1String("application/octet-stream"));
factories = editorFactories(mimeType, true);
} else {
// Find by editor id
@@ -1406,10 +1405,10 @@ Core::Id EditorManager::getOpenWithEditorId(const QString &fileName,
bool *isExternalEditor)
{
// Collect editors that can open the file
MimeType mt = ICore::mimeDatabase()->findByFile(fileName);
MimeType mt = MimeDatabase::findByFile(fileName);
//Unable to determine mime type of fileName. Falling back to text/plain",
if (!mt)
mt = ICore::mimeDatabase()->findByType(QLatin1String("text/plain"));
mt = MimeDatabase::findByType(QLatin1String("text/plain"));
QList<Id> allEditorIds;
QStringList allEditorDisplayNames;
QList<Id> externalEditorIds;
@@ -1606,7 +1605,7 @@ bool EditorManager::openExternalEditor(const QString &fileName, const Core::Id &
QStringList EditorManager::getOpenFileNames()
{
QString selectedFilter;
const QString &fileFilters = ICore::mimeDatabase()->allFiltersString(&selectedFilter);
const QString &fileFilters = MimeDatabase::allFiltersString(&selectedFilter);
return DocumentManager::getOpenFileNames(fileFilters, QString(), &selectedFilter);
}
@@ -1769,9 +1768,9 @@ bool EditorManager::saveDocumentAs(IDocument *documentParam)
if (!document)
return false;
const QString &filter = ICore::mimeDatabase()->allFiltersString();
const QString filter = MimeDatabase::allFiltersString();
QString selectedFilter =
ICore::mimeDatabase()->findByFile(QFileInfo(document->filePath())).filterString();
MimeDatabase::findByFile(QFileInfo(document->filePath())).filterString();
const QString &absoluteFilePath =
DocumentManager::getSaveAsFileName(document, filter, &selectedFilter);
-12
View File
@@ -114,13 +114,6 @@
the plugin manager's object pool.
*/
/*!
\fn MimeDatabase *ICore::mimeDatabase()
\brief Returns the application's mime database.
Use the mime database to manage mime types.
*/
/*!
\fn QSettings *ICore::settings(QSettings::Scope scope = QSettings::UserScope)
\brief Returns the application's main settings object.
@@ -361,11 +354,6 @@ VcsManager *ICore::vcsManager()
return m_mainwindow->vcsManager();
}
MimeDatabase *ICore::mimeDatabase()
{
return m_mainwindow->mimeDatabase();
}
QSettings *ICore::settings(QSettings::Scope scope)
{
return m_mainwindow->settings(scope);
-2
View File
@@ -47,7 +47,6 @@ namespace Core {
class IWizard;
class Context;
class IContext;
class MimeDatabase;
class ProgressManager;
class SettingsDatabase;
class VcsManager;
@@ -82,7 +81,6 @@ public:
QWidget *parent = 0);
static VcsManager *vcsManager();
static MimeDatabase *mimeDatabase();
static QSettings *settings(QSettings::Scope scope = QSettings::UserScope);
static SettingsDatabase *settingsDatabase();
+59 -57
View File
@@ -1276,7 +1276,6 @@ public:
void debug(QTextStream &str) const;
private:
typedef QHash<QString, MimeMapEntry> TypeMimeTypeMap;
typedef QHash<QString, QString> AliasMap;
typedef QMultiHash<QString, QString> ParentChildrenMap;
@@ -1297,6 +1296,7 @@ private:
AliasMap m_aliasMap;
ParentChildrenMap m_parentChildrenMap;
int m_maxLevel;
QMutex m_mutex;
};
const QChar MimeDatabasePrivate::kSemiColon(QLatin1Char(';'));
@@ -1825,9 +1825,11 @@ void MimeDatabasePrivate::debug(QTextStream &str) const
str << "<MimeDatabase\n";
}
MimeDatabase::MimeDatabase() :
d(new MimeDatabasePrivate)
static MimeDatabasePrivate *d;
MimeDatabase::MimeDatabase()
{
d = new MimeDatabasePrivate;
}
MimeDatabase::~MimeDatabase()
@@ -1835,75 +1837,75 @@ MimeDatabase::~MimeDatabase()
delete d;
}
MimeType MimeDatabase::findByType(const QString &typeOrAlias) const
MimeType MimeDatabase::findByType(const QString &typeOrAlias)
{
m_mutex.lock();
d->m_mutex.lock();
const MimeType rc = d->findByType(typeOrAlias);
m_mutex.unlock();
d->m_mutex.unlock();
return rc;
}
MimeType MimeDatabase::findByFileUnlocked(const QFileInfo &f) const
MimeType MimeDatabase::findByFileUnlocked(const QFileInfo &f)
{
return d->findByFile(f);
}
MimeType MimeDatabase::findByFile(const QFileInfo &f) const
MimeType MimeDatabase::findByFile(const QFileInfo &f)
{
m_mutex.lock();
d->m_mutex.lock();
const MimeType rc = findByFileUnlocked(f);
m_mutex.unlock();
d->m_mutex.unlock();
return rc;
}
MimeType MimeDatabase::findByData(const QByteArray &data) const
MimeType MimeDatabase::findByData(const QByteArray &data)
{
m_mutex.lock();
d->m_mutex.lock();
const MimeType rc = d->findByData(data);
m_mutex.unlock();
d->m_mutex.unlock();
return rc;
}
bool MimeDatabase::addMimeType(const MimeType &mt)
{
m_mutex.lock();
d->m_mutex.lock();
const bool rc = d->addMimeType(mt);
m_mutex.unlock();
d->m_mutex.unlock();
return rc;
}
bool MimeDatabase::addMimeTypes(const QString &fileName, QString *errorMessage)
{
m_mutex.lock();
d->m_mutex.lock();
const bool rc = d->addMimeTypes(fileName, errorMessage);
m_mutex.unlock();
d->m_mutex.unlock();
return rc;
}
bool MimeDatabase::addMimeTypes(QIODevice *device, QString *errorMessage)
{
m_mutex.lock();
d->m_mutex.lock();
const bool rc = d->addMimeTypes(device, errorMessage);
m_mutex.unlock();
d->m_mutex.unlock();
return rc;
}
QStringList MimeDatabase::suffixes() const
QStringList MimeDatabase::suffixes()
{
m_mutex.lock();
d->m_mutex.lock();
const QStringList rc = d->suffixes();
m_mutex.unlock();
d->m_mutex.unlock();
return rc;
}
QStringList MimeDatabase::filterStrings() const
QStringList MimeDatabase::filterStrings()
{
m_mutex.lock();
d->m_mutex.lock();
const QStringList rc = d->filterStrings();
m_mutex.unlock();
d->m_mutex.unlock();
return rc;
}
QString MimeDatabase::allFiltersString(QString *allFilesFilter) const
QString MimeDatabase::allFiltersString(QString *allFilesFilter)
{
if (allFilesFilter)
allFilesFilter->clear();
@@ -1927,58 +1929,58 @@ QString MimeDatabase::allFiltersString(QString *allFilesFilter) const
return filters.join(QLatin1String(";;"));
}
QList<MimeGlobPattern> MimeDatabase::globPatterns() const
QList<MimeGlobPattern> MimeDatabase::globPatterns()
{
m_mutex.lock();
d->m_mutex.lock();
const QList<MimeGlobPattern> rc = d->globPatterns();
m_mutex.unlock();
d->m_mutex.unlock();
return rc;
}
void MimeDatabase::setGlobPatterns(const QString &typeOrAlias,
const QList<MimeGlobPattern> &globPatterns)
{
m_mutex.lock();
d->m_mutex.lock();
d->setGlobPatterns(typeOrAlias, globPatterns);
m_mutex.unlock();
d->m_mutex.unlock();
}
MimeDatabase::IMagicMatcherList MimeDatabase::magicMatchers() const
MimeDatabase::IMagicMatcherList MimeDatabase::magicMatchers()
{
m_mutex.lock();
d->m_mutex.lock();
const IMagicMatcherList rc = d->magicMatchers();
m_mutex.unlock();
d->m_mutex.unlock();
return rc;
}
void MimeDatabase::setMagicMatchers(const QString &typeOrAlias,
const IMagicMatcherList &matchers)
{
m_mutex.lock();
d->m_mutex.lock();
d->setMagicMatchers(typeOrAlias, matchers);
m_mutex.unlock();
d->m_mutex.unlock();
}
QList<MimeType> MimeDatabase::mimeTypes() const
QList<MimeType> MimeDatabase::mimeTypes()
{
m_mutex.lock();
d->m_mutex.lock();
const QList<MimeType> &mimeTypes = d->mimeTypes();
m_mutex.unlock();
d->m_mutex.unlock();
return mimeTypes;
}
void MimeDatabase::syncUserModifiedMimeTypes()
{
m_mutex.lock();
d->m_mutex.lock();
d->syncUserModifiedMimeTypes();
m_mutex.unlock();
d->m_mutex.unlock();
}
void MimeDatabase::clearUserModifiedMimeTypes()
{
m_mutex.lock();
d->m_mutex.lock();
d->clearUserModifiedMimeTypes();
m_mutex.unlock();
d->m_mutex.unlock();
}
QList<MimeType> MimeDatabase::readUserModifiedMimeTypes()
@@ -1991,14 +1993,14 @@ void MimeDatabase::writeUserModifiedMimeTypes(const QList<MimeType> &mimeTypes)
MimeDatabasePrivate::writeUserModifiedMimeTypes(mimeTypes);
}
QString MimeDatabase::preferredSuffixByType(const QString &type) const
QString MimeDatabase::preferredSuffixByType(const QString &type)
{
if (const MimeType mt = findByType(type))
return mt.preferredSuffix(); // already does Mutex locking
return QString();
}
QString MimeDatabase::preferredSuffixByFile(const QFileInfo &f) const
QString MimeDatabase::preferredSuffixByFile(const QFileInfo &f)
{
if (const MimeType mt = findByFile(f))
return mt.preferredSuffix(); // already does Mutex locking
@@ -2007,9 +2009,9 @@ QString MimeDatabase::preferredSuffixByFile(const QFileInfo &f) const
bool MimeDatabase::setPreferredSuffix(const QString &typeOrAlias, const QString &suffix)
{
m_mutex.lock();
d->m_mutex.lock();
const bool rc = d->setPreferredSuffix(typeOrAlias, suffix);
m_mutex.unlock();
d->m_mutex.unlock();
return rc;
}
@@ -2023,15 +2025,15 @@ QStringList MimeDatabase::fromGlobPatterns(const QList<MimeGlobPattern> &globPat
return MimeDatabasePrivate::fromGlobPatterns(globPatterns);
}
QDebug operator<<(QDebug d, const MimeDatabase &mt)
{
QString s;
{
QTextStream str(&s);
mt.d->debug(str);
}
d << s;
return d;
}
//QDebug operator<<(QDebug d, const MimeDatabase &mt)
//{
// QString s;
// {
// QTextStream str(&s);
// d->debug(str);
// }
// db << s;
// return db;
//}
} // namespace Core
+20 -43
View File
@@ -261,80 +261,57 @@ public:
typedef IMagicMatcher::IMagicMatcherList IMagicMatcherList;
typedef IMagicMatcher::IMagicMatcherSharedPointer IMagicMatcherSharedPointer;
bool addMimeTypes(const QString &fileName, QString *errorMessage);
bool addMimeTypes(QIODevice *device, QString *errorMessage);
bool addMimeType(const MimeType &mt);
static bool addMimeTypes(const QString &fileName, QString *errorMessage);
static bool addMimeTypes(QIODevice *device, QString *errorMessage);
static bool addMimeType(const MimeType &mt);
// Returns a mime type or Null one if none found
MimeType findByType(const QString &type) const;
static MimeType findByType(const QString &type);
// Returns a mime type or Null one if none found
MimeType findByFile(const QFileInfo &f) const;
static MimeType findByFile(const QFileInfo &f);
// Returns a mime type or Null one if none found
MimeType findByData(const QByteArray &data) const;
// Convenience that mutex-locks the DB and calls a function
// of the signature 'void f(const MimeType &, const QFileInfo &, const QString &)'
// for each filename of a sequence. This avoids locking the DB for each
// single file.
template <class Iterator, typename Function>
inline void findByFile(Iterator i1, const Iterator &i2, Function f) const;
static MimeType findByData(const QByteArray &data);
// Return all known suffixes
QStringList suffixes() const;
bool setPreferredSuffix(const QString &typeOrAlias, const QString &suffix);
QString preferredSuffixByType(const QString &type) const;
QString preferredSuffixByFile(const QFileInfo &f) const;
static QStringList suffixes();
static bool setPreferredSuffix(const QString &typeOrAlias, const QString &suffix);
static QString preferredSuffixByType(const QString &type);
static QString preferredSuffixByFile(const QFileInfo &f);
QStringList filterStrings() const;
static QStringList filterStrings();
// Return a string with all the possible file filters, for use with file dialogs
QString allFiltersString(QString *allFilesFilter = 0) const;
static QString allFiltersString(QString *allFilesFilter = 0);
QList<MimeGlobPattern> globPatterns() const;
void setGlobPatterns(const QString &typeOrAlias, const QList<MimeGlobPattern> &globPatterns);
static QList<MimeGlobPattern> globPatterns();
static void setGlobPatterns(const QString &typeOrAlias, const QList<MimeGlobPattern> &globPatterns);
IMagicMatcherList magicMatchers() const;
void setMagicMatchers(const QString &typeOrAlias, const IMagicMatcherList &matchers);
static IMagicMatcherList magicMatchers();
static void setMagicMatchers(const QString &typeOrAlias, const IMagicMatcherList &matchers);
QList<MimeType> mimeTypes() const;
static QList<MimeType> mimeTypes();
// The mime types from the functions bellow are considered only in regard to
// their glob patterns and rule-based magic matchers.
void syncUserModifiedMimeTypes();
static void syncUserModifiedMimeTypes();
static QList<MimeType> readUserModifiedMimeTypes();
static void writeUserModifiedMimeTypes(const QList<MimeType> &mimeTypes);
void clearUserModifiedMimeTypes();
static void clearUserModifiedMimeTypes();
static QList<MimeGlobPattern> toGlobPatterns(const QStringList &patterns,
int weight = MimeGlobPattern::MaxWeight);
static QStringList fromGlobPatterns(const QList<MimeGlobPattern> &globPatterns);
friend QDebug operator<<(QDebug d, const MimeDatabase &mt);
private:
MimeDatabase();
~MimeDatabase();
MimeType findByFileUnlocked(const QFileInfo &f) const;
MimeDatabasePrivate *d;
mutable QMutex m_mutex;
static MimeType findByFileUnlocked(const QFileInfo &f);
friend class Core::Internal::MainWindow;
};
template <class Iterator, typename Function>
void MimeDatabase::findByFile(Iterator i1, const Iterator &i2, Function f) const
{
m_mutex.lock();
for ( ; i1 != i2; ++i1) {
const QFileInfo fi(*i1);
f(findByFileUnlocked(fi), fi, *i1);
}
m_mutex.unlock();
}
} // namespace Core
#endif // MIMEDATABASE_H
+7 -10
View File
@@ -126,10 +126,10 @@ QVariant MimeTypeSettingsModel::data(const QModelIndex &modelIndex, int role) co
void MimeTypeSettingsModel::load()
{
m_mimeTypes = ICore::mimeDatabase()->mimeTypes();
m_mimeTypes = MimeDatabase::mimeTypes();
qSort(m_mimeTypes.begin(), m_mimeTypes.end(), MimeTypeComp());
m_knownPatterns = QSet<QString>::fromList(
MimeDatabase::fromGlobPatterns(ICore::mimeDatabase()->globPatterns()));
MimeDatabase::fromGlobPatterns(MimeDatabase::globPatterns()));
foreach (const MimeType &mimeType, m_mimeTypes) {
QString value;
@@ -240,7 +240,6 @@ public:
static const QChar kSemiColon;
QString m_keywords;
MimeDatabase *m_mimeDatabase;
MimeTypeSettingsModel *m_model;
QSortFilterProxyModel *m_filterModel;
int m_mimeForPatternSync;
@@ -255,8 +254,7 @@ public:
const QChar MimeTypeSettingsPrivate::kSemiColon(QLatin1Char(';'));
MimeTypeSettingsPrivate::MimeTypeSettingsPrivate()
: m_mimeDatabase(ICore::mimeDatabase())
, m_model(new MimeTypeSettingsModel(this))
: m_model(new MimeTypeSettingsModel(this))
, m_filterModel(new QSortFilterProxyModel(this))
, m_mimeForPatternSync(-1)
, m_mimeForMagicSync(-1)
@@ -529,15 +527,14 @@ void MimeTypeSettingsPrivate::updateMimeDatabase()
m_modifiedMimeTypes.erase(std::unique(m_modifiedMimeTypes.begin(), m_modifiedMimeTypes.end()),
m_modifiedMimeTypes.end());
MimeDatabase *db = ICore::mimeDatabase();
QList<MimeType> allModified;
foreach (int index, m_modifiedMimeTypes) {
const MimeType &mimeType = m_model->m_mimeTypes.at(index);
db->setGlobPatterns(mimeType.type(), mimeType.globPatterns());
db->setMagicMatchers(mimeType.type(), mimeType.magicMatchers());
MimeDatabase::setGlobPatterns(mimeType.type(), mimeType.globPatterns());
MimeDatabase::setMagicMatchers(mimeType.type(), mimeType.magicMatchers());
allModified.append(mimeType);
}
db->writeUserModifiedMimeTypes(allModified);
MimeDatabase::writeUserModifiedMimeTypes(allModified);
}
void MimeTypeSettingsPrivate::resetState()
@@ -623,7 +620,7 @@ void MimeTypeSettings::finish()
{
if (d->m_persist) {
if (d->m_reset)
ICore::mimeDatabase()->clearUserModifiedMimeTypes();
MimeDatabase::clearUserModifiedMimeTypes();
else
d->updateMimeDatabase();
}
+1 -1
View File
@@ -363,7 +363,7 @@ void CodepasterPlugin::finishFetch(const QString &titleDescription,
// Default to "txt".
QByteArray byteContent = content.toUtf8();
QString suffix;
if (const Core::MimeType mimeType = Core::ICore::mimeDatabase()->findByData(byteContent))
if (const Core::MimeType mimeType = Core::MimeDatabase::findByData(byteContent))
suffix = mimeType.preferredSuffix();
if (suffix.isEmpty())
suffix = QLatin1String("txt");
+2 -3
View File
@@ -96,9 +96,8 @@ static bool lowerCaseFiles()
// Set up new class widget from settings
void ClassNamePage::initParameters()
{
const Core::MimeDatabase *mdb = Core::ICore::mimeDatabase();
m_newClassWidget->setHeaderExtension(mdb->preferredSuffixByType(QLatin1String(Constants::CPP_HEADER_MIMETYPE)));
m_newClassWidget->setSourceExtension(mdb->preferredSuffixByType(QLatin1String(Constants::CPP_SOURCE_MIMETYPE)));
m_newClassWidget->setHeaderExtension(Core::MimeDatabase::preferredSuffixByType(QLatin1String(Constants::CPP_HEADER_MIMETYPE)));
m_newClassWidget->setSourceExtension(Core::MimeDatabase::preferredSuffixByType(QLatin1String(Constants::CPP_SOURCE_MIMETYPE)));
m_newClassWidget->setLowerCaseFiles(lowerCaseFiles());
}
+2 -3
View File
@@ -1863,15 +1863,14 @@ Core::IEditor *CPPEditor::duplicate(QWidget *parent)
Core::Id CPPEditor::id() const
{
return Core::Id(CppEditor::Constants::CPPEDITOR_ID);
return CppEditor::Constants::CPPEDITOR_ID;
}
bool CPPEditor::open(QString *errorString, const QString &fileName, const QString &realFileName)
{
if (!TextEditor::BaseTextEditor::open(errorString, fileName, realFileName))
return false;
editorWidget()->setMimeType(
Core::ICore::mimeDatabase()->findByFile(QFileInfo(fileName)).type());
editorWidget()->setMimeType(Core::MimeDatabase::findByFile(QFileInfo(fileName)).type());
return true;
}
+4 -5
View File
@@ -79,13 +79,12 @@ CppEditorFactory::CppEditorFactory(CppEditorPlugin *owner) :
if (!Utils::HostOsInfo::isMacHost() && !Utils::HostOsInfo::isWindowsHost()) {
FileIconProvider *iconProvider = FileIconProvider::instance();
MimeDatabase *mimeDatabase = ICore::mimeDatabase();
iconProvider->registerIconOverlayForMimeType(QIcon(QLatin1String(":/cppeditor/images/qt_cpp.png")),
mimeDatabase->findByType(QLatin1String(CppEditor::Constants::CPP_SOURCE_MIMETYPE)));
MimeDatabase::findByType(QLatin1String(CppEditor::Constants::CPP_SOURCE_MIMETYPE)));
iconProvider->registerIconOverlayForMimeType(QIcon(QLatin1String(":/cppeditor/images/qt_c.png")),
mimeDatabase->findByType(QLatin1String(CppEditor::Constants::C_SOURCE_MIMETYPE)));
MimeDatabase::findByType(QLatin1String(CppEditor::Constants::C_SOURCE_MIMETYPE)));
iconProvider->registerIconOverlayForMimeType(QIcon(QLatin1String(":/cppeditor/images/qt_h.png")),
mimeDatabase->findByType(QLatin1String(CppEditor::Constants::CPP_HEADER_MIMETYPE)));
MimeDatabase::findByType(QLatin1String(CppEditor::Constants::CPP_HEADER_MIMETYPE)));
}
}
@@ -154,7 +153,7 @@ CppQuickFixAssistProvider *CppEditorPlugin::quickFixProvider() const
bool CppEditorPlugin::initialize(const QStringList & /*arguments*/, QString *errorMessage)
{
if (!ICore::mimeDatabase()->addMimeTypes(QLatin1String(":/cppeditor/CppEditor.mimetypes.xml"), errorMessage))
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(":/cppeditor/CppEditor.mimetypes.xml"), errorMessage))
return false;
addAutoReleasedObject(new CppEditorFactory(this));
+2 -3
View File
@@ -1155,7 +1155,7 @@ bool CppCompletionAssistProcessor::completeInclude(const QTextCursor &cursor)
includePaths.append(currentFilePath);
const Core::MimeType mimeType =
Core::ICore::mimeDatabase()->findByType(QLatin1String("text/x-c++hdr"));
Core::MimeDatabase::findByType(QLatin1String("text/x-c++hdr"));
const QStringList suffixes = mimeType.suffixes();
foreach (const QString &includePath, includePaths) {
@@ -1213,8 +1213,7 @@ bool CppCompletionAssistProcessor::objcKeywordsWanted() const
const QString fileName = m_interface->fileName();
const Core::MimeDatabase *mdb = Core::ICore::mimeDatabase();
const QString mt = mdb->findByFile(fileName).type();
const QString mt = Core::MimeDatabase::findByFile(fileName).type();
return mt == QLatin1String(CppTools::Constants::OBJECTIVE_C_SOURCE_MIMETYPE)
|| mt == QLatin1String(CppTools::Constants::OBJECTIVE_CPP_SOURCE_MIMETYPE);
}
+4 -6
View File
@@ -93,9 +93,8 @@ void CppFileSettings::fromSettings(QSettings *s)
bool CppFileSettings::applySuffixesToMimeDB()
{
Core::MimeDatabase *mdb = Core::ICore::mimeDatabase();
return mdb->setPreferredSuffix(QLatin1String(CppTools::Constants::CPP_SOURCE_MIMETYPE), sourceSuffix)
&& mdb->setPreferredSuffix(QLatin1String(CppTools::Constants::CPP_HEADER_MIMETYPE), headerSuffix);
return Core::MimeDatabase::setPreferredSuffix(QLatin1String(CppTools::Constants::CPP_SOURCE_MIMETYPE), sourceSuffix)
&& Core::MimeDatabase::setPreferredSuffix(QLatin1String(CppTools::Constants::CPP_HEADER_MIMETYPE), headerSuffix);
}
bool CppFileSettings::equals(const CppFileSettings &rhs) const
@@ -226,13 +225,12 @@ CppFileSettingsWidget::CppFileSettingsWidget(QWidget *parent) :
m_ui(new Internal::Ui::CppFileSettingsPage)
{
m_ui->setupUi(this);
const Core::MimeDatabase *mdb = Core::ICore::mimeDatabase();
// populate suffix combos
if (const Core::MimeType sourceMt = mdb->findByType(QLatin1String(CppTools::Constants::CPP_SOURCE_MIMETYPE)))
if (const Core::MimeType sourceMt = Core::MimeDatabase::findByType(QLatin1String(CppTools::Constants::CPP_SOURCE_MIMETYPE)))
foreach (const QString &suffix, sourceMt.suffixes())
m_ui->sourceSuffixComboBox->addItem(suffix);
if (const Core::MimeType headerMt = mdb->findByType(QLatin1String(CppTools::Constants::CPP_HEADER_MIMETYPE)))
if (const Core::MimeType headerMt = Core::MimeDatabase::findByType(QLatin1String(CppTools::Constants::CPP_HEADER_MIMETYPE)))
foreach (const QString &suffix, headerMt.suffixes())
m_ui->headerSuffixComboBox->addItem(suffix);
m_ui->licenseTemplatePathChooser->setExpectedKind(Utils::PathChooser::File);
+2 -4
View File
@@ -50,9 +50,8 @@ ProjectFile::ProjectFile(const QString &file, Kind kind)
ProjectFile::Kind ProjectFile::classify(const QString &file)
{
const Core::MimeDatabase *mimeDatabase = Core::ICore::mimeDatabase();
const QFileInfo fi(file);
const Core::MimeType mimeType = mimeDatabase->findByFile(fi);
const Core::MimeType mimeType = Core::MimeDatabase::findByFile(fi);
if (!mimeType)
return Unclassified;
const QString mt = mimeType.type();
@@ -130,8 +129,7 @@ bool ProjectFileAdder::maybeAdd(const QString &path)
void ProjectFileAdder::addMapping(const char *mimeName, ProjectFile::Kind kind)
{
const Core::MimeDatabase *mimeDatabase = Core::ICore::mimeDatabase();
Core::MimeType mimeType = mimeDatabase->findByType(QLatin1String(mimeName));
Core::MimeType mimeType = Core::MimeDatabase::findByType(QLatin1String(mimeName));
if (!mimeType.isNull())
m_mapping.append(Pair(mimeType, kind));
}
+19 -19
View File
@@ -60,6 +60,7 @@
#include <QMenu>
#include <QAction>
using namespace Core;
using namespace CPlusPlus;
namespace CppTools {
@@ -96,10 +97,10 @@ bool CppToolsPlugin::initialize(const QStringList &arguments, QString *error)
// Objects
CppModelManager *modelManager = CppModelManager::instance();
Core::VcsManager *vcsManager = Core::ICore::vcsManager();
VcsManager *vcsManager = ICore::vcsManager();
connect(vcsManager, SIGNAL(repositoryChanged(QString)),
modelManager, SLOT(updateModifiedSourceFiles()));
connect(Core::DocumentManager::instance(), SIGNAL(filesChangedInternally(QStringList)),
connect(DocumentManager::instance(), SIGNAL(filesChangedInternally(QStringList)),
modelManager, SLOT(updateSourceFiles(QStringList)));
CppLocatorData *locatorData = new CppLocatorData(modelManager);
@@ -113,24 +114,24 @@ bool CppToolsPlugin::initialize(const QStringList &arguments, QString *error)
addAutoReleasedObject(new CppCodeStyleSettingsPage);
// Menus
Core::ActionContainer *mtools = Core::ActionManager::actionContainer(Core::Constants::M_TOOLS);
Core::ActionContainer *mcpptools = Core::ActionManager::createMenu(CppTools::Constants::M_TOOLS_CPP);
ActionContainer *mtools = ActionManager::actionContainer(Core::Constants::M_TOOLS);
ActionContainer *mcpptools = ActionManager::createMenu(CppTools::Constants::M_TOOLS_CPP);
QMenu *menu = mcpptools->menu();
menu->setTitle(tr("&C++"));
menu->setEnabled(true);
mtools->addMenu(mcpptools);
// Actions
Core::Context context(CppEditor::Constants::C_CPPEDITOR);
Context context(CppEditor::Constants::C_CPPEDITOR);
QAction *switchAction = new QAction(tr("Switch Header/Source"), this);
Core::Command *command = Core::ActionManager::registerAction(switchAction, Constants::SWITCH_HEADER_SOURCE, context, true);
Command *command = ActionManager::registerAction(switchAction, Constants::SWITCH_HEADER_SOURCE, context, true);
command->setDefaultKeySequence(QKeySequence(Qt::Key_F4));
mcpptools->addAction(command);
connect(switchAction, SIGNAL(triggered()), this, SLOT(switchHeaderSource()));
QAction *openInNextSplitAction = new QAction(tr("Open Corresponding Header/Source in Next Split"), this);
command = Core::ActionManager::registerAction(openInNextSplitAction, Constants::OPEN_HEADER_SOURCE_IN_NEXT_SPLIT, context, true);
command = ActionManager::registerAction(openInNextSplitAction, Constants::OPEN_HEADER_SOURCE_IN_NEXT_SPLIT, context, true);
command->setDefaultKeySequence(QKeySequence(Utils::HostOsInfo::isMacHost()
? tr("Meta+E, F4")
: tr("Ctrl+E, F4")));
@@ -144,7 +145,7 @@ void CppToolsPlugin::extensionsInitialized()
{
// The Cpp editor plugin, which is loaded later on, registers the Cpp mime types,
// so, apply settings here
m_fileSettings->fromSettings(Core::ICore::settings());
m_fileSettings->fromSettings(ICore::settings());
if (!m_fileSettings->applySuffixesToMimeDB())
qWarning("Unable to apply cpp suffixes to mime database (cpp mime types not found).\n");
}
@@ -157,17 +158,17 @@ ExtensionSystem::IPlugin::ShutdownFlag CppToolsPlugin::aboutToShutdown()
void CppToolsPlugin::switchHeaderSource()
{
QString otherFile = correspondingHeaderOrSource(
Core::EditorManager::currentDocument()->filePath());
EditorManager::currentDocument()->filePath());
if (!otherFile.isEmpty())
Core::EditorManager::openEditor(otherFile);
EditorManager::openEditor(otherFile);
}
void CppToolsPlugin::switchHeaderSourceInNextSplit()
{
QString otherFile = correspondingHeaderOrSource(
Core::EditorManager::currentDocument()->filePath());
EditorManager::currentDocument()->filePath());
if (!otherFile.isEmpty())
Core::EditorManager::openEditor(otherFile, Core::Id(), Core::EditorManager::OpenInOtherSplit);
EditorManager::openEditor(otherFile, Id(), EditorManager::OpenInOtherSplit);
}
static QStringList findFilesInProject(const QString &name,
@@ -195,25 +196,24 @@ static QStringList findFilesInProject(const QString &name,
// source belonging to a header and vice versa
static QStringList matchingCandidateSuffixes(ProjectFile::Kind kind)
{
Core::MimeDatabase *md = Core::ICore::instance()->mimeDatabase();
switch (kind) {
// Note that C/C++ headers are undistinguishable
case ProjectFile::CHeader:
case ProjectFile::CXXHeader:
case ProjectFile::ObjCHeader:
case ProjectFile::ObjCXXHeader:
return md->findByType(QLatin1String(Constants::C_SOURCE_MIMETYPE)).suffixes()
+ md->findByType(QLatin1String(Constants::CPP_SOURCE_MIMETYPE)).suffixes()
+ md->findByType(QLatin1String(Constants::OBJECTIVE_C_SOURCE_MIMETYPE)).suffixes()
+ md->findByType(QLatin1String(Constants::OBJECTIVE_CPP_SOURCE_MIMETYPE)).suffixes();
return MimeDatabase::findByType(QLatin1String(Constants::C_SOURCE_MIMETYPE)).suffixes()
+ MimeDatabase::findByType(QLatin1String(Constants::CPP_SOURCE_MIMETYPE)).suffixes()
+ MimeDatabase::findByType(QLatin1String(Constants::OBJECTIVE_C_SOURCE_MIMETYPE)).suffixes()
+ MimeDatabase::findByType(QLatin1String(Constants::OBJECTIVE_CPP_SOURCE_MIMETYPE)).suffixes();
case ProjectFile::CSource:
case ProjectFile::ObjCSource:
return md->findByType(QLatin1String(Constants::C_HEADER_MIMETYPE)).suffixes();
return MimeDatabase::findByType(QLatin1String(Constants::C_HEADER_MIMETYPE)).suffixes();
case ProjectFile::CXXSource:
case ProjectFile::ObjCXXSource:
case ProjectFile::CudaSource:
case ProjectFile::OpenCLSource:
return md->findByType(QLatin1String(Constants::CPP_HEADER_MIMETYPE)).suffixes();
return MimeDatabase::findByType(QLatin1String(Constants::CPP_HEADER_MIMETYPE)).suffixes();
default:
return QStringList();
}
+1 -1
View File
@@ -231,7 +231,7 @@ bool CvsPlugin::initialize(const QStringList &arguments, QString *errorMessage)
m_cvsPluginInstance = this;
if (!ICore::mimeDatabase()->addMimeTypes(QLatin1String(":/trolltech.cvs/CVS.mimetypes.xml"), errorMessage))
if (!MimeDatabase::addMimeTypes(QLatin1String(":/trolltech.cvs/CVS.mimetypes.xml"), errorMessage))
return false;
m_settings.fromSettings(ICore::settings());
+1 -1
View File
@@ -255,7 +255,7 @@ void DisassemblerAgentPrivate::configureMimeType()
qobject_cast<TextEditor::PlainTextEditorWidget *>(editor->widget());
QTC_ASSERT(pe, return);
MimeType mtype = ICore::mimeDatabase()->findByType(mimeType);
MimeType mtype = MimeDatabase::findByType(mimeType);
if (mtype)
pe->configure(mtype);
else
@@ -79,9 +79,8 @@ bool FormClassWizardPage::lowercaseHeaderFiles()
// Set up new class widget from settings
void FormClassWizardPage::initFileGenerationSettings()
{
const Core::MimeDatabase *mdb = Core::ICore::mimeDatabase();
m_ui->newClassWidget->setHeaderExtension(mdb->preferredSuffixByType(QLatin1String(CppTools::Constants::CPP_HEADER_MIMETYPE)));
m_ui->newClassWidget->setSourceExtension(mdb->preferredSuffixByType(QLatin1String(CppTools::Constants::CPP_SOURCE_MIMETYPE)));
m_ui->newClassWidget->setHeaderExtension(Core::MimeDatabase::preferredSuffixByType(QLatin1String(CppTools::Constants::CPP_HEADER_MIMETYPE)));
m_ui->newClassWidget->setSourceExtension(Core::MimeDatabase::preferredSuffixByType(QLatin1String(CppTools::Constants::CPP_SOURCE_MIMETYPE)));
m_ui->newClassWidget->setLowerCaseFiles(lowercaseHeaderFiles());
}
+7 -7
View File
@@ -50,6 +50,7 @@
#include <QTranslator>
#include <QtPlugin>
using namespace Core;
using namespace Designer::Internal;
using namespace Designer::Constants;
@@ -70,9 +71,8 @@ FormEditorPlugin::~FormEditorPlugin()
bool FormEditorPlugin::initialize(const QStringList &arguments, QString *error)
{
Q_UNUSED(arguments)
Q_UNUSED(error)
if (!Core::ICore::mimeDatabase()->addMimeTypes(QLatin1String(":/formeditor/Designer.mimetypes.xml"), error))
if (!MimeDatabase::addMimeTypes(QLatin1String(":/formeditor/Designer.mimetypes.xml"), error))
return false;
initializeTemplates();
@@ -81,11 +81,11 @@ bool FormEditorPlugin::initialize(const QStringList &arguments, QString *error)
addAutoReleasedObject(new SettingsPageProvider);
addAutoReleasedObject(new QtDesignerFormClassCodeGenerator);
// Ensure that loading designer translations is done before FormEditorW is instantiated
const QString locale = Core::ICore::userInterfaceLanguage();
const QString locale = ICore::userInterfaceLanguage();
if (!locale.isEmpty()) {
QTranslator *qtr = new QTranslator(this);
const QString &creatorTrPath =
Core::ICore::resourcePath() + QLatin1String("/translations");
ICore::resourcePath() + QLatin1String("/translations");
const QString &qtTrPath = QLibraryInfo::location(QLibraryInfo::TranslationsPath);
const QString &trFile = QLatin1String("designer_") + locale;
if (qtr->load(trFile, qtTrPath) || qtr->load(trFile, creatorTrPath))
@@ -97,7 +97,7 @@ bool FormEditorPlugin::initialize(const QStringList &arguments, QString *error)
void FormEditorPlugin::extensionsInitialized()
{
Core::DesignMode::instance()->setDesignModeIsRequired();
DesignMode::instance()->setDesignModeIsRequired();
// 4) test and make sure everything works (undo, saving, editors, opening/closing multiple files, dirtiness etc)
}
@@ -109,7 +109,7 @@ void FormEditorPlugin::extensionsInitialized()
void FormEditorPlugin::initializeTemplates()
{
FormWizard::BaseFileWizardParameters wizardParameters(Core::IWizard::FileWizard);
FormWizard::BaseFileWizardParameters wizardParameters(IWizard::FileWizard);
wizardParameters.setCategory(QLatin1String(Core::Constants::WIZARD_CATEGORY_QT));
wizardParameters.setDisplayCategory(QCoreApplication::translate("Core", Core::Constants::WIZARD_TR_CATEGORY_QT));
const QString formFileType = QLatin1String(Constants::FORM_FILE_TYPE);
@@ -120,7 +120,7 @@ void FormEditorPlugin::initializeTemplates()
addAutoReleasedObject(new FormWizard(wizardParameters, this));
#ifdef CPP_ENABLED
wizardParameters.setKind(Core::IWizard::ClassWizard);
wizardParameters.setKind(IWizard::ClassWizard);
wizardParameters.setDisplayName(tr("Qt Designer Form Class"));
wizardParameters.setId(QLatin1String("C.FormClass"));
wizardParameters.setDescription(tr("Creates a Qt Designer form along with a matching class (C++ header and source file) "
+100 -106
View File
@@ -113,6 +113,7 @@ static inline QIcon designerIcon(const QString &iconName)
return icon;
}
using namespace Core;
using namespace Designer::Constants;
namespace Designer {
@@ -150,7 +151,7 @@ FormEditorW::FormEditorW() :
qFill(m_designerSubWindows, m_designerSubWindows + Designer::Constants::DesignerSubWindowCount,
static_cast<QWidget *>(0));
m_formeditor->setTopLevel(Core::ICore::mainWindow());
m_formeditor->setTopLevel(ICore::mainWindow());
m_formeditor->setSettingsManager(new SettingsManager());
#if QT_VERSION >= 0x050000
@@ -169,7 +170,7 @@ FormEditorW::FormEditorW() :
m_settingsPages.append(settingsPage);
}
connect(Core::EditorManager::instance(), SIGNAL(currentEditorChanged(Core::IEditor*)),
connect(EditorManager::instance(), SIGNAL(currentEditorChanged(Core::IEditor*)),
this, SLOT(currentEditorChanged(Core::IEditor*)));
connect(m_shortcutMapper, SIGNAL(mapped(QObject*)),
this, SLOT(updateShortcut(QObject*)));
@@ -178,9 +179,9 @@ FormEditorW::FormEditorW() :
FormEditorW::~FormEditorW()
{
if (m_context)
Core::ICore::removeContextObject(m_context);
ICore::removeContextObject(m_context);
if (m_initStage == FullyInitialized) {
QSettings *s = Core::ICore::settings();
QSettings *s = ICore::settings();
s->beginGroup(QLatin1String(settingsGroupC));
m_editorWidget->saveSettings(s);
s->endGroup();
@@ -199,51 +200,51 @@ FormEditorW::~FormEditorW()
}
// Add an actioon to toggle the view state of a dock window
void FormEditorW::addDockViewAction(Core::ActionContainer *viewMenu,
int index, const Core::Context &context,
const QString &title, const Core::Id &id)
void FormEditorW::addDockViewAction(ActionContainer *viewMenu,
int index, const Context &context,
const QString &title, const Id &id)
{
if (const QDockWidget *dw = m_editorWidget->designerDockWidgets()[index]) {
QAction *action = dw->toggleViewAction();
action->setText(title);
Core::Command *cmd = addToolAction(action, context, id, viewMenu, QString());
cmd->setAttribute(Core::Command::CA_Hide);
Command *cmd = addToolAction(action, context, id, viewMenu, QString());
cmd->setAttribute(Command::CA_Hide);
}
}
void FormEditorW::setupViewActions()
{
// Populate "View" menu of form editor menu
Core::ActionContainer *viewMenu = Core::ActionManager::actionContainer(Core::Id(Core::Constants::M_WINDOW_VIEWS));
ActionContainer *viewMenu = ActionManager::actionContainer(Core::Constants::M_WINDOW_VIEWS);
QTC_ASSERT(viewMenu, return);
addDockViewAction(viewMenu, WidgetBoxSubWindow, m_contexts,
tr("Widget box"), Core::Id("FormEditor.WidgetBox"));
tr("Widget box"), "FormEditor.WidgetBox");
addDockViewAction(viewMenu, ObjectInspectorSubWindow, m_contexts,
tr("Object Inspector"), Core::Id("FormEditor.ObjectInspector"));
tr("Object Inspector"), "FormEditor.ObjectInspector");
addDockViewAction(viewMenu, PropertyEditorSubWindow, m_contexts,
tr("Property Editor"), Core::Id("FormEditor.PropertyEditor"));
tr("Property Editor"), "FormEditor.PropertyEditor");
addDockViewAction(viewMenu, SignalSlotEditorSubWindow, m_contexts,
tr("Signals && Slots Editor"), Core::Id("FormEditor.SignalsAndSlotsEditor"));
tr("Signals && Slots Editor"), "FormEditor.SignalsAndSlotsEditor");
addDockViewAction(viewMenu, ActionEditorSubWindow, m_contexts,
tr("Action Editor"), Core::Id("FormEditor.ActionEditor"));
tr("Action Editor"), "FormEditor.ActionEditor");
// Lock/Reset
Core::Command *cmd = addToolAction(m_editorWidget->menuSeparator1(), m_contexts, Core::Id("FormEditor.SeparatorLock"), viewMenu, QString());
cmd->setAttribute(Core::Command::CA_Hide);
Command *cmd = addToolAction(m_editorWidget->menuSeparator1(), m_contexts, "FormEditor.SeparatorLock", viewMenu);
cmd->setAttribute(Command::CA_Hide);
cmd = addToolAction(m_editorWidget->toggleLockedAction(), m_contexts, Core::Id("FormEditor.Locked"), viewMenu, QString());
cmd->setAttribute(Core::Command::CA_Hide);
cmd = addToolAction(m_editorWidget->toggleLockedAction(), m_contexts, "FormEditor.Locked", viewMenu);
cmd->setAttribute(Command::CA_Hide);
cmd = addToolAction(m_editorWidget->menuSeparator2(), m_contexts, Core::Id("FormEditor.SeparatorReset"), viewMenu, QString());
cmd->setAttribute(Core::Command::CA_Hide);
cmd = addToolAction(m_editorWidget->menuSeparator2(), m_contexts, "FormEditor.SeparatorReset", viewMenu);
cmd->setAttribute(Command::CA_Hide);
cmd = addToolAction(m_editorWidget->resetLayoutAction(), m_contexts, Core::Id("FormEditor.ResetToDefaultLayout"), viewMenu, QString());
cmd = addToolAction(m_editorWidget->resetLayoutAction(), m_contexts, "FormEditor.ResetToDefaultLayout", viewMenu);
connect(m_editorWidget, SIGNAL(resetLayout()), m_editorWidget, SLOT(resetToDefaultLayout()));
cmd->setAttribute(Core::Command::CA_Hide);
cmd->setAttribute(Command::CA_Hide);
}
void FormEditorW::fullInit()
@@ -263,7 +264,7 @@ void FormEditorW::fullInit()
m_formeditor->setIntegration(m_integration);
// Connect Qt Designer help request to HelpManager.
connect(m_integration, SIGNAL(creatorHelpRequested(QUrl)),
Core::HelpManager::instance(), SIGNAL(helpRequested(QUrl)));
HelpManager::instance(), SIGNAL(helpRequested(QUrl)));
/**
* This will initialize our TabOrder, Signals and slots and Buddy editors.
@@ -289,22 +290,22 @@ void FormEditorW::fullInit()
delete initTime;
}
connect(Core::EditorManager::instance(), SIGNAL(editorsClosed(QList<Core::IEditor*>)),
connect(EditorManager::instance(), SIGNAL(editorsClosed(QList<Core::IEditor*>)),
SLOT(closeFormEditorsForXmlEditors(QList<Core::IEditor*>)));
// Nest toolbar and editor widget
m_editorWidget = new EditorWidget(this);
QSettings *settings = Core::ICore::settings();
QSettings *settings = ICore::settings();
settings->beginGroup(QLatin1String(settingsGroupC));
m_editorWidget->restoreSettings(settings);
settings->endGroup();
m_editorToolBar = createEditorToolBar();
m_toolBar = Core::EditorManager::createToolBar();
m_toolBar->setToolbarCreationFlags(Core::EditorToolBar::FlagsStandalone);
m_toolBar = EditorManager::createToolBar();
m_toolBar->setToolbarCreationFlags(EditorToolBar::FlagsStandalone);
m_toolBar->setNavigationVisible(false);
m_toolBar->addCenterToolBar(m_editorToolBar);
m_designMode = Core::DesignMode::instance();
m_designMode = DesignMode::instance();
m_modeWidget = new QWidget;
m_modeWidget->setObjectName(QLatin1String("DesignerModeWidget"));
QVBoxLayout *layout = new QVBoxLayout;
@@ -313,18 +314,18 @@ void FormEditorW::fullInit()
layout->addWidget(m_toolBar);
// Avoid mode switch to 'Edit' mode when the application started by
// 'Run' in 'Design' mode emits output.
Core::MiniSplitter *splitter = new Core::MiniSplitter(Qt::Vertical);
MiniSplitter *splitter = new MiniSplitter(Qt::Vertical);
splitter->addWidget(m_editorWidget);
QWidget *outputPane = new Core::OutputPanePlaceHolder(m_designMode, splitter);
QWidget *outputPane = new OutputPanePlaceHolder(m_designMode, splitter);
outputPane->setObjectName(QLatin1String("DesignerOutputPanePlaceHolder"));
splitter->addWidget(outputPane);
layout->addWidget(splitter);
m_modeWidget->setLayout(layout);
Core::Context designerContexts = m_contexts;
Context designerContexts = m_contexts;
designerContexts.add(Core::Constants::C_EDITORMANAGER);
m_context = new DesignerContext(designerContexts, m_modeWidget, this);
Core::ICore::addContextObject(m_context);
ICore::addContextObject(m_context);
m_designMode->registerDesignWidget(m_modeWidget, QStringList(QLatin1String(FORM_MIMETYPE)), m_contexts);
@@ -398,37 +399,33 @@ void FormEditorW::deleteInstance()
void FormEditorW::setupActions()
{
Core::Command *command;
//menus
Core::ActionContainer *medit =
Core::ActionManager::actionContainer(Core::Constants::M_EDIT);
Core::ActionContainer *mtools =
Core::ActionManager::actionContainer(Core::Constants::M_TOOLS);
ActionContainer *medit = ActionManager::actionContainer(Core::Constants::M_EDIT);
ActionContainer *mtools = ActionManager::actionContainer(Core::Constants::M_TOOLS);
Core::ActionContainer *mformtools =
Core::ActionManager::createMenu(M_FORMEDITOR);
ActionContainer *mformtools = ActionManager::createMenu(M_FORMEDITOR);
mformtools->menu()->setTitle(tr("For&m Editor"));
mtools->addMenu(mformtools);
//overridden actions
bindShortcut(Core::ActionManager::registerAction(m_fwm->actionUndo(), Core::Constants::UNDO, m_contexts), m_fwm->actionUndo());
bindShortcut(Core::ActionManager::registerAction(m_fwm->actionRedo(), Core::Constants::REDO, m_contexts), m_fwm->actionRedo());
bindShortcut(Core::ActionManager::registerAction(m_fwm->actionCut(), Core::Constants::CUT, m_contexts), m_fwm->actionCut());
bindShortcut(Core::ActionManager::registerAction(m_fwm->actionCopy(), Core::Constants::COPY, m_contexts), m_fwm->actionCopy());
bindShortcut(Core::ActionManager::registerAction(m_fwm->actionPaste(), Core::Constants::PASTE, m_contexts), m_fwm->actionPaste());
bindShortcut(Core::ActionManager::registerAction(m_fwm->actionSelectAll(), Core::Constants::SELECTALL, m_contexts), m_fwm->actionSelectAll());
bindShortcut(ActionManager::registerAction(m_fwm->actionUndo(), Core::Constants::UNDO, m_contexts), m_fwm->actionUndo());
bindShortcut(ActionManager::registerAction(m_fwm->actionRedo(), Core::Constants::REDO, m_contexts), m_fwm->actionRedo());
bindShortcut(ActionManager::registerAction(m_fwm->actionCut(), Core::Constants::CUT, m_contexts), m_fwm->actionCut());
bindShortcut(ActionManager::registerAction(m_fwm->actionCopy(), Core::Constants::COPY, m_contexts), m_fwm->actionCopy());
bindShortcut(ActionManager::registerAction(m_fwm->actionPaste(), Core::Constants::PASTE, m_contexts), m_fwm->actionPaste());
bindShortcut(ActionManager::registerAction(m_fwm->actionSelectAll(), Core::Constants::SELECTALL, m_contexts), m_fwm->actionSelectAll());
m_actionPrint = new QAction(this);
bindShortcut(Core::ActionManager::registerAction(m_actionPrint, Core::Constants::PRINT, m_contexts), m_actionPrint);
bindShortcut(ActionManager::registerAction(m_actionPrint, Core::Constants::PRINT, m_contexts), m_actionPrint);
connect(m_actionPrint, SIGNAL(triggered()), this, SLOT(print()));
//'delete' action. Do not set a shortcut as Designer handles
// the 'Delete' key by event filter. Setting a shortcut triggers
// buggy behaviour on Mac (Pressing Delete in QLineEdit removing the widget).
command = Core::ActionManager::registerAction(m_fwm->actionDelete(), Core::Id("FormEditor.Edit.Delete"), m_contexts);
Command *command;
command = ActionManager::registerAction(m_fwm->actionDelete(), Id("FormEditor.Edit.Delete"), m_contexts);
bindShortcut(command, m_fwm->actionDelete());
command->setAttribute(Core::Command::CA_Hide);
command->setAttribute(Command::CA_Hide);
medit->addAction(command, Core::Constants::G_EDIT_COPYPASTE);
m_actionGroupEditMode = new QActionGroup(this);
@@ -437,74 +434,74 @@ void FormEditorW::setupActions()
medit->addSeparator(m_contexts, Core::Constants::G_EDIT_OTHER);
m_toolActionIds.push_back(Core::Id("FormEditor.WidgetEditor"));
m_toolActionIds.push_back(Id("FormEditor.WidgetEditor"));
createEditModeAction(m_actionGroupEditMode, m_contexts, medit,
tr("Edit Widgets"), m_toolActionIds.back(),
EditModeWidgetEditor, QLatin1String("widgettool.png"), tr("F3"));
m_toolActionIds.push_back(Core::Id("FormEditor.SignalsSlotsEditor"));
m_toolActionIds.push_back(Id("FormEditor.SignalsSlotsEditor"));
createEditModeAction(m_actionGroupEditMode, m_contexts, medit,
tr("Edit Signals/Slots"), m_toolActionIds.back(),
EditModeSignalsSlotEditor, QLatin1String("signalslottool.png"), tr("F4"));
m_toolActionIds.push_back(Core::Id("FormEditor.BuddyEditor"));
m_toolActionIds.push_back(Id("FormEditor.BuddyEditor"));
createEditModeAction(m_actionGroupEditMode, m_contexts, medit,
tr("Edit Buddies"), m_toolActionIds.back(),
EditModeBuddyEditor, QLatin1String("buddytool.png"));
m_toolActionIds.push_back(Core::Id("FormEditor.TabOrderEditor"));
m_toolActionIds.push_back(Id("FormEditor.TabOrderEditor"));
createEditModeAction(m_actionGroupEditMode, m_contexts, medit,
tr("Edit Tab Order"), m_toolActionIds.back(),
EditModeTabOrderEditor, QLatin1String("tabordertool.png"));
//tool actions
m_toolActionIds.push_back(Core::Id("FormEditor.LayoutHorizontally"));
const QString horizLayoutShortcut = Core::UseMacShortcuts ? tr("Meta+Shift+H") : tr("Ctrl+H");
m_toolActionIds.push_back(Id("FormEditor.LayoutHorizontally"));
const QString horizLayoutShortcut = UseMacShortcuts ? tr("Meta+Shift+H") : tr("Ctrl+H");
addToolAction(m_fwm->actionHorizontalLayout(), m_contexts,
m_toolActionIds.back(), mformtools, horizLayoutShortcut);
m_toolActionIds.push_back(Core::Id("FormEditor.LayoutVertically"));
const QString vertLayoutShortcut = Core::UseMacShortcuts ? tr("Meta+L") : tr("Ctrl+L");
m_toolActionIds.push_back(Id("FormEditor.LayoutVertically"));
const QString vertLayoutShortcut = UseMacShortcuts ? tr("Meta+L") : tr("Ctrl+L");
addToolAction(m_fwm->actionVerticalLayout(), m_contexts,
m_toolActionIds.back(), mformtools, vertLayoutShortcut);
m_toolActionIds.push_back(Core::Id("FormEditor.SplitHorizontal"));
m_toolActionIds.push_back(Id("FormEditor.SplitHorizontal"));
addToolAction(m_fwm->actionSplitHorizontal(), m_contexts,
m_toolActionIds.back(), mformtools);
m_toolActionIds.push_back(Core::Id("FormEditor.SplitVertical"));
m_toolActionIds.push_back(Id("FormEditor.SplitVertical"));
addToolAction(m_fwm->actionSplitVertical(), m_contexts,
m_toolActionIds.back(), mformtools);
m_toolActionIds.push_back(Core::Id("FormEditor.LayoutForm"));
m_toolActionIds.push_back(Id("FormEditor.LayoutForm"));
addToolAction(m_fwm->actionFormLayout(), m_contexts,
m_toolActionIds.back(), mformtools);
m_toolActionIds.push_back(Core::Id("FormEditor.LayoutGrid"));
const QString gridShortcut = Core::UseMacShortcuts ? tr("Meta+Shift+G") : tr("Ctrl+G");
m_toolActionIds.push_back(Id("FormEditor.LayoutGrid"));
const QString gridShortcut = UseMacShortcuts ? tr("Meta+Shift+G") : tr("Ctrl+G");
addToolAction(m_fwm->actionGridLayout(), m_contexts,
m_toolActionIds.back(), mformtools, gridShortcut);
m_toolActionIds.push_back(Core::Id("FormEditor.LayoutBreak"));
m_toolActionIds.push_back(Id("FormEditor.LayoutBreak"));
addToolAction(m_fwm->actionBreakLayout(), m_contexts,
m_toolActionIds.back(), mformtools);
m_toolActionIds.push_back(Core::Id("FormEditor.LayoutAdjustSize"));
const QString adjustShortcut = Core::UseMacShortcuts ? tr("Meta+J") : tr("Ctrl+J");
m_toolActionIds.push_back(Id("FormEditor.LayoutAdjustSize"));
const QString adjustShortcut = UseMacShortcuts ? tr("Meta+J") : tr("Ctrl+J");
addToolAction(m_fwm->actionAdjustSize(), m_contexts,
m_toolActionIds.back(), mformtools, adjustShortcut);
m_toolActionIds.push_back(Core::Id("FormEditor.SimplifyLayout"));
m_toolActionIds.push_back(Id("FormEditor.SimplifyLayout"));
addToolAction(m_fwm->actionSimplifyLayout(), m_contexts,
m_toolActionIds.back(), mformtools);
mformtools->addSeparator(m_contexts);
addToolAction(m_fwm->actionLower(), m_contexts,
Core::Id("FormEditor.Lower"), mformtools);
Id("FormEditor.Lower"), mformtools);
addToolAction(m_fwm->actionRaise(), m_contexts,
Core::Id("FormEditor.Raise"), mformtools);
Id("FormEditor.Raise"), mformtools);
// Commands that do not go into the editor toolbar
mformtools->addSeparator(m_contexts);
@@ -516,7 +513,7 @@ void FormEditorW::setupActions()
#endif
QTC_ASSERT(m_actionPreview, return);
addToolAction(m_actionPreview, m_contexts,
Core::Id("FormEditor.Preview"), mformtools, tr("Alt+Shift+R"));
Id("FormEditor.Preview"), mformtools, tr("Alt+Shift+R"));
// Preview in style...
#if QT_VERSION >= 0x050000
@@ -525,7 +522,7 @@ void FormEditorW::setupActions()
m_actionGroupPreviewInStyle = m_fwm->actionGroupPreviewInStyle();
#endif
Core::ActionContainer *previewAC = createPreviewStyleMenu(m_actionGroupPreviewInStyle);
ActionContainer *previewAC = createPreviewStyleMenu(m_actionGroupPreviewInStyle);
m_previewInStyleMenu = previewAC->menu();
mformtools->addMenu(previewAC);
setPreviewMenuEnabled(false);
@@ -539,9 +536,9 @@ void FormEditorW::setupActions()
connect(m_actionSwitchSource, SIGNAL(triggered()), this, SLOT(switchSourceForm()));
// Switch form/source in editor/design contexts.
Core::Context switchContexts = m_contexts;
Context switchContexts = m_contexts;
switchContexts.add(Core::Constants::C_EDITORMANAGER);
addToolAction(m_actionSwitchSource, switchContexts, Core::Id("FormEditor.FormSwitchSource"), mformtools,
addToolAction(m_actionSwitchSource, switchContexts, Id("FormEditor.FormSwitchSource"), mformtools,
tr("Shift+F4"));
mformtools->addSeparator(m_contexts);
@@ -550,13 +547,13 @@ void FormEditorW::setupActions()
#else
QAction *actionFormSettings = m_fwm->actionShowFormWindowSettingsDialog();
#endif
addToolAction(actionFormSettings, m_contexts, Core::Id("FormEditor.FormSettings"), mformtools);
addToolAction(actionFormSettings, m_contexts, Id("FormEditor.FormSettings"), mformtools);
mformtools->addSeparator(m_contexts);
m_actionAboutPlugins = new QAction(tr("About Qt Designer Plugins..."), this);
m_actionAboutPlugins->setMenuRole(QAction::NoRole);
addToolAction(m_actionAboutPlugins, m_contexts,
Core::Id("FormEditor.AboutPlugins"), mformtools);
Id("FormEditor.AboutPlugins"), mformtools);
connect(m_actionAboutPlugins, SIGNAL(triggered()), m_fwm,
#if QT_VERSION >= 0x050000
SLOT(showPluginDialog())
@@ -573,9 +570,9 @@ void FormEditorW::setupActions()
QToolBar *FormEditorW::createEditorToolBar() const
{
QToolBar *editorToolBar = new QToolBar;
const QList<Core::Id>::const_iterator cend = m_toolActionIds.constEnd();
for (QList<Core::Id>::const_iterator it = m_toolActionIds.constBegin(); it != cend; ++it) {
Core::Command *cmd = Core::ActionManager::command(*it);
const QList<Id>::const_iterator cend = m_toolActionIds.constEnd();
for (QList<Id>::const_iterator it = m_toolActionIds.constBegin(); it != cend; ++it) {
Command *cmd = ActionManager::command(*it);
QTC_ASSERT(cmd, continue);
QAction *action = cmd->action();
if (!action->icon().isNull()) // Simplify grid has no action yet
@@ -587,10 +584,10 @@ QToolBar *FormEditorW::createEditorToolBar() const
return editorToolBar;
}
Core::ActionContainer *FormEditorW::createPreviewStyleMenu(QActionGroup *actionGroup)
ActionContainer *FormEditorW::createPreviewStyleMenu(QActionGroup *actionGroup)
{
const QString menuId = QLatin1String(M_FORMEDITOR_PREVIEW);
Core::ActionContainer *menuPreviewStyle = Core::ActionManager::createMenu(M_FORMEDITOR_PREVIEW);
ActionContainer *menuPreviewStyle = ActionManager::createMenu(M_FORMEDITOR_PREVIEW);
menuPreviewStyle->menu()->setTitle(tr("Preview in"));
// The preview menu is a list of invisible actions for the embedded design
@@ -612,11 +609,11 @@ Core::ActionContainer *FormEditorW::createPreviewStyleMenu(QActionGroup *actionG
name += dot;
}
name += data.toString();
Core::Command *command = Core::ActionManager::registerAction(a, Core::Id::fromString(name), m_contexts);
Command *command = ActionManager::registerAction(a, Id::fromString(name), m_contexts);
bindShortcut(command, a);
if (isDeviceProfile) {
command->setAttribute(Core::Command::CA_UpdateText);
command->setAttribute(Core::Command::CA_NonConfigurable);
command->setAttribute(Command::CA_UpdateText);
command->setAttribute(Command::CA_NonConfigurable);
}
menuPreviewStyle->addAction(command);
}
@@ -638,11 +635,11 @@ void FormEditorW::saveSettings(QSettings *s)
void FormEditorW::critical(const QString &errorMessage)
{
QMessageBox::critical(Core::ICore::mainWindow(), tr("Designer"), errorMessage);
QMessageBox::critical(ICore::mainWindow(), tr("Designer"), errorMessage);
}
// Apply the command shortcut to the action and connects to the command's keySequenceChanged signal
void FormEditorW::bindShortcut(Core::Command *command, QAction *action)
void FormEditorW::bindShortcut(Command *command, QAction *action)
{
m_commandToDesignerAction.insert(command, action);
connect(command, SIGNAL(keySequenceChanged()),
@@ -653,10 +650,10 @@ void FormEditorW::bindShortcut(Core::Command *command, QAction *action)
// Create an action to activate a designer tool
QAction *FormEditorW::createEditModeAction(QActionGroup *ag,
const Core::Context &context,
Core::ActionContainer *medit,
const Context &context,
ActionContainer *medit,
const QString &actionName,
const Core::Id &id,
const Id &id,
int toolNumber,
const QString &iconName,
const QString &keySequence)
@@ -665,7 +662,7 @@ QAction *FormEditorW::createEditModeAction(QActionGroup *ag,
rc->setCheckable(true);
if (!iconName.isEmpty())
rc->setIcon(designerIcon(iconName));
Core::Command *command = Core::ActionManager::registerAction(rc, id, context);
Command *command = ActionManager::registerAction(rc, id, context);
command->setAttribute(Core::Command::CA_Hide);
if (!keySequence.isEmpty())
command->setDefaultKeySequence(QKeySequence(keySequence));
@@ -677,11 +674,10 @@ QAction *FormEditorW::createEditModeAction(QActionGroup *ag,
}
// Create a tool action
Core::Command *FormEditorW::addToolAction(QAction *a,
const Core::Context &context, const Core::Id &id,
Core::ActionContainer *c1, const QString &keySequence)
Command *FormEditorW::addToolAction(QAction *a, const Context &context, const Id &id,
ActionContainer *c1, const QString &keySequence)
{
Core::Command *command = Core::ActionManager::registerAction(a, id, context);
Command *command = ActionManager::registerAction(a, id, context);
if (!keySequence.isEmpty())
command->setDefaultKeySequence(QKeySequence(keySequence));
if (!a->isSeparator())
@@ -726,7 +722,7 @@ EditorData FormEditorW::createEditor(QWidget *parent)
void FormEditorW::updateShortcut(QObject *command)
{
Core::Command *c = qobject_cast<Core::Command *>(command);
Command *c = qobject_cast<Command *>(command);
if (!c)
return;
QAction *a = m_commandToDesignerAction.value(c);
@@ -735,7 +731,7 @@ void FormEditorW::updateShortcut(QObject *command)
a->setShortcut(c->action()->shortcut());
}
void FormEditorW::currentEditorChanged(Core::IEditor *editor)
void FormEditorW::currentEditorChanged(IEditor *editor)
{
if (Designer::Constants::Internal::debug)
qDebug() << Q_FUNC_INFO << editor << " of " << m_fwm->formWindowCount();
@@ -794,12 +790,11 @@ void FormEditorW::toolChanged(int t)
}
}
void FormEditorW::closeFormEditorsForXmlEditors(QList<Core::IEditor*> editors)
void FormEditorW::closeFormEditorsForXmlEditors(QList<IEditor*> editors)
{
foreach (Core::IEditor *editor, editors) {
foreach (IEditor *editor, editors)
m_editorWidget->removeFormWindowEditor(editor);
}
}
void FormEditorW::print()
{
@@ -808,7 +803,7 @@ void FormEditorW::print()
if (!fw)
return;
QPrinter *printer = Core::ICore::printer();
QPrinter *printer = ICore::printer();
const bool oldFullPage = printer->fullPage();
const QPrinter::Orientation oldOrientation = printer->orientation ();
printer->setFullPage(false);
@@ -833,7 +828,7 @@ void FormEditorW::print()
if (!dialog.exec())
break;
QWidget *mainWindow = Core::ICore::mainWindow();
QWidget *mainWindow = ICore::mainWindow();
const QCursor oldCursor = mainWindow->cursor();
mainWindow->setCursor(Qt::WaitCursor);
// Estimate of required scaling to make form look the same on screen and printer.
@@ -864,7 +859,7 @@ void FormEditorW::print()
// Find out current existing editor file
static QString currentFile()
{
if (const Core::IDocument *document = Core::EditorManager::currentDocument()) {
if (const IDocument *document = EditorManager::currentDocument()) {
const QString fileName = document->filePath();
if (!fileName.isEmpty() && QFileInfo(fileName).isFile())
return fileName;
@@ -880,18 +875,17 @@ static QString otherFile()
const QString current = currentFile();
if (current.isEmpty())
return QString();
const Core::MimeDatabase *mdb = Core::ICore::mimeDatabase();
const Core::MimeType currentMimeType = mdb->findByFile(current);
const MimeType currentMimeType = MimeDatabase::findByFile(current);
if (!currentMimeType)
return QString();
// Determine potential suffixes of candidate files
// 'ui' -> 'cpp', 'cpp/h' -> 'ui'.
QStringList candidateSuffixes;
if (currentMimeType.type() == QLatin1String(FORM_MIMETYPE)) {
candidateSuffixes += mdb->findByType(QLatin1String(CppTools::Constants::CPP_SOURCE_MIMETYPE)).suffixes();
candidateSuffixes += MimeDatabase::findByType(QLatin1String(CppTools::Constants::CPP_SOURCE_MIMETYPE)).suffixes();
} else if (currentMimeType.type() == QLatin1String(CppTools::Constants::CPP_SOURCE_MIMETYPE)
|| currentMimeType.type() == QLatin1String(CppTools::Constants::CPP_HEADER_MIMETYPE)) {
candidateSuffixes += mdb->findByType(QLatin1String(FORM_MIMETYPE)).suffixes();
candidateSuffixes += MimeDatabase::findByType(QLatin1String(FORM_MIMETYPE)).suffixes();
} else {
return QString();
}
@@ -911,7 +905,7 @@ void FormEditorW::switchSourceForm()
{
const QString fileToOpen = otherFile();
if (!fileToOpen.isEmpty())
Core::EditorManager::openEditor(fileToOpen);
EditorManager::openEditor(fileToOpen);
}
} // namespace Internal
@@ -647,8 +647,7 @@ void QtCreatorIntegration::slotSyncSettingsToDesigner()
{
#if QT_VERSION > 0x040800
// Set promotion-relevant parameters on integration.
const Core::MimeDatabase *mdb = Core::ICore::mimeDatabase();
setHeaderSuffix(mdb->preferredSuffixByType(QLatin1String(CppTools::Constants::CPP_HEADER_MIMETYPE)));
setHeaderSuffix(Core::MimeDatabase::preferredSuffixByType(QLatin1String(CppTools::Constants::CPP_HEADER_MIMETYPE)));
setHeaderLowercase(FormClassWizardPage::lowercaseHeaderFiles());
#endif
}
+1 -3
View File
@@ -266,14 +266,12 @@ void MultiHighlighter::setDocuments(const QList<QPair<DiffEditorWidget::DiffFile
qDeleteAll(m_highlighters);
m_highlighters.clear();
const MimeDatabase *mimeDatabase = ICore::mimeDatabase();
// create new documents
for (int i = 0; i < documents.count(); i++) {
DiffEditorWidget::DiffFileInfo fileInfo = documents.at(i).first;
const QString contents = documents.at(i).second;
QTextDocument *document = new QTextDocument(contents);
const MimeType mimeType = mimeDatabase->findByFile(QFileInfo(fileInfo.fileName));
const MimeType mimeType = MimeDatabase::findByFile(QFileInfo(fileInfo.fileName));
SyntaxHighlighter *highlighter = 0;
if (const IHighlighterFactory *factory = m_mimeTypeToHighlighterFactory.value(mimeType.type())) {
highlighter = factory->createHighlighter();
@@ -69,11 +69,9 @@ bool GenericProjectPlugin::initialize(const QStringList &, QString *errorMessage
{
using namespace Core;
Core::MimeDatabase *mimeDB = ICore::mimeDatabase();
const QLatin1String mimetypesXml(":genericproject/GenericProjectManager.mimetypes.xml");
if (! mimeDB->addMimeTypes(mimetypesXml, errorMessage))
if (!MimeDatabase::addMimeTypes(mimetypesXml, errorMessage))
return false;
Manager *manager = new Manager;
@@ -89,13 +87,13 @@ bool GenericProjectPlugin::initialize(const QStringList &, QString *errorMessage
addAutoReleasedObject(new GenericProjectWizard);
addAutoReleasedObject(new GenericBuildConfigurationFactory);
const Core::Context projectContext(Constants::PROJECTCONTEXT);
Core::ActionContainer *mproject =
Core::ActionManager::actionContainer(ProjectExplorer::Constants::M_PROJECTCONTEXT);
const Context projectContext(Constants::PROJECTCONTEXT);
ActionContainer *mproject =
ActionManager::actionContainer(ProjectExplorer::Constants::M_PROJECTCONTEXT);
m_editFilesAction = new QAction(tr("Edit Files..."), this);
Core::Command *command = Core::ActionManager::registerAction(m_editFilesAction, "GenericProjectManager.EditFiles", projectContext);
command->setAttribute(Core::Command::CA_Hide);
Command *command = ActionManager::registerAction(m_editFilesAction, "GenericProjectManager.EditFiles", projectContext);
command->setAttribute(Command::CA_Hide);
mproject->addAction(command, ProjectExplorer::Constants::G_PROJECT_FILES);
connect(m_editFilesAction, SIGNAL(triggered()), this, SLOT(editFiles()));
@@ -166,9 +166,7 @@ Core::GeneratedFiles GenericProjectWizard::generateFiles(const QWizard *w,
const QString configFileName = QFileInfo(dir, projectName + QLatin1String(".config")).absoluteFilePath();
const QStringList paths = wizard->selectedPaths();
Core::MimeDatabase *mimeDatabase = Core::ICore::mimeDatabase();
Core::MimeType headerTy = mimeDatabase->findByType(QLatin1String("text/x-chdr"));
Core::MimeType headerTy = Core::MimeDatabase::findByType(QLatin1String("text/x-chdr"));
QStringList nameFilters;
foreach (const Core::MimeGlobPattern &gp, headerTy.globPatterns())
+1 -1
View File
@@ -703,7 +703,7 @@ bool GitPlugin::initialize(const QStringList &arguments, QString *errorMessage)
connect(Core::ICore::vcsManager(), SIGNAL(repositoryChanged(QString)),
this, SLOT(updateBranches(QString)), Qt::QueuedConnection);
if (!Core::ICore::mimeDatabase()->addMimeTypes(QLatin1String(RC_GIT_MIME_XML), errorMessage))
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(RC_GIT_MIME_XML), errorMessage))
return false;
/* "Gerrit" */
+2 -2
View File
@@ -197,12 +197,12 @@ Core::IEditor *GLSLEditorEditable::duplicate(QWidget *parent)
Core::Id GLSLEditorEditable::id() const
{
return Core::Id(GLSLEditor::Constants::C_GLSLEDITOR_ID);
return GLSLEditor::Constants::C_GLSLEDITOR_ID;
}
bool GLSLEditorEditable::open(QString *errorString, const QString &fileName, const QString &realFileName)
{
editorWidget()->setMimeType(Core::ICore::mimeDatabase()->findByFile(QFileInfo(fileName)).type());
editorWidget()->setMimeType(Core::MimeDatabase::findByFile(QFileInfo(fileName)).type());
bool b = TextEditor::BaseTextEditor::open(errorString, fileName, realFileName);
return b;
}
+6 -7
View File
@@ -107,7 +107,7 @@ GLSLEditorPlugin::~GLSLEditorPlugin()
bool GLSLEditorPlugin::initialize(const QStringList & /*arguments*/, QString *errorMessage)
{
if (!ICore::mimeDatabase()->addMimeTypes(QLatin1String(":/glsleditor/GLSLEditor.mimetypes.xml"), errorMessage))
if (!MimeDatabase::addMimeTypes(QLatin1String(":/glsleditor/GLSLEditor.mimetypes.xml"), errorMessage))
return false;
// m_modelManager = new ModelManager(this);
@@ -148,17 +148,16 @@ bool GLSLEditorPlugin::initialize(const QStringList & /*arguments*/, QString *er
errorMessage->clear();
FileIconProvider *iconProvider = FileIconProvider::instance();
MimeDatabase *mimeDatabase = ICore::mimeDatabase();
iconProvider->registerIconOverlayForMimeType(QIcon(QLatin1String(":/glsleditor/images/glslfile.png")),
mimeDatabase->findByType(QLatin1String(GLSLEditor::Constants::GLSL_MIMETYPE)));
MimeDatabase::findByType(QLatin1String(GLSLEditor::Constants::GLSL_MIMETYPE)));
iconProvider->registerIconOverlayForMimeType(QIcon(QLatin1String(":/glsleditor/images/glslfile.png")),
mimeDatabase->findByType(QLatin1String(GLSLEditor::Constants::GLSL_MIMETYPE_VERT)));
MimeDatabase::findByType(QLatin1String(GLSLEditor::Constants::GLSL_MIMETYPE_VERT)));
iconProvider->registerIconOverlayForMimeType(QIcon(QLatin1String(":/glsleditor/images/glslfile.png")),
mimeDatabase->findByType(QLatin1String(GLSLEditor::Constants::GLSL_MIMETYPE_FRAG)));
MimeDatabase::findByType(QLatin1String(GLSLEditor::Constants::GLSL_MIMETYPE_FRAG)));
iconProvider->registerIconOverlayForMimeType(QIcon(QLatin1String(":/glsleditor/images/glslfile.png")),
mimeDatabase->findByType(QLatin1String(GLSLEditor::Constants::GLSL_MIMETYPE_VERT_ES)));
MimeDatabase::findByType(QLatin1String(GLSLEditor::Constants::GLSL_MIMETYPE_VERT_ES)));
iconProvider->registerIconOverlayForMimeType(QIcon(QLatin1String(":/glsleditor/images/glslfile.png")),
mimeDatabase->findByType(QLatin1String(GLSLEditor::Constants::GLSL_MIMETYPE_FRAG_ES)));
MimeDatabase::findByType(QLatin1String(GLSLEditor::Constants::GLSL_MIMETYPE_FRAG_ES)));
QObject *core = ICore::instance();
BaseFileWizardParameters fragWizardParameters(IWizard::FileWizard);
@@ -64,7 +64,7 @@ bool ImageViewerPlugin::initialize(const QStringList &arguments, QString *errorM
{
Q_UNUSED(arguments)
if (!Core::ICore::mimeDatabase()->addMimeTypes(QLatin1String(":/imageviewer/ImageViewer.mimetypes.xml"), errorMessage))
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(":/imageviewer/ImageViewer.mimetypes.xml"), errorMessage))
return false;
d->factory = new ImageViewerFactory(this);
+1 -1
View File
@@ -210,7 +210,7 @@ bool PerforcePlugin::initialize(const QStringList & /* arguments */, QString *er
initializeVcs(new PerforceVersionControl(this));
if (!Core::ICore::mimeDatabase()->addMimeTypes(QLatin1String(":/trolltech.perforce/Perforce.mimetypes.xml"), errorMessage))
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(":/trolltech.perforce/Perforce.mimetypes.xml"), errorMessage))
return false;
m_instance = this;
@@ -998,11 +998,10 @@ void CustomWizardContext::reset()
{
// Basic replacement fields: Suffixes.
baseReplacements.clear();
const MimeDatabase *mdb = ICore::mimeDatabase();
baseReplacements.insert(QLatin1String("CppSourceSuffix"),
mdb->preferredSuffixByType(QLatin1String(CppTools::Constants::CPP_SOURCE_MIMETYPE)));
MimeDatabase::preferredSuffixByType(QLatin1String(CppTools::Constants::CPP_SOURCE_MIMETYPE)));
baseReplacements.insert(QLatin1String("CppHeaderSuffix"),
mdb->preferredSuffixByType(QLatin1String(CppTools::Constants::CPP_HEADER_MIMETYPE)));
MimeDatabase::preferredSuffixByType(QLatin1String(CppTools::Constants::CPP_HEADER_MIMETYPE)));
replacements.clear();
path.clear();
targetPath.clear();
@@ -82,7 +82,7 @@ QList<ProjectFileFactory *> ProjectFileFactory::createFactories(QString *filterS
if (!filterString->isEmpty())
*filterString += filterSeparator;
const QString mimeType = manager->mimeType();
Core::MimeType mime = Core::ICore::mimeDatabase()->findByType(mimeType);
Core::MimeType mime = Core::MimeDatabase::findByType(mimeType);
const QString pFilterString = mime.filterString();
allGlobPatterns.append(mime.globPatterns());
*filterString += pFilterString;
@@ -1364,7 +1364,7 @@ QList<Project *> ProjectExplorerPlugin::openProjects(const QStringList &fileName
continue;
}
if (const Core::MimeType mt = Core::ICore::mimeDatabase()->findByFile(QFileInfo(fileName))) {
if (const Core::MimeType mt = Core::MimeDatabase::findByFile(QFileInfo(fileName))) {
foreach (IProjectManager *manager, projectManagers) {
if (manager->mimeType() == mt.type()) {
QString tmp;
@@ -1505,9 +1505,8 @@ void ProjectExplorerPlugin::determineSessionToRestoreAtStartup()
static inline QStringList projectFileGlobs()
{
QStringList result;
const Core::MimeDatabase *mimeDatabase = Core::ICore::instance()->mimeDatabase();
foreach (const IProjectManager *ipm, ExtensionSystem::PluginManager::getObjects<IProjectManager>()) {
if (const Core::MimeType mimeType = mimeDatabase->findByType(ipm->mimeType())) {
if (const Core::MimeType mimeType = Core::MimeDatabase::findByType(ipm->mimeType())) {
const QList<Core::MimeGlobPattern> patterns = mimeType.globPatterns();
if (!patterns.isEmpty())
result.push_back(patterns.front().pattern());
@@ -3030,9 +3029,8 @@ Internal::ProjectExplorerSettings ProjectExplorerPlugin::projectExplorerSettings
QStringList ProjectExplorerPlugin::projectFilePatterns()
{
QStringList patterns;
const Core::MimeDatabase *mdb = Core::ICore::mimeDatabase();
foreach (const IProjectManager *pm, allProjectManagers())
if (const Core::MimeType mt = mdb->findByType(pm->mimeType()))
if (const Core::MimeType mt = Core::MimeDatabase::findByType(pm->mimeType()))
foreach (const Core::MimeGlobPattern &gp, mt.globPatterns())
patterns.append(gp.pattern());
return patterns;
@@ -546,8 +546,7 @@ void ProjectFileWizardExtension::applyCodeStyle(Core::GeneratedFile *file) const
if (file->isBinary() || file->contents().isEmpty())
return; // nothing to do
const Core::MimeDatabase *mdb = Core::ICore::mimeDatabase();
Core::MimeType mt = mdb->findByFile(QFileInfo(file->path()));
Core::MimeType mt = Core::MimeDatabase::findByFile(QFileInfo(file->path()));
Core::Id languageId = TextEditor::TextEditorSettings::instance()->languageId(mt.type());
if (!languageId.isValid())
+2 -9
View File
@@ -79,16 +79,9 @@ bool PythonEditor::open(QString *errorString,
const QString &fileName,
const QString &realFileName)
{
Core::MimeType mimeType;
Core::MimeDatabase *mimeDB = Core::ICore::instance()->mimeDatabase();
mimeType = mimeDB->findByFile(QFileInfo(fileName));
Core::MimeType mimeType = Core::MimeDatabase::findByFile(QFileInfo(fileName));
editorWidget()->setMimeType(mimeType.type());
bool status = TextEditor::BaseTextEditor::open(errorString,
fileName,
realFileName);
return status;
return TextEditor::BaseTextEditor::open(errorString, fileName, realFileName);
}
} // namespace Internal
@@ -212,17 +212,12 @@ PythonEditorPlugin::~PythonEditorPlugin()
m_instance = 0;
}
bool PythonEditorPlugin::initialize(
const QStringList &arguments, QString *errorMessage)
bool PythonEditorPlugin::initialize(const QStringList &arguments, QString *errorMessage)
{
Q_UNUSED(arguments)
if (! Core::ICore::mimeDatabase()->addMimeTypes(
QLatin1String(RC_PY_MIME_XML),
errorMessage))
{
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(RC_PY_MIME_XML), errorMessage))
return false;
}
m_factory = new EditorFactory(this);
addObject(m_factory);
@@ -243,9 +238,8 @@ bool PythonEditorPlugin::initialize(
const QIcon icon = QIcon::fromTheme(QLatin1String(C_PY_MIME_ICON));
if (!icon.isNull()) {
Core::FileIconProvider *iconProv = Core::FileIconProvider::instance();
Core::MimeDatabase *mimeDB = Core::ICore::instance()->mimeDatabase();
iconProv->registerIconOverlayForMimeType(
icon, mimeDB->findByType(QLatin1String(C_PY_MIMETYPE)));
icon, Core::MimeDatabase::findByType(QLatin1String(C_PY_MIMETYPE)));
}
////////////////////////////////////////////////////////////////////////////
+10 -9
View File
@@ -93,6 +93,7 @@ enum {
UPDATE_OUTLINE_INTERVAL = 500 // msecs after new semantic info has been arrived / cursor has moved
};
using namespace Core;
using namespace QmlJS;
using namespace QmlJS::AST;
using namespace QmlJSTools;
@@ -578,7 +579,7 @@ QModelIndex QmlJSTextEditorWidget::outlineModelIndex()
return m_outlineModelIndex;
}
Core::IEditor *QmlJSEditor::duplicate(QWidget *parent)
IEditor *QmlJSEditor::duplicate(QWidget *parent)
{
QmlJSTextEditorWidget *newEditor = new QmlJSTextEditorWidget(parent);
newEditor->duplicateFrom(editorWidget());
@@ -586,15 +587,15 @@ Core::IEditor *QmlJSEditor::duplicate(QWidget *parent)
return newEditor->editor();
}
Core::Id QmlJSEditor::id() const
Id QmlJSEditor::id() const
{
return Core::Id(Constants::C_QMLJSEDITOR_ID);
return Constants::C_QMLJSEDITOR_ID;
}
bool QmlJSEditor::open(QString *errorString, const QString &fileName, const QString &realFileName)
{
bool b = TextEditor::BaseTextEditor::open(errorString, fileName, realFileName);
editorWidget()->setMimeType(Core::ICore::mimeDatabase()->findByFile(QFileInfo(fileName)).type());
editorWidget()->setMimeType(MimeDatabase::findByFile(QFileInfo(fileName)).type());
return b;
}
@@ -692,8 +693,8 @@ void QmlJSTextEditorWidget::jumpToOutlineElement(int /*index*/)
if (!location.isValid())
return;
Core::EditorManager::cutForwardNavigationHistory();
Core::EditorManager::addCurrentPositionToNavigationHistory();
EditorManager::cutForwardNavigationHistory();
EditorManager::addCurrentPositionToNavigationHistory();
QTextCursor cursor = textCursor();
cursor.setPosition(location.offset);
@@ -1207,7 +1208,7 @@ void QmlJSTextEditorWidget::contextMenuEvent(QContextMenuEvent *e)
refactoringMenu->setEnabled(!refactoringMenu->isEmpty());
if (Core::ActionContainer *mcontext = Core::ActionManager::actionContainer(Constants::M_CONTEXT)) {
if (ActionContainer *mcontext = ActionManager::actionContainer(Constants::M_CONTEXT)) {
QMenu *contextMenu = mcontext->menu();
foreach (QAction *action, contextMenu->actions()) {
menu->addAction(action);
@@ -1293,7 +1294,7 @@ void QmlJSTextEditorWidget::updateSemanticInfo()
return;
// Save time by not doing it for non-active editors.
if (Core::EditorManager::currentEditor() != editor())
if (EditorManager::currentEditor() != editor())
return;
m_updateSemanticInfoTimer->start();
@@ -1342,7 +1343,7 @@ void QmlJSTextEditorWidget::acceptNewSemanticInfo(const SemanticInfo &semanticIn
// update outline
m_updateOutlineTimer->start();
if (Core::EditorManager::currentEditor() == editor())
if (EditorManager::currentEditor() == editor())
m_semanticHighlighter->rerun(m_semanticInfo);
emit semanticInfoUpdated();
+10 -17
View File
@@ -75,10 +75,8 @@ ModelManagerInterface::ProjectInfo QmlJSTools::defaultProjectInfoForProject(
ModelManagerInterface::ProjectInfo projectInfo(project);
ProjectExplorer::Target *activeTarget = 0;
if (project) {
MimeDatabase *db = ICore::mimeDatabase();
QList<MimeGlobPattern> globs;
QList<MimeType> mimeTypes = db->mimeTypes();
foreach (const MimeType &mimeType, mimeTypes)
foreach (const MimeType &mimeType, MimeDatabase::mimeTypes())
if (mimeType.type() == QLatin1String(Constants::QML_MIMETYPE)
|| mimeType.subClassesOf().contains(QLatin1String(Constants::QML_MIMETYPE)))
globs << mimeType.globPatterns();
@@ -189,16 +187,15 @@ QmlJS::Document::Language QmlJSTools::languageOfFile(const QString &fileName)
QStringList qbsSuffixes(QLatin1String("qbs"));
if (ICore::instance()) {
MimeDatabase *db = ICore::mimeDatabase();
MimeType jsSourceTy = db->findByType(QLatin1String(Constants::JS_MIMETYPE));
MimeType jsSourceTy = MimeDatabase::findByType(QLatin1String(Constants::JS_MIMETYPE));
mergeSuffixes(jsSuffixes, jsSourceTy.suffixes());
MimeType qmlSourceTy = db->findByType(QLatin1String(Constants::QML_MIMETYPE));
MimeType qmlSourceTy = MimeDatabase::findByType(QLatin1String(Constants::QML_MIMETYPE));
mergeSuffixes(qmlSuffixes, qmlSourceTy.suffixes());
MimeType qbsSourceTy = db->findByType(QLatin1String(Constants::QBS_MIMETYPE));
MimeType qbsSourceTy = MimeDatabase::findByType(QLatin1String(Constants::QBS_MIMETYPE));
mergeSuffixes(qbsSuffixes, qbsSourceTy.suffixes());
MimeType qmlProjectSourceTy = db->findByType(QLatin1String(Constants::QMLPROJECT_MIMETYPE));
MimeType qmlProjectSourceTy = MimeDatabase::findByType(QLatin1String(Constants::QMLPROJECT_MIMETYPE));
mergeSuffixes(qmlProjectSuffixes, qmlProjectSourceTy.suffixes());
MimeType jsonSourceTy = db->findByType(QLatin1String(Constants::JSON_MIMETYPE));
MimeType jsonSourceTy = MimeDatabase::findByType(QLatin1String(Constants::JSON_MIMETYPE));
mergeSuffixes(jsonSuffixes, jsonSourceTy.suffixes());
}
@@ -219,9 +216,8 @@ QStringList QmlJSTools::qmlAndJsGlobPatterns()
{
QStringList pattern;
if (ICore::instance()) {
MimeDatabase *db = ICore::mimeDatabase();
MimeType jsSourceTy = db->findByType(QLatin1String(Constants::JS_MIMETYPE));
MimeType qmlSourceTy = db->findByType(QLatin1String(Constants::QML_MIMETYPE));
MimeType jsSourceTy = MimeDatabase::findByType(QLatin1String(Constants::JS_MIMETYPE));
MimeType qmlSourceTy = MimeDatabase::findByType(QLatin1String(Constants::QML_MIMETYPE));
QStringList pattern;
foreach (const MimeGlobPattern &glob, jsSourceTy.globPatterns())
@@ -892,8 +888,6 @@ void ModelManager::parse(QFutureInterface<void> &future,
// Check whether fileMimeType is the same or extends knownMimeType
bool ModelManager::matchesMimeType(const MimeType &fileMimeType, const MimeType &knownMimeType)
{
MimeDatabase *db = ICore::mimeDatabase();
const QStringList knownTypeNames = QStringList(knownMimeType.type()) + knownMimeType.aliases();
foreach (const QString &knownTypeName, knownTypeNames)
@@ -901,10 +895,9 @@ bool ModelManager::matchesMimeType(const MimeType &fileMimeType, const MimeType
return true;
// recursion to parent types of fileMimeType
foreach (const QString &parentMimeType, fileMimeType.subClassesOf()) {
if (matchesMimeType(db->findByType(parentMimeType), knownMimeType))
foreach (const QString &parentMimeType, fileMimeType.subClassesOf())
if (matchesMimeType(MimeDatabase::findByType(parentMimeType), knownMimeType))
return true;
}
return false;
}
+1 -2
View File
@@ -72,9 +72,8 @@ QmlJSToolsPlugin::~QmlJSToolsPlugin()
bool QmlJSToolsPlugin::initialize(const QStringList &arguments, QString *error)
{
Q_UNUSED(arguments)
Q_UNUSED(error)
if (!ICore::mimeDatabase()->addMimeTypes(QLatin1String(":/qmljstools/QmlJSTools.mimetypes.xml"), error))
if (!MimeDatabase::addMimeTypes(QLatin1String(":/qmljstools/QmlJSTools.mimetypes.xml"), error))
return false;
m_settings = new QmlJSToolsSettings(this); // force registration of qmljstools settings
@@ -60,23 +60,18 @@ bool QmlProjectPlugin::initialize(const QStringList &, QString *errorMessage)
{
using namespace Core;
Core::MimeDatabase *mimeDB = Core::ICore::mimeDatabase();
const QLatin1String mimetypesXml(":/qmlproject/QmlProjectManager.mimetypes.xml");
if (! mimeDB->addMimeTypes(mimetypesXml, errorMessage))
if (!MimeDatabase::addMimeTypes(mimetypesXml, errorMessage))
return false;
Internal::Manager *manager = new Internal::Manager;
addAutoReleasedObject(manager);
addAutoReleasedObject(new Internal::Manager);
addAutoReleasedObject(new Internal::QmlProjectRunConfigurationFactory);
addAutoReleasedObject(new Internal::QmlProjectRunControlFactory);
Internal::QmlApplicationWizard::createInstances(this);
Core::FileIconProvider *iconProvider = Core::FileIconProvider::instance();
FileIconProvider *iconProvider = FileIconProvider::instance();
iconProvider->registerIconOverlayForSuffix(QIcon(QLatin1String(":/qmlproject/images/qmlproject.png")),
QLatin1String("qmlproject"));
return true;
@@ -46,18 +46,14 @@
#include <utils/winutils.h>
#endif
using Core::EditorManager;
using Core::ICore;
using Core::IEditor;
using namespace Core;
using namespace QmlProjectManager::Internal;
namespace QmlProjectManager {
const char * const M_CURRENT_FILE = "CurrentFile";
const char M_CURRENT_FILE[] = "CurrentFile";
QmlProjectRunConfiguration::QmlProjectRunConfiguration(ProjectExplorer::Target *parent,
Core::Id id) :
QmlProjectRunConfiguration::QmlProjectRunConfiguration(ProjectExplorer::Target *parent, Id id) :
ProjectExplorer::RunConfiguration(parent, id),
m_scriptFile(QLatin1String(M_CURRENT_FILE)),
m_isEnabled(false)
@@ -90,7 +86,7 @@ QString QmlProjectRunConfiguration::disabledReason() const
void QmlProjectRunConfiguration::ctor()
{
// reset default settings in constructor
connect(Core::EditorManager::instance(), SIGNAL(currentEditorChanged(Core::IEditor*)),
connect(EditorManager::instance(), SIGNAL(currentEditorChanged(Core::IEditor*)),
this, SLOT(changeCurrentFile(Core::IEditor*)));
connect(target(), SIGNAL(kitChanged()),
@@ -269,7 +265,7 @@ bool QmlProjectRunConfiguration::fromMap(const QVariantMap &map)
return RunConfiguration::fromMap(map);
}
void QmlProjectRunConfiguration::changeCurrentFile(Core::IEditor *editor)
void QmlProjectRunConfiguration::changeCurrentFile(IEditor *editor)
{
if (editor)
m_currentFileFilename = editor->document()->filePath();
@@ -280,22 +276,21 @@ void QmlProjectRunConfiguration::updateEnabled()
{
bool qmlFileFound = false;
if (mainScriptSource() == FileInEditor) {
Core::IDocument *document= Core::EditorManager::currentDocument();
Core::MimeDatabase *db = ICore::mimeDatabase();
IDocument *document = EditorManager::currentDocument();
if (document) {
m_currentFileFilename = document->filePath();
if (db->findByFile(mainScript()).type() == QLatin1String("application/x-qml"))
if (MimeDatabase::findByFile(mainScript()).type() == QLatin1String("application/x-qml"))
qmlFileFound = true;
}
if (!document
|| db->findByFile(mainScript()).type() == QLatin1String("application/x-qmlproject")) {
|| MimeDatabase::findByFile(mainScript()).type() == QLatin1String("application/x-qmlproject")) {
// find a qml file with lowercase filename. This is slow, but only done
// in initialization/other border cases.
foreach (const QString &filename, target()->project()->files(ProjectExplorer::Project::AllFiles)) {
const QFileInfo fi(filename);
if (!filename.isEmpty() && fi.baseName()[0].isLower()
&& db->findByFile(fi).type() == QLatin1String("application/x-qml"))
&& MimeDatabase::findByFile(fi).type() == QLatin1String("application/x-qml"))
{
m_currentFileFilename = filename;
qmlFileFound = true;
+1 -1
View File
@@ -108,7 +108,7 @@ bool QNXPlugin::initialize(const QStringList &arguments, QString *errorString)
barDescriptorMimeType.addMagicMatcher(QSharedPointer<Core::IMagicMatcher>(new BarDescriptorMagicMatcher));
barDescriptorMimeType.setSubClassesOf(QStringList() << QLatin1String("application/xml"));
if (!Core::ICore::mimeDatabase()->addMimeType(barDescriptorMimeType)) {
if (!Core::MimeDatabase::addMimeType(barDescriptorMimeType)) {
*errorString = tr("Could not add mime-type for bar-descriptor.xml editor.");
return false;
}
+4 -8
View File
@@ -944,9 +944,8 @@ bool Qt4PriFileNode::addFiles(const QStringList &filePaths, QStringList *notAdde
typedef QMap<QString, QStringList> TypeFileMap;
// Split into lists by file type and bulk-add them.
TypeFileMap typeFileMap;
const Core::MimeDatabase *mdb = Core::ICore::mimeDatabase();
foreach (const QString file, filePaths) {
const Core::MimeType mt = mdb->findByFile(file);
const Core::MimeType mt = Core::MimeDatabase::findByFile(file);
typeFileMap[mt.type()] << file;
}
@@ -992,9 +991,8 @@ bool Qt4PriFileNode::removeFiles(const QStringList &filePaths,
typedef QMap<QString, QStringList> TypeFileMap;
// Split into lists by file type and bulk-add them.
TypeFileMap typeFileMap;
const Core::MimeDatabase *mdb = Core::ICore::mimeDatabase();
foreach (const QString file, filePaths) {
const Core::MimeType mt = mdb->findByFile(file);
const Core::MimeType mt = Core::MimeDatabase::findByFile(file);
typeFileMap[mt.type()] << file;
}
foreach (const QString &type, typeFileMap.keys()) {
@@ -1012,9 +1010,8 @@ bool Qt4PriFileNode::deleteFiles(const QStringList &filePaths)
typedef QMap<QString, QStringList> TypeFileMap;
// Split into lists by file type and bulk-add them.
TypeFileMap typeFileMap;
const Core::MimeDatabase *mdb = Core::ICore::mimeDatabase();
foreach (const QString file, filePaths) {
const Core::MimeType mt = mdb->findByFile(file);
const Core::MimeType mt = Core::MimeDatabase::findByFile(file);
typeFileMap[mt.type()] << file;
}
foreach (const QString &type, typeFileMap.keys()) {
@@ -1030,8 +1027,7 @@ bool Qt4PriFileNode::renameFile(const QString &filePath, const QString &newFileP
return false;
bool changeProFileOptional = deploysFolder(QFileInfo(filePath).absolutePath());
const Core::MimeDatabase *mdb = Core::ICore::mimeDatabase();
const Core::MimeType mt = mdb->findByFile(newFilePath);
const Core::MimeType mt = Core::MimeDatabase::findByFile(newFilePath);
QStringList dummy;
changeFiles(mt.type(), QStringList() << filePath, &dummy, RemoveFromProFile);
@@ -106,7 +106,7 @@ bool Qt4ProjectManagerPlugin::initialize(const QStringList &arguments, QString *
const Core::Context projectContext(Qt4ProjectManager::Constants::PROJECT_ID);
Core::Context projecTreeContext(ProjectExplorer::Constants::C_PROJECT_TREE);
if (!Core::ICore::mimeDatabase()->addMimeTypes(QLatin1String(":qt4projectmanager/Qt4ProjectManager.mimetypes.xml"), errorMessage))
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(":qt4projectmanager/Qt4ProjectManager.mimetypes.xml"), errorMessage))
return false;
m_projectExplorer = ProjectExplorer::ProjectExplorerPlugin::instance();
+8 -7
View File
@@ -52,6 +52,7 @@
static const char kHostBins[] = "CurrentProject:QT_HOST_BINS";
static const char kInstallBins[] = "CurrentProject:QT_INSTALL_BINS";
using namespace Core;
using namespace QtSupport;
using namespace QtSupport::Internal;
@@ -63,7 +64,7 @@ bool QtSupportPlugin::initialize(const QStringList &arguments, QString *errorMes
ProFileEvaluator::initialize();
new ProFileCacheManager(this);
if (!Core::ICore::mimeDatabase()->addMimeTypes(QLatin1String(":qtsupport/QtSupport.mimetypes.xml"), errorMessage))
if (!MimeDatabase::addMimeTypes(QLatin1String(":qtsupport/QtSupport.mimetypes.xml"), errorMessage))
return false;
addAutoReleasedObject(new QtVersionManager);
@@ -94,12 +95,12 @@ bool QtSupportPlugin::initialize(const QStringList &arguments, QString *errorMes
void QtSupportPlugin::extensionsInitialized()
{
Core::VariableManager::registerVariable(kHostBins,
VariableManager::registerVariable(kHostBins,
tr("Full path to the host bin directory of the current project's Qt version."));
Core::VariableManager::registerVariable(kInstallBins,
VariableManager::registerVariable(kInstallBins,
tr("Full path to the target bin directory of the current project's Qt version."
" You probably want %1 instead.").arg(QString::fromLatin1(kHostBins)));
connect(Core::VariableManager::instance(), SIGNAL(variableUpdateRequested(QByteArray)),
connect(VariableManager::instance(), SIGNAL(variableUpdateRequested(QByteArray)),
this, SLOT(updateVariable(QByteArray)));
QtVersionManager::extensionsInitialized();
@@ -117,18 +118,18 @@ void QtSupportPlugin::updateVariable(const QByteArray &variable)
ProjectExplorer::Project *project = ProjectExplorer::ProjectExplorerPlugin::currentProject();
if (!project || !project->activeTarget()) {
Core::VariableManager::remove(variable);
VariableManager::remove(variable);
return;
}
const BaseQtVersion *qtVersion = QtKitInformation::qtVersion(project->activeTarget()->kit());
if (!qtVersion) {
Core::VariableManager::remove(variable);
VariableManager::remove(variable);
return;
}
QString value = qtVersion->qmakeProperty(variable == kHostBins ? "QT_HOST_BINS" : "QT_INSTALL_BINS");
Core::VariableManager::insert(variable, value);
VariableManager::insert(variable, value);
}
Q_EXPORT_PLUGIN(QtSupportPlugin)
@@ -67,7 +67,7 @@ ResourceEditorPlugin::~ResourceEditorPlugin()
bool ResourceEditorPlugin::initialize(const QStringList &arguments, QString *errorMessage)
{
Q_UNUSED(arguments)
if (!Core::ICore::mimeDatabase()->addMimeTypes(QLatin1String(":/resourceeditor/ResourceEditor.mimetypes.xml"), errorMessage))
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(":/resourceeditor/ResourceEditor.mimetypes.xml"), errorMessage))
return false;
m_editor = new ResourceEditorFactory(this);
+1 -1
View File
@@ -248,7 +248,7 @@ bool SubversionPlugin::initialize(const QStringList & /*arguments */, QString *e
m_subversionPluginInstance = this;
if (!Core::ICore::mimeDatabase()->addMimeTypes(QLatin1String(":/trolltech.subversion/Subversion.mimetypes.xml"), errorMessage))
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(":/trolltech.subversion/Subversion.mimetypes.xml"), errorMessage))
return false;
m_settings.readSettings(Core::ICore::settings());
+1 -1
View File
@@ -165,7 +165,7 @@ bool TaskListPlugin::initialize(const QStringList &arguments, QString *errorMess
//: Category under which tasklist tasks are listed in Issues view
TaskHub::addCategory(Constants::TASKLISTTASK_ID, tr("My Tasks"));
if (!Core::ICore::mimeDatabase()->addMimeTypes(QLatin1String(":tasklist/TaskList.mimetypes.xml"), errorMessage))
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(":tasklist/TaskList.mimetypes.xml"), errorMessage))
return false;
m_fileFactory = new TaskFileFactory(this);
@@ -44,8 +44,7 @@ QString TextEditor::findDefinitionId(const Core::MimeType &mimeType,
definitionId = Manager::instance()->definitionIdByAnyMimeType(mimeType.subClassesOf());
if (definitionId.isEmpty()) {
foreach (const QString &parent, mimeType.subClassesOf()) {
const Core::MimeType &parentMimeType =
Core::ICore::mimeDatabase()->findByType(parent);
const Core::MimeType &parentMimeType = Core::MimeDatabase::findByType(parent);
definitionId = findDefinitionId(parentMimeType, considerParents);
}
}
@@ -183,17 +183,16 @@ bool priorityComp(const QSharedPointer<HighlightDefinitionMetaData> &a,
const int ManagerProcessor::kMaxProgress = 200;
ManagerProcessor::ManagerProcessor()
: m_knownSuffixes(QSet<QString>::fromList(ICore::mimeDatabase()->suffixes()))
: m_knownSuffixes(QSet<QString>::fromList(MimeDatabase::suffixes()))
{
const HighlighterSettings &settings = TextEditorSettings::instance()->highlighterSettings();
m_definitionsPaths.append(settings.definitionFilesPath());
if (settings.useFallbackLocation())
m_definitionsPaths.append(settings.fallbackDefinitionFilesPath());
MimeDatabase *mimeDatabase = ICore::mimeDatabase();
foreach (const MimeType &userMimeType, mimeDatabase->readUserModifiedMimeTypes())
foreach (const MimeType &userMimeType, MimeDatabase::readUserModifiedMimeTypes())
m_userModified.insert(userMimeType.type(), userMimeType);
foreach (const MimeType &mimeType, mimeDatabase->mimeTypes())
foreach (const MimeType &mimeType, MimeDatabase::mimeTypes())
m_knownMimeTypes.insert(mimeType.type());
}
@@ -331,7 +330,7 @@ void Manager::registerMimeTypesFinished()
PlainTextEditorFactory *factory = TextEditorPlugin::instance()->editorFactory();
const QSet<QString> &inFactory = factory->mimeTypes().toSet();
foreach (const MimeType &mimeType, result.second) {
ICore::mimeDatabase()->addMimeType(mimeType);
MimeDatabase::addMimeType(mimeType);
if (!inFactory.contains(mimeType.type()))
factory->addMimeType(mimeType.type());
}
+7 -7
View File
@@ -74,7 +74,7 @@ PlainTextEditorWidget::PlainTextEditorWidget(QWidget *parent)
connect(Manager::instance(), SIGNAL(mimeTypesRegistered()), this, SLOT(configure()));
}
Core::IEditor *PlainTextEditor::duplicate(QWidget *parent)
IEditor *PlainTextEditor::duplicate(QWidget *parent)
{
PlainTextEditorWidget *newWidget = new PlainTextEditorWidget(parent);
newWidget->duplicateFrom(editorWidget());
@@ -82,9 +82,9 @@ Core::IEditor *PlainTextEditor::duplicate(QWidget *parent)
return newWidget->editor();
}
Core::Id PlainTextEditor::id() const
Id PlainTextEditor::id() const
{
return Core::Id(Core::Constants::K_DEFAULT_TEXT_EDITOR_ID);
return Core::Constants::K_DEFAULT_TEXT_EDITOR_ID;
}
void PlainTextEditorWidget::unCommentSelection()
@@ -105,18 +105,18 @@ void PlainTextEditorWidget::setTabSettings(const TextEditor::TabSettings &ts)
void PlainTextEditorWidget::configure()
{
Core::MimeType mimeType;
MimeType mimeType;
if (editorDocument())
mimeType = Core::ICore::mimeDatabase()->findByFile(editorDocument()->filePath());
mimeType = MimeDatabase::findByFile(editorDocument()->filePath());
configure(mimeType);
}
void PlainTextEditorWidget::configure(const QString &mimeType)
{
configure(Core::ICore::mimeDatabase()->findByType(mimeType));
configure(MimeDatabase::findByType(mimeType));
}
void PlainTextEditorWidget::configure(const Core::MimeType &mimeType)
void PlainTextEditorWidget::configure(const MimeType &mimeType)
{
Highlighter *highlighter = new Highlighter();
baseTextDocument()->setSyntaxHighlighter(highlighter);
+1 -1
View File
@@ -145,7 +145,7 @@ bool TextEditorPlugin::initialize(const QStringList &arguments, QString *errorMe
{
Q_UNUSED(arguments)
if (!Core::ICore::mimeDatabase()->addMimeTypes(QLatin1String(":/texteditor/TextEditor.mimetypes.xml"), errorMessage))
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(":/texteditor/TextEditor.mimetypes.xml"), errorMessage))
return false;
Core::BaseFileWizardParameters wizardParameters(Core::IWizard::FileWizard);
+1 -2
View File
@@ -33,7 +33,6 @@
#include "vcsbaseoutputwindow.h"
#include "corelistener.h"
#include <coreplugin/icore.h>
#include <coreplugin/mimedatabase.h>
#include <QtPlugin>
@@ -61,7 +60,7 @@ bool VcsPlugin::initialize(const QStringList &arguments, QString *errorMessage)
{
Q_UNUSED(arguments)
if (!Core::ICore::mimeDatabase()->addMimeTypes(QLatin1String(":/vcsbase/VcsBase.mimetypes.xml"), errorMessage))
if (!Core::MimeDatabase::addMimeTypes(QLatin1String(":/vcsbase/VcsBase.mimetypes.xml"), errorMessage))
return false;
m_coreListener = new CoreListener;