summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools/cppcodecompletion.cpp
diff options
context:
space:
mode:
authorcon <qtc-committer@nokia.com>2009-10-01 17:01:13 +0200
committercon <qtc-committer@nokia.com>2009-10-01 17:02:18 +0200
commitf006183b3d836627ccd9e85d0e9725ddfa45a8a9 (patch)
tree1f96598d1e3023218702ef9126ad87b0b44726af /src/plugins/cpptools/cppcodecompletion.cpp
parent742740634e07308f1ef69527f59286b6796d94cb (diff)
downloadqt-creator-f006183b3d836627ccd9e85d0e9725ddfa45a8a9.tar.gz
Support include completion for frameworks on Mac.
Which is 'quite' important, since Qt builds by default generate frameworks.
Diffstat (limited to 'src/plugins/cpptools/cppcodecompletion.cpp')
-rw-r--r--src/plugins/cpptools/cppcodecompletion.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/plugins/cpptools/cppcodecompletion.cpp b/src/plugins/cpptools/cppcodecompletion.cpp
index ada7f48ab7..988bba9966 100644
--- a/src/plugins/cpptools/cppcodecompletion.cpp
+++ b/src/plugins/cpptools/cppcodecompletion.cpp
@@ -1239,6 +1239,23 @@ bool CppCodeCompletion::completeInclude(const QTextCursor &cursor)
m_completions.append(item);
}
}
+
+ QStringList frameworkPaths = m_manager->projectInfo(project).frameworkPaths;
+ foreach (const QString &frameworkPath, frameworkPaths) {
+ QString realPath = frameworkPath;
+ if (!directoryPrefix.isEmpty()) {
+ realPath += QLatin1Char('/');
+ realPath += directoryPrefix;
+ realPath += QLatin1String(".framework/Headers");
+ }
+ foreach (const QString &itemText, m_manager->includesInPath(realPath)) {
+ TextEditor::CompletionItem item(this);
+ item.m_text += itemText;
+ // TODO: Icon for include files
+ item.m_icon = m_icons.keywordIcon();
+ m_completions.append(item);
+ }
+ }
}
return !m_completions.isEmpty();