aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/clangcodemodel/clangcompletionassistprovider.cpp
diff options
context:
space:
mode:
authorMarco Bubke <marco.bubke@theqtcompany.com>2015-10-13 15:56:41 +0200
committerMarco Bubke <marco.bubke@theqtcompany.com>2015-10-13 14:03:11 +0000
commit250c8d662b43f97d485e9833e9a3df2daa2c1d63 (patch)
treebfe7afe07b7295ed34b1f4d17af3f33c7a11468f /src/plugins/clangcodemodel/clangcompletionassistprovider.cpp
parentb1dced66d7f4c39677f401395f6d71ed128a2684 (diff)
Clang: Add UpdateTranslationUnitsForEditorMessage
If an editor is changing all translation units independent of their project part they must be updated too. So we introduce a new message to update all translation units with the same file path. Change-Id: I70d0ea2bbca9fa880111ff7219573e54f3277026 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Diffstat (limited to 'src/plugins/clangcodemodel/clangcompletionassistprovider.cpp')
-rw-r--r--src/plugins/clangcodemodel/clangcompletionassistprovider.cpp25
1 files changed, 14 insertions, 11 deletions
diff --git a/src/plugins/clangcodemodel/clangcompletionassistprovider.cpp b/src/plugins/clangcodemodel/clangcompletionassistprovider.cpp
index eb0f5797ec..4aa358ab08 100644
--- a/src/plugins/clangcodemodel/clangcompletionassistprovider.cpp
+++ b/src/plugins/clangcodemodel/clangcompletionassistprovider.cpp
@@ -31,6 +31,7 @@
#include "clangcompletionassistprovider.h"
#include "clangcompletionassistprocessor.h"
+#include "clangeditordocumentprocessor.h"
#include "clangutils.h"
#include "pchmanager.h"
@@ -70,18 +71,20 @@ TextEditor::AssistInterface *ClangCompletionAssistProvider::createAssistInterfac
int position,
TextEditor::AssistReason reason) const
{
- const CppTools::ProjectPart::Ptr projectPart = Utils::projectPartForFile(filePath);
- QTC_ASSERT(!projectPart.isNull(), return 0);
+ const CppTools::ProjectPart::Ptr projectPart = Utils::projectPartForFileBasedOnProcessor(filePath);
+ if (projectPart) {
+ const PchInfo::Ptr pchInfo = PchManager::instance()->pchInfo(projectPart);
+ return new ClangCompletionAssistInterface(m_ipcCommunicator,
+ textEditorWidget,
+ position,
+ filePath,
+ reason,
+ projectPart->headerPaths,
+ pchInfo,
+ projectPart->languageFeatures);
+ }
- const PchInfo::Ptr pchInfo = PchManager::instance()->pchInfo(projectPart);
- return new ClangCompletionAssistInterface(m_ipcCommunicator,
- textEditorWidget,
- position,
- filePath,
- reason,
- projectPart->headerPaths,
- pchInfo,
- projectPart->languageFeatures);
+ return 0;
}
} // namespace Internal