summaryrefslogtreecommitdiff
path: root/src/plugins/cppeditor/cppeditor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/cppeditor/cppeditor.cpp')
-rw-r--r--src/plugins/cppeditor/cppeditor.cpp63
1 files changed, 33 insertions, 30 deletions
diff --git a/src/plugins/cppeditor/cppeditor.cpp b/src/plugins/cppeditor/cppeditor.cpp
index a691417399..18485a9616 100644
--- a/src/plugins/cppeditor/cppeditor.cpp
+++ b/src/plugins/cppeditor/cppeditor.cpp
@@ -1178,7 +1178,7 @@ void CPPEditorWidget::switchDeclarationDefinition()
bool isVisible = false;
foreach (Core::IEditor *visEditor, editorManager->visibleEditors()) {
if (visEditor->document() &&
- (symbolLink.fileName == visEditor->document()->fileName()) &&
+ (symbolLink.targetFileName == visEditor->document()->fileName()) &&
(visEditor != editor)) {
isVisible = true;
editorManager->activateEditor(visEditor);
@@ -1199,15 +1199,15 @@ void CPPEditorWidget::switchDeclarationDefinition()
if (Symbol *def = symbolFinder()->findMatchingDefinition(lastVisibleSymbol, snapshot)) {
Core::IEditor *editor = editorManager->currentEditor();
CPPEditorWidget::Link symbolLink = linkToSymbol(def);
- if (editorManager->hasSplitter() && (editor->document()->fileName() != symbolLink.fileName)) {
+ if (editorManager->hasSplitter() && (editor->document()->fileName() != symbolLink.targetFileName)) {
if (forceOpenLinksInNextSplit()) {
editorManager->gotoOtherSplit();
} else if (openLinksInNextSplit()) {
bool isVisible = false;
foreach (Core::IEditor *visEditor, editorManager->visibleEditors()) {
- if (visEditor->document() &&
- (symbolLink.fileName == visEditor->document()->fileName()) &&
- (visEditor != editor)) {
+ if (visEditor->document()
+ && (symbolLink.targetFileName == visEditor->document()->fileName())
+ && (visEditor != editor)) {
isVisible = true;
editorManager->activateEditor(visEditor);
break;
@@ -1333,8 +1333,10 @@ CPPEditorWidget::Link CPPEditorWidget::attemptFuncDeclDef(const QTextCursor &cur
doc->translationUnit()->getTokenEndPosition(name->lastToken() - 1, &endLine, &endColumn);
QTextDocument *textDocument = cursor.document();
- result.begin = textDocument->findBlockByNumber(startLine - 1).position() + startColumn - 1;
- result.end = textDocument->findBlockByNumber(endLine - 1).position() + endColumn - 1;
+ result.linkTextStart =
+ textDocument->findBlockByNumber(startLine - 1).position() + startColumn - 1;
+ result.linkTextEnd =
+ textDocument->findBlockByNumber(endLine - 1).position() + endColumn - 1;
}
return result;
@@ -1364,8 +1366,8 @@ CPPEditorWidget::Link CPPEditorWidget::findMacroLink(const QByteArray &name,
foreach (const Macro &macro, doc->definedMacros()) {
if (macro.name() == name) {
Link link;
- link.fileName = macro.fileName();
- link.line = macro.line();
+ link.targetFileName = macro.fileName();
+ link.targetLine = macro.line();
return link;
}
}
@@ -1374,7 +1376,7 @@ CPPEditorWidget::Link CPPEditorWidget::findMacroLink(const QByteArray &name,
for (int index = includes.size() - 1; index != -1; --index) {
const Document::Include &i = includes.at(index);
Link link = findMacroLink(name, snapshot.document(i.fileName()), snapshot, processed);
- if (! link.fileName.isEmpty())
+ if (link.hasValidTarget())
return link;
}
}
@@ -1415,7 +1417,7 @@ CPPEditorWidget::Link CPPEditorWidget::findLinkAt(const QTextCursor &cursor,
++pos;
if (characterAt(pos) == QLatin1Char('(')) {
link = attemptFuncDeclDef(cursor, m_lastSemanticInfo.doc, snapshot);
- if (link.isValid())
+ if (link.hasValidLinkText())
return link;
}
}
@@ -1501,9 +1503,9 @@ CPPEditorWidget::Link CPPEditorWidget::findLinkAt(const QTextCursor &cursor,
const unsigned lineno = cursor.blockNumber() + 1;
foreach (const Document::Include &incl, doc->includes()) {
if (incl.line() == lineno && incl.resolved()) {
- link.fileName = incl.fileName();
- link.begin = beginOfToken + 1;
- link.end = endOfToken - 1;
+ link.targetFileName = incl.fileName();
+ link.linkTextStart = beginOfToken + 1;
+ link.linkTextEnd = endOfToken - 1;
return link;
}
}
@@ -1526,10 +1528,10 @@ CPPEditorWidget::Link CPPEditorWidget::findLinkAt(const QTextCursor &cursor,
const Document::MacroUse *use = doc->findMacroUseAt(endOfToken - 1);
if (use && use->macro().fileName() != CppModelManagerInterface::configurationFileName()) {
const Macro &macro = use->macro();
- link.fileName = macro.fileName();
- link.line = macro.line();
- link.begin = use->begin();
- link.end = use->end();
+ link.targetFileName = macro.fileName();
+ link.targetLine = macro.line();
+ link.linkTextStart = use->begin();
+ link.linkTextEnd = use->end();
return link;
}
}
@@ -1597,8 +1599,8 @@ CPPEditorWidget::Link CPPEditorWidget::findLinkAt(const QTextCursor &cursor,
}
link = linkToSymbol(def ? def : symbol);
- link.begin = beginOfToken;
- link.end = endOfToken;
+ link.linkTextStart = beginOfToken;
+ link.linkTextEnd = endOfToken;
return link;
}
}
@@ -1607,9 +1609,9 @@ CPPEditorWidget::Link CPPEditorWidget::findLinkAt(const QTextCursor &cursor,
QTextCursor macroCursor = cursor;
const QByteArray name = identifierUnderCursor(&macroCursor).toLatin1();
link = findMacroLink(name);
- if (! link.fileName.isEmpty()) {
- link.begin = macroCursor.selectionStart();
- link.end = macroCursor.selectionEnd();
+ if (link.hasValidTarget()) {
+ link.linkTextStart = macroCursor.selectionStart();
+ link.linkTextEnd = macroCursor.selectionEnd();
return link;
}
@@ -1920,8 +1922,9 @@ CPPEditorWidget::Link CPPEditorWidget::linkToSymbol(CPlusPlus::Symbol *symbol)
if (!symbol)
return Link();
- const QString fileName = QString::fromUtf8(symbol->fileName(),
+ const QString filename = QString::fromUtf8(symbol->fileName(),
symbol->fileNameLength());
+
unsigned line = symbol->line();
unsigned column = symbol->column();
@@ -1931,18 +1934,18 @@ CPPEditorWidget::Link CPPEditorWidget::linkToSymbol(CPlusPlus::Symbol *symbol)
if (symbol->isGenerated())
column = 0;
- return Link(fileName, line, column);
+ return Link(filename, line, column);
}
bool CPPEditorWidget::openCppEditorAt(const Link &link)
{
- if (link.fileName.isEmpty())
+ if (link.targetFileName.isEmpty())
return false;
- return TextEditor::BaseTextEditorWidget::openEditorAt(link.fileName,
- link.line,
- link.column,
- Constants::CPPEDITOR_ID);
+ return TextEditor::BaseTextEditorWidget::openEditorAt(link.targetFileName,
+ link.targetLine,
+ link.targetColumn,
+ Constants::CPPEDITOR_ID);
}
void CPPEditorWidget::semanticRehighlight(bool force)