summaryrefslogtreecommitdiffstats
path: root/src/plugins/accessible/widgets/itemviews.h
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@nokia.com>2012-04-10 22:58:05 +0200
committerQt by Nokia <qt-info@nokia.com>2012-04-13 18:15:26 +0200
commit76f536d661d4765ef12e146fae1527dcd0508137 (patch)
treed5186d4a41f49a0313d06b21df863b3c5a13c059 /src/plugins/accessible/widgets/itemviews.h
parent5a8c13a7d4420cabf0fadbed6f8cae07162a32d8 (diff)
Use QPointer to store accessible object.
Itemview were not following the established pattern of keeping the referenced object in a QPointer. This made them a lot more crash prone. Port of Qt 4 change. Conflicts: src/plugins/accessible/widgets/itemviews.cpp src/plugins/accessible/widgets/itemviews.h Change-Id: I210b112b9c3647b246fde2d6c69aba9ce8d25bd3 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com> (cherry picked from commit f420ab2870d3c96e9678c24c64b4e26ec8a771bd)
Diffstat (limited to 'src/plugins/accessible/widgets/itemviews.h')
-rw-r--r--src/plugins/accessible/widgets/itemviews.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/plugins/accessible/widgets/itemviews.h b/src/plugins/accessible/widgets/itemviews.h
index 2672cd4a16..1d42c511f0 100644
--- a/src/plugins/accessible/widgets/itemviews.h
+++ b/src/plugins/accessible/widgets/itemviews.h
@@ -42,11 +42,12 @@
#ifndef ACCESSIBLE_ITEMVIEWS_H
#define ACCESSIBLE_ITEMVIEWS_H
-#include <QtWidgets/qabstractitemview.h>
-#include <QtWidgets/qheaderview.h>
+#include "QtCore/qpointer.h"
#include <QtGui/qaccessible.h>
#include <QtGui/qaccessible2.h>
#include <QtWidgets/qaccessiblewidget.h>
+#include <QtWidgets/qabstractitemview.h>
+#include <QtWidgets/qheaderview.h>
QT_BEGIN_NAMESPACE
@@ -65,7 +66,6 @@ public:
virtual ~QAccessibleTable();
- QObject *object() const { return view; }
QAccessible::Role role() const;
QAccessible::State state() const;
QString text(QAccessible::Text t) const;
@@ -103,9 +103,11 @@ public:
virtual bool unselectRow(int row);
virtual bool unselectColumn(int column);
+ QAbstractItemView *view() const;
+
protected:
- QAbstractItemView* view;
inline QAccessibleTableCell *cell(const QModelIndex &index) const;
+
inline QAccessible::Role cellRole() const {
switch (m_role) {
case QAccessible::List:
@@ -193,7 +195,7 @@ public:
private:
QHeaderView *verticalHeader() const;
QHeaderView *horizontalHeader() const;
- QAbstractItemView *view;
+ QPointer<QAbstractItemView > view;
QModelIndex m_index;
QAccessible::Role m_role;