diff options
author | Nikolai Kosjar <[email protected]> | 2015-05-08 15:48:17 +0200 |
---|---|---|
committer | Nikolai Kosjar <[email protected]> | 2015-06-10 10:15:40 +0000 |
commit | 23b8a3b2e83e46e9ca8b1e7e314fad7030b23ff4 (patch) | |
tree | bf30a066c35c2df4385ff3cd08a9b683e216269b /src/plugins/cpptools/cppcodemodelsettings.h | |
parent | 264132da27ce9a11ca102ce7efaae13b9baaab6b (diff) |
Clang: Use completion through backend process
This makes us independent of libclang crashes for completion.
Re-parsing for highlighting still happens in the Qt Creator process.
Run in verbose mode:
qtc.clangcodemodel.ipc=true
Run tests:
-test "ClangCodeModel"
Task-number: QTCREATORBUG-14108
Task-number: QTCREATORBUG-12819
Change-Id: Id3e95bd2afdb6508bbd1d35fddc69534a909b905
Reviewed-by: Marco Bubke <[email protected]>
Diffstat (limited to 'src/plugins/cpptools/cppcodemodelsettings.h')
-rw-r--r-- | src/plugins/cpptools/cppcodemodelsettings.h | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/src/plugins/cpptools/cppcodemodelsettings.h b/src/plugins/cpptools/cppcodemodelsettings.h index 17c36864431..067209ff3c2 100644 --- a/src/plugins/cpptools/cppcodemodelsettings.h +++ b/src/plugins/cpptools/cppcodemodelsettings.h @@ -40,10 +40,12 @@ namespace CppTools { -class ModelManagerSupport; +class ModelManagerSupportProvider; -class CPPTOOLS_EXPORT CppCodeModelSettings +class CPPTOOLS_EXPORT CppCodeModelSettings : public QObject { + Q_OBJECT + public: enum PCHUsage { PchUse_None = 1, @@ -56,13 +58,13 @@ public: void fromSettings(QSettings *s); void toSettings(QSettings *s); - void setModelManagerSupports(const QList<ModelManagerSupport *> &supporters); + void setModelManagerSupportProviders(const QList<ModelManagerSupportProvider *> &supporters); - QString modelManagerSupportId(const QString &mimeType) const; - void setModelManagerSupportId(const QString &mimeType, const QString &supporter); + QString modelManagerSupportIdForMimeType(const QString &mimeType) const; + void setModelManagerSupportIdForMimeType(const QString &mimeType, const QString &id); - const QHash<QString, QString> &availableModelManagerSupportersByName() const - { return m_availableModelManagerSupportersByName; } + const QHash<QString, QString> &availableModelManagerSupportProvidersByName() const + { return m_modelManagerSupportsByName; } QString defaultId() const { return m_defaultId; } @@ -75,12 +77,18 @@ public: static QStringList supportedMimeTypes(); +public: // for tests + void emitChanged(); + +signals: + void changed(); + private: void setIdForMimeType(const QVariant &var, const QString &mimeType); private: QHash<QString, QString> m_modelManagerSupportByMimeType; - QHash<QString, QString> m_availableModelManagerSupportersByName; + QHash<QString, QString> m_modelManagerSupportsByName; QString m_defaultId; PCHUsage m_pchUsage; }; |