diff options
author | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2018-02-08 13:31:22 +0100 |
---|---|---|
committer | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2018-02-09 13:29:10 +0000 |
commit | 8389aa144a88a2f5ff6de244920316101a99017c (patch) | |
tree | db2e42ba69787080025041313a790343d5dafda3 /src/plugins/cpptools/cppoverviewmodel.cpp | |
parent | c6d4308ccd5819602864eb128c2ba4b5e31e6511 (diff) | |
download | qt-creator-8389aa144a88a2f5ff6de244920316101a99017c.tar.gz |
Clang: Use more generic methods in OverviewModel
Do not return Document or Symbol. Instead use Link
or LineColumn directly as return values.
Change-Id: I1863d7c3b4985ffe2ae5454622227075ebdc2de7
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Diffstat (limited to 'src/plugins/cpptools/cppoverviewmodel.cpp')
-rw-r--r-- | src/plugins/cpptools/cppoverviewmodel.cpp | 41 |
1 files changed, 28 insertions, 13 deletions
diff --git a/src/plugins/cpptools/cppoverviewmodel.cpp b/src/plugins/cpptools/cppoverviewmodel.cpp index 7fe118f68c..1cf10b4b9f 100644 --- a/src/plugins/cpptools/cppoverviewmodel.cpp +++ b/src/plugins/cpptools/cppoverviewmodel.cpp @@ -31,28 +31,17 @@ #include <cplusplus/Scope.h> #include <cplusplus/Symbols.h> -#include <utils/dropsupport.h> +#include <utils/linecolumn.h> +#include <utils/link.h> using namespace CPlusPlus; namespace CppTools { -OverviewModel::OverviewModel(QObject *parent) - : AbstractOverviewModel(parent) -{ } - -OverviewModel::~OverviewModel() -{ } - bool OverviewModel::hasDocument() const { return _cppDocument; } -Document::Ptr OverviewModel::document() const -{ - return _cppDocument; -} - unsigned OverviewModel::globalSymbolCount() const { unsigned count = 0; @@ -250,4 +239,30 @@ void OverviewModel::rebuild(Document::Ptr doc) endResetModel(); } +bool OverviewModel::isGenerated(const QModelIndex &sourceIndex) const +{ + CPlusPlus::Symbol *symbol = symbolFromIndex(sourceIndex); + return symbol && symbol->isGenerated(); +} + +Utils::Link OverviewModel::linkFromIndex(const QModelIndex &sourceIndex) const +{ + CPlusPlus::Symbol *symbol = symbolFromIndex(sourceIndex); + if (!symbol) + return {}; + + return symbol->toLink(); +} + +Utils::LineColumn OverviewModel::lineColumnFromIndex(const QModelIndex &sourceIndex) const +{ + Utils::LineColumn lineColumn; + CPlusPlus::Symbol *symbol = symbolFromIndex(sourceIndex); + if (!symbol) + return lineColumn; + lineColumn.line = static_cast<int>(symbol->line()); + lineColumn.column = static_cast<int>(symbol->column()); + return lineColumn; +} + } // namespace CppTools |