CppEditor: Move CppEditorWidget::linkToSymbol to CppTools

* Cuts direct dependency to CPlusPlus from cppeditor.h, but
  cppfunctiondecldeflink.h still pulls it in.

* Cuts direct dependency to
  cppeditor.h from cppvirtualfunctionassistprovider.cpp, but it still
  depends on cppeditorconstants.h.

* Cuts direct dependency to cppeditor.h from cppelementevaluator.cpp.

The long-term goal is to make the CppEditor independent from concrete
code model backends.

Change-Id: I291ee0d0da5fc5ed1a839a763fe7be11dcf7a6fb
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
This commit is contained in:
Nikolai Kosjar
2015-01-23 13:44:50 +01:00
parent f08266497e
commit cfd3b56187
9 changed files with 36 additions and 35 deletions

View File

@@ -227,4 +227,26 @@ const Macro *findCanonicalMacro(const QTextCursor &cursor, Document::Ptr documen
return 0;
}
TextEditor::TextEditorWidget::Link linkToSymbol(Symbol *symbol)
{
typedef TextEditor::TextEditorWidget::Link Link;
if (!symbol)
return Link();
const QString filename = QString::fromUtf8(symbol->fileName(),
symbol->fileNameLength());
unsigned line = symbol->line();
unsigned column = symbol->column();
if (column)
--column;
if (symbol->isGenerated())
column = 0;
return Link(filename, line, column);
}
} // CppTools

View File

@@ -33,6 +33,8 @@
#include "cpptools_global.h"
#include <texteditor/texteditor.h>
#include <cplusplus/CppDocument.h>
QT_BEGIN_NAMESPACE
@@ -59,6 +61,8 @@ bool CPPTOOLS_EXPORT isValidFirstIdentifierChar(const QChar &ch);
bool CPPTOOLS_EXPORT isValidIdentifierChar(const QChar &ch);
bool CPPTOOLS_EXPORT isValidIdentifier(const QString &s);
TextEditor::TextEditorWidget::Link CPPTOOLS_EXPORT linkToSymbol(CPlusPlus::Symbol *symbol);
QString CPPTOOLS_EXPORT identifierUnderCursor(QTextCursor *cursor);
bool CPPTOOLS_EXPORT isOwnershipRAIIType(CPlusPlus::Symbol *symbol,