summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qwidget_p.h
diff options
context:
space:
mode:
authorPaul Olav Tvete <paul.tvete@nokia.com>2010-08-19 10:43:58 (GMT)
committerPaul Olav Tvete <paul.tvete@nokia.com>2010-08-19 10:43:58 (GMT)
commit0e451e855e54f6827e11f7664450aaf0be208203 (patch)
tree26ceb00aa948c1cbd8103a825fc5582d6a1bd719 /src/gui/kernel/qwidget_p.h
parenta226143eeda6771efc4f0df6955351336735cb60 (diff)
parent872ccdcc090cec252cea2109d2fc9f2f2ee4c795 (diff)
downloadQt-0e451e855e54f6827e11f7664450aaf0be208203.zip
Qt-0e451e855e54f6827e11f7664450aaf0be208203.tar.gz
Qt-0e451e855e54f6827e11f7664450aaf0be208203.tar.bz2
Merge remote branch 'lighthouse/4.7' into lighthouse-master
Conflicts: src/plugins/bearer/connman/qconnmanservice_linux.cpp tests/auto/qpainter/tst_qpainter.cpp
Diffstat (limited to 'src/gui/kernel/qwidget_p.h')
-rw-r--r--src/gui/kernel/qwidget_p.h17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/gui/kernel/qwidget_p.h b/src/gui/kernel/qwidget_p.h
index d7a1f56..1146a51 100644
--- a/src/gui/kernel/qwidget_p.h
+++ b/src/gui/kernel/qwidget_p.h
@@ -113,17 +113,18 @@ class QWidgetItemV2;
class QStyle;
-class Q_AUTOTEST_EXPORT QRefCountedWidgetBackingStore
+class Q_AUTOTEST_EXPORT QWidgetBackingStoreTracker
{
+
public:
- QRefCountedWidgetBackingStore();
- ~QRefCountedWidgetBackingStore();
+ QWidgetBackingStoreTracker();
+ ~QWidgetBackingStoreTracker();
void create(QWidget *tlw);
void destroy();
- void ref();
- void deref();
+ void registerWidget(QWidget *w);
+ void unregisterWidget(QWidget *w);
inline QWidgetBackingStore* data()
{
@@ -146,11 +147,11 @@ public:
}
private:
- Q_DISABLE_COPY(QRefCountedWidgetBackingStore)
+ Q_DISABLE_COPY(QWidgetBackingStoreTracker)
private:
QWidgetBackingStore* m_ptr;
- int m_count;
+ QSet<QWidget *> m_widgets;
};
struct QTLWExtra {
@@ -159,7 +160,7 @@ struct QTLWExtra {
// Regular pointers (keep them together to avoid gaps on 64 bits architectures).
QIcon *icon; // widget icon
QPixmap *iconPixmap;
- QRefCountedWidgetBackingStore backingStore;
+ QWidgetBackingStoreTracker backingStore;
QWindowSurface *windowSurface;
QPainter *sharedPainter;