From 6da1b0727d7215d8358820562f2b5e1657e5801c Mon Sep 17 00:00:00 2001 From: hjk <qtc-committer@nokia.com> Date: Thu, 13 Oct 2011 10:17:06 +0200 Subject: [PATCH] debugger: make threadsviews sortable Change-Id: I9abdcc76d406f806de0d617aa731f97adde97060 Reviewed-by: hjk <qthjk@ovi.com> --- src/plugins/debugger/moduleshandler.h | 8 +++++--- src/plugins/debugger/threadshandler.cpp | 8 ++++++++ src/plugins/debugger/threadshandler.h | 8 +++++++- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/src/plugins/debugger/moduleshandler.h b/src/plugins/debugger/moduleshandler.h index 1ad8c171be1..7e98b6f2857 100644 --- a/src/plugins/debugger/moduleshandler.h +++ b/src/plugins/debugger/moduleshandler.h @@ -33,11 +33,13 @@ #ifndef DEBUGGER_MODULESHANDLER_H #define DEBUGGER_MODULESHANDLER_H -#include <QtCore/QVector> -#include <QtCore/QObject> #include <QtCore/QAbstractItemModel> +#include <QtCore/QObject> +#include <QtCore/QVector> -QT_FORWARD_DECLARE_CLASS(QSortFilterProxyModel) +QT_BEGIN_NAMESPACE +class QSortFilterProxyModel; +QT_END_NAMESPACE namespace Debugger { namespace Internal { diff --git a/src/plugins/debugger/threadshandler.cpp b/src/plugins/debugger/threadshandler.cpp index 47350c0aa73..7690bf63972 100644 --- a/src/plugins/debugger/threadshandler.cpp +++ b/src/plugins/debugger/threadshandler.cpp @@ -38,6 +38,7 @@ #include <QtCore/QDebug> #include <QtCore/QTextStream> +#include <QtGui/QSortFilterProxyModel> namespace Debugger { namespace Internal { @@ -107,6 +108,8 @@ ThreadsHandler::ThreadsHandler() { m_resetLocationScheduled = false; m_contentsValid = false; + m_proxyModel = new QSortFilterProxyModel(this); + m_proxyModel->setSourceModel(this); } int ThreadsHandler::rowCount(const QModelIndex &parent) const @@ -339,5 +342,10 @@ void ThreadsHandler::resetLocation() } } +QAbstractItemModel *ThreadsHandler::model() +{ + return m_proxyModel; +} + } // namespace Internal } // namespace Debugger diff --git a/src/plugins/debugger/threadshandler.h b/src/plugins/debugger/threadshandler.h index 183ded76735..361bd0f486e 100644 --- a/src/plugins/debugger/threadshandler.h +++ b/src/plugins/debugger/threadshandler.h @@ -38,6 +38,10 @@ #include "threaddata.h" +QT_BEGIN_NAMESPACE +class QSortFilterProxyModel; +QT_END_NAMESPACE + //////////////////////////////////////////////////////////////////////// // // ThreadsHandler @@ -65,7 +69,7 @@ public: void setThreads(const Threads &threads); void removeAll(); Threads threads() const; - QAbstractItemModel *model() { return this; } + QAbstractItemModel *model(); // Clear out all frame information void notifyRunning(); @@ -91,6 +95,8 @@ private: bool m_resetLocationScheduled; bool m_contentsValid; + + QSortFilterProxyModel *m_proxyModel; }; } // namespace Internal -- GitLab