From ca76c704fdda670d2f88a169751b991abb8260b9 Mon Sep 17 00:00:00 2001 From: hjk Date: Thu, 10 Jan 2013 15:23:12 +0100 Subject: [PATCH] BaseTreeView: add convenience function to get selected or current rows Change-Id: I3239c52ad2d1eb725e4c10aeb93ee2e73ad5c0b6 Reviewed-by: hjk --- src/libs/utils/basetreeview.cpp | 12 ++++++++++++ src/libs/utils/basetreeview.h | 1 + 2 files changed, 13 insertions(+) diff --git a/src/libs/utils/basetreeview.cpp b/src/libs/utils/basetreeview.cpp index 4de87425623..ef1b30fa73d 100644 --- a/src/libs/utils/basetreeview.cpp +++ b/src/libs/utils/basetreeview.cpp @@ -153,4 +153,16 @@ void BaseTreeView::reset() resizeColumnsToContents(); } +QModelIndexList BaseTreeView::activeRows() const +{ + QItemSelectionModel *selection = selectionModel(); + QModelIndexList indices = selection->selectedRows(); + if (indices.isEmpty()) { + QModelIndex current = selection->currentIndex(); + if (current.isValid()) + indices.append(current); + } + return indices; +} + } // namespace Utils diff --git a/src/libs/utils/basetreeview.h b/src/libs/utils/basetreeview.h index d2694972bec..15415027e71 100644 --- a/src/libs/utils/basetreeview.h +++ b/src/libs/utils/basetreeview.h @@ -46,6 +46,7 @@ public: void setAlwaysAdjustColumnsAction(QAction *action); virtual void addBaseContextActions(QMenu *menu); bool handleBaseContextAction(QAction *action); + QModelIndexList activeRows() const; void setModel(QAbstractItemModel *model); virtual void rowActivated(const QModelIndex &) {}