summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAlexis Menard <alexis.menard@nokia.com>2009-06-17 12:15:14 (GMT)
committerAlexis Menard <alexis.menard@nokia.com>2009-06-17 12:15:14 (GMT)
commit8a0e002ccc762ef3edbc3c9ad91b4d6017cb91bb (patch)
treeb8a8186c0089cb8843d2cec1802e0064f25822e3 /src
parentcd43fc3a5fed0b3c45050d1fb286cef39ee1ac52 (diff)
downloadQt-8a0e002ccc762ef3edbc3c9ad91b4d6017cb91bb.zip
Qt-8a0e002ccc762ef3edbc3c9ad91b4d6017cb91bb.tar.gz
Qt-8a0e002ccc762ef3edbc3c9ad91b4d6017cb91bb.tar.bz2
Make eveything internal for now but ready to see the light.
Diffstat (limited to 'src')
-rw-r--r--src/gui/graphicsview/graphicsview.pri6
-rw-r--r--src/gui/graphicsview/qgraphicsitem.cpp2
-rw-r--r--src/gui/graphicsview/qgraphicsscene.cpp7
-rw-r--r--src/gui/graphicsview/qgraphicsscene_p.h1
-rw-r--r--src/gui/graphicsview/qgraphicsscenebsptreeindex.cpp (renamed from src/gui/graphicsview/qgraphicsscenebsptreeindex_p.cpp)7
-rw-r--r--src/gui/graphicsview/qgraphicsscenebsptreeindex.h119
-rw-r--r--src/gui/graphicsview/qgraphicsscenebsptreeindex_p.h137
-rw-r--r--src/gui/graphicsview/qgraphicsscenebsptreeindex_p_p.h150
-rw-r--r--src/gui/graphicsview/qgraphicssceneindex.cpp2
-rw-r--r--src/gui/graphicsview/qgraphicssceneindex.h13
-rw-r--r--src/gui/graphicsview/qgraphicsscenelinearindex.cpp3
-rw-r--r--src/gui/graphicsview/qgraphicsscenelinearindex.h (renamed from src/gui/graphicsview/qgraphicsscenelinearindex_p.h)18
12 files changed, 253 insertions, 212 deletions
diff --git a/src/gui/graphicsview/graphicsview.pri b/src/gui/graphicsview/graphicsview.pri
index a4d142a..5ac1c54 100644
--- a/src/gui/graphicsview/graphicsview.pri
+++ b/src/gui/graphicsview/graphicsview.pri
@@ -5,11 +5,11 @@ HEADERS += graphicsview/qgraphicsitem.h \
graphicsview/qgraphicsscene.h \
graphicsview/qgraphicsscene_p.h \
graphicsview/qgraphicsscene_bsp_p.h \
- graphicsview/qgraphicsscenelinearindex_p.h \
+ graphicsview/qgraphicsscenelinearindex.h \
graphicsview/qgraphicssceneindex.h \
graphicsview/qgraphicssceneindex_p.h \
+ graphicsview/qgraphicsscenebsptreeindex.h \
graphicsview/qgraphicsscenebsptreeindex_p.h \
- graphicsview/qgraphicsscenebsptreeindex_p_p.h \
graphicsview/qgraphicssceneevent.h \
graphicsview/qgraphicsview_p.h \
graphicsview/qgraphicsview.h
@@ -17,7 +17,7 @@ SOURCES += graphicsview/qgraphicsitem.cpp \
graphicsview/qgraphicsitemanimation.cpp \
graphicsview/qgraphicsscene.cpp \
graphicsview/qgraphicsscene_bsp.cpp \
- graphicsview/qgraphicsscenebsptreeindex_p.cpp \
+ graphicsview/qgraphicsscenebsptreeindex.cpp \
graphicsview/qgraphicsscenelinearindex.cpp \
graphicsview/qgraphicssceneindex.cpp \
graphicsview/qgraphicssceneevent.cpp \
diff --git a/src/gui/graphicsview/qgraphicsitem.cpp b/src/gui/graphicsview/qgraphicsitem.cpp
index 39ad447..593d7be 100644
--- a/src/gui/graphicsview/qgraphicsitem.cpp
+++ b/src/gui/graphicsview/qgraphicsitem.cpp
@@ -554,7 +554,7 @@
#include "qgraphicsview.h"
#include "qgraphicswidget.h"
#include "qgraphicsproxywidget.h"
-#include "qgraphicsscenebsptreeindex_p_p.h"
+#include "qgraphicsscenebsptreeindex_p.h"
#include <QtCore/qbitarray.h>
#include <QtCore/qdebug.h>
#include <QtCore/qpoint.h>
diff --git a/src/gui/graphicsview/qgraphicsscene.cpp b/src/gui/graphicsview/qgraphicsscene.cpp
index 5a3028c..a33cb3e 100644
--- a/src/gui/graphicsview/qgraphicsscene.cpp
+++ b/src/gui/graphicsview/qgraphicsscene.cpp
@@ -220,7 +220,8 @@
#include "qgraphicswidget.h"
#include "qgraphicswidget_p.h"
#include "qgraphicssceneindex.h"
-#include "qgraphicsscenebsptreeindex_p_p.h"
+#include "qgraphicsscenebsptreeindex.h"
+#include "qgraphicsscenelinearindex.h"
#include <QtCore/qdebug.h>
#include <QtCore/qlist.h>
@@ -1574,6 +1575,8 @@ void QGraphicsScene::setItemIndexMethod(ItemIndexMethod method)
}
/*!
+ \internal
+
\brief the item indexing method.
This method allow to apply an indexing algorithm \a index to the scene, to speed up
item discovery functions like items() and itemAt().
@@ -1595,6 +1598,8 @@ void QGraphicsScene::setSceneIndex(QGraphicsSceneIndex *index)
}
/*!
+ \internal
+
This method return the current indexing algorithm of the scene.
\sa setSceneIndex(), QGraphicsSceneIndex
diff --git a/src/gui/graphicsview/qgraphicsscene_p.h b/src/gui/graphicsview/qgraphicsscene_p.h
index 72ae158..563e016 100644
--- a/src/gui/graphicsview/qgraphicsscene_p.h
+++ b/src/gui/graphicsview/qgraphicsscene_p.h
@@ -58,7 +58,6 @@
#if !defined(QT_NO_GRAPHICSVIEW) || (QT_EDITION & QT_MODULE_GRAPHICSVIEW) != QT_MODULE_GRAPHICSVIEW
#include "qgraphicsscenebsptreeindex_p.h"
-#include "qgraphicsscenelinearindex_p.h"
#include "qgraphicssceneindex.h"
#include "qgraphicsview.h"
#include "qgraphicsitem_p.h"
diff --git a/src/gui/graphicsview/qgraphicsscenebsptreeindex_p.cpp b/src/gui/graphicsview/qgraphicsscenebsptreeindex.cpp
index b19248a..76fd218 100644
--- a/src/gui/graphicsview/qgraphicsscenebsptreeindex_p.cpp
+++ b/src/gui/graphicsview/qgraphicsscenebsptreeindex.cpp
@@ -47,6 +47,7 @@
\ingroup multimedia
\ingroup graphicsview-api
\mainclass
+ \internal
QGraphicsSceneBspTreeIndex index use a BSP(Binary Space Partitioning)
implementation to discover items quickly. This implementation is
@@ -74,11 +75,11 @@
\sa QGraphicsScene, QGraphicsView, QGraphicsSceneIndex
*/
-#include "qgraphicsscenebsptreeindex_p.h"
+#include "qgraphicsscenebsptreeindex.h"
#ifndef QT_NO_GRAPHICSVIEW
-#include "qgraphicsscenebsptreeindex_p_p.h"
+#include "qgraphicsscenebsptreeindex_p.h"
#include "qgraphicssceneindex_p.h"
#include "qgraphicsitem_p.h"
#include "qgraphicsscene_p.h"
@@ -754,7 +755,7 @@ bool QGraphicsSceneBspTreeIndex::event(QEvent *event)
QT_END_NAMESPACE
-#include "moc_qgraphicsscenebsptreeindex_p.cpp"
+#include "moc_qgraphicsscenebsptreeindex.cpp"
#endif // QT_NO_GRAPHICSVIEW
diff --git a/src/gui/graphicsview/qgraphicsscenebsptreeindex.h b/src/gui/graphicsview/qgraphicsscenebsptreeindex.h
new file mode 100644
index 0000000..0444a30
--- /dev/null
+++ b/src/gui/graphicsview/qgraphicsscenebsptreeindex.h
@@ -0,0 +1,119 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtCore/qglobal.h>
+
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists for the convenience
+// of qapplication_*.cpp, qwidget*.cpp and qfiledialog.cpp. This header
+// file may change from version to version without notice, or even be removed.
+//
+// We mean it.
+//
+
+#ifndef QGRAPHICSBSPTREEINDEX_H
+#define QGRAPHICSBSPTREEINDEX_H
+
+QT_BEGIN_HEADER
+
+QT_BEGIN_NAMESPACE
+
+QT_MODULE(Gui)
+
+#if !defined(QT_NO_GRAPHICSVIEW) || (QT_EDITION & QT_MODULE_GRAPHICSVIEW) != QT_MODULE_GRAPHICSVIEW
+
+#include <QtCore/qrect.h>
+#include <QtCore/qlist.h>
+#include <QtGui/qgraphicsitem.h>
+#include <QtGui/qgraphicsscene.h>
+#include <QtGui/qgraphicssceneindex.h>
+
+#include "qgraphicsscene_bsp_p.h"
+
+class QGraphicsSceneBspTreeIndexPrivate;
+
+class Q_AUTOTEST_EXPORT QGraphicsSceneBspTreeIndex : public QGraphicsSceneIndex
+{
+ Q_OBJECT
+ Q_PROPERTY(int bspTreeDepth READ bspTreeDepth WRITE setBspTreeDepth)
+public:
+ QGraphicsSceneBspTreeIndex(QGraphicsScene *scene = 0);
+ QRectF indexedRect() const;
+
+ QList<QGraphicsItem *> estimateItems(const QRectF &rect, Qt::SortOrder order, const QTransform &deviceTransform) const;
+
+ QList<QGraphicsItem *> items(Qt::SortOrder order = Qt::AscendingOrder) const;
+
+ int bspTreeDepth();
+ void setBspTreeDepth(int depth);
+
+protected:
+ bool event(QEvent *event);
+ void clear();
+
+ void addItem(QGraphicsItem *item);
+ void removeItem(QGraphicsItem *item);
+ void deleteItem(QGraphicsItem *item);
+ void prepareBoundingRectChange(const QGraphicsItem *item);
+
+ void sceneRectChanged(const QRectF &rect);
+ void itemChanged(const QGraphicsItem *item, QGraphicsItem::GraphicsItemChange change, const QVariant &value);
+
+private :
+ Q_DECLARE_PRIVATE(QGraphicsSceneBspTreeIndex)
+ Q_DISABLE_COPY(QGraphicsSceneBspTreeIndex)
+ Q_PRIVATE_SLOT(d_func(), void _q_updateSortCache())
+ Q_PRIVATE_SLOT(d_func(), void _q_updateIndex())
+
+ friend class QGraphicsScene;
+ friend class QGraphicsScenePrivate;
+};
+
+#endif // QT_NO_GRAPHICSVIEW
+
+QT_END_NAMESPACE
+
+QT_END_HEADER
+
+#endif // QGRAPHICSBSPTREEINDEX_H
diff --git a/src/gui/graphicsview/qgraphicsscenebsptreeindex_p.h b/src/gui/graphicsview/qgraphicsscenebsptreeindex_p.h
index 40b8f0b..6bafbc8 100644
--- a/src/gui/graphicsview/qgraphicsscenebsptreeindex_p.h
+++ b/src/gui/graphicsview/qgraphicsscenebsptreeindex_p.h
@@ -39,63 +39,112 @@
**
****************************************************************************/
-#include <QtCore/qglobal.h>
-
-#ifndef QGRAPHICSBSPTREEINDEX_H
-#define QGRAPHICSBSPTREEINDEX_H
+#ifndef QGRAPHICSSCENEBSPTREEINDEX_P_H
+#define QGRAPHICSSCENEBSPTREEINDEX_P_H
+
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists for the convenience
+// of qapplication_*.cpp, qwidget*.cpp and qfiledialog.cpp. This header
+// file may change from version to version without notice, or even be removed.
+//
+// We mean it.
+//
+
+#include "qgraphicsscenebsptreeindex.h"
#if !defined(QT_NO_GRAPHICSVIEW) || (QT_EDITION & QT_MODULE_GRAPHICSVIEW) != QT_MODULE_GRAPHICSVIEW
+#include <private/qgraphicssceneindex_p.h>
+#include <private/qgraphicsitem_p.h>
+
QT_BEGIN_NAMESPACE
-#include <QtCore/qrect.h>
-#include <QtCore/qlist.h>
-#include <QtGui/qgraphicsitem.h>
-#include <QtGui/qgraphicsscene.h>
-#include <QtGui/qgraphicssceneindex.h>
+static const int QGRAPHICSSCENE_INDEXTIMER_TIMEOUT = 2000;
-#include "qgraphicsscene_bsp_p.h"
+class QGraphicsScene;
-class QGraphicsSceneBspTreeIndexPrivate;
-class Q_AUTOTEST_EXPORT QGraphicsSceneBspTreeIndex : public QGraphicsSceneIndex
+class QGraphicsSceneBspTreeIndexPrivate : public QGraphicsSceneIndexPrivate
{
- Q_OBJECT
- Q_PROPERTY(int bspTreeDepth READ bspTreeDepth WRITE setBspTreeDepth)
+ Q_DECLARE_PUBLIC(QGraphicsSceneBspTreeIndex)
public:
- QGraphicsSceneBspTreeIndex(QGraphicsScene *scene = 0);
- QRectF indexedRect() const;
-
- QList<QGraphicsItem *> estimateItems(const QRectF &rect, Qt::SortOrder order, const QTransform &deviceTransform) const;
-
- QList<QGraphicsItem *> items(Qt::SortOrder order = Qt::AscendingOrder) const;
-
- int bspTreeDepth();
- void setBspTreeDepth(int depth);
-
-protected:
- bool event(QEvent *event);
- void clear();
-
- void addItem(QGraphicsItem *item);
- void removeItem(QGraphicsItem *item);
- void deleteItem(QGraphicsItem *item);
- void prepareBoundingRectChange(const QGraphicsItem *item);
+ QGraphicsSceneBspTreeIndexPrivate(QGraphicsScene *scene);
+
+ QGraphicsSceneBspTree bsp;
+ QRectF sceneRect;
+ int bspTreeDepth;
+ int indexTimerId;
+ bool restartIndexTimer;
+ bool regenerateIndex;
+ int lastItemCount;
+
+ QList<QGraphicsItem *> indexedItems;
+ QList<QGraphicsItem *> unindexedItems;
+ QList<int> freeItemIndexes;
+
+ bool purgePending;
+ QSet<QGraphicsItem *> removedItems;
+ void purgeRemovedItems();
+
+ void _q_updateIndex();
+ void startIndexTimer(int interval = QGRAPHICSSCENE_INDEXTIMER_TIMEOUT);
+ void resetIndex();
+
+ void addToIndex(QGraphicsItem *item);
+ void removeFromIndex(QGraphicsItem *item);
+
+ void _q_updateSortCache();
+ bool sortCacheEnabled;
+ bool updatingSortCache;
+ void invalidateSortCache();
+
+ static void climbTree(QGraphicsItem *item, int *stackingOrder);
+ static bool closestItemFirst_withoutCache(const QGraphicsItem *item1, const QGraphicsItem *item2);
+ static bool closestItemLast_withoutCache(const QGraphicsItem *item1, const QGraphicsItem *item2);
+
+ static inline bool closestItemFirst_withCache(const QGraphicsItem *item1, const QGraphicsItem *item2)
+ {
+ return item1->d_ptr->globalStackingOrder < item2->d_ptr->globalStackingOrder;
+ }
+ static inline bool closestItemLast_withCache(const QGraphicsItem *item1, const QGraphicsItem *item2)
+ {
+ return item1->d_ptr->globalStackingOrder >= item2->d_ptr->globalStackingOrder;
+ }
+
+ static void sortItems(QList<QGraphicsItem *> *itemList, Qt::SortOrder order, bool cached);
+};
- void sceneRectChanged(const QRectF &rect);
- void itemChanged(const QGraphicsItem *item, QGraphicsItem::GraphicsItemChange change, const QVariant &value);
-private :
- Q_DECLARE_PRIVATE(QGraphicsSceneBspTreeIndex)
- Q_DISABLE_COPY(QGraphicsSceneBspTreeIndex)
- Q_PRIVATE_SLOT(d_func(), void _q_updateSortCache())
- Q_PRIVATE_SLOT(d_func(), void _q_updateIndex())
+/*!
+ \internal
+*/
+inline bool qt_closestLeaf(const QGraphicsItem *item1, const QGraphicsItem *item2)
+{
+ // Return true if sibling item1 is on top of item2.
+ const QGraphicsItemPrivate *d1 = item1->d_ptr;
+ const QGraphicsItemPrivate *d2 = item2->d_ptr;
+ bool f1 = d1->flags & QGraphicsItem::ItemStacksBehindParent;
+ bool f2 = d2->flags & QGraphicsItem::ItemStacksBehindParent;
+ if (f1 != f2) return f2;
+ qreal z1 = d1->z;
+ qreal z2 = d2->z;
+ return z1 > z2;
+}
+
+/*!
+ \internal
+*/
+static inline bool qt_notclosestLeaf(const QGraphicsItem *item1, const QGraphicsItem *item2)
+{
+ return qt_closestLeaf(item2, item1);
+}
- friend class QGraphicsScene;
- friend class QGraphicsScenePrivate;
-};
QT_END_NAMESPACE
-#endif // QT_NO_GRAPHICSVIEW
+#endif // QGRAPHICSSCENEBSPTREEINDEX_P_H
+
+#endif
-#endif // QGRAPHICSBSPTREEINDEX_H
diff --git a/src/gui/graphicsview/qgraphicsscenebsptreeindex_p_p.h b/src/gui/graphicsview/qgraphicsscenebsptreeindex_p_p.h
deleted file mode 100644
index 30f6e26..0000000
--- a/src/gui/graphicsview/qgraphicsscenebsptreeindex_p_p.h
+++ /dev/null
@@ -1,150 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
-** Contact: Qt Software Information (qt-info@nokia.com)
-**
-** This file is part of the QtGui module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** No Commercial Usage
-** This file contains pre-release code and may not be distributed.
-** You may use this file in accordance with the terms and conditions
-** contained in the either Technology Preview License Agreement or the
-** Beta Release License Agreement.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain
-** additional rights. These rights are described in the Nokia Qt LGPL
-** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
-** package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU General Public License version 3.0 requirements will be
-** met: http://www.gnu.org/copyleft/gpl.html.
-**
-** If you are unsure which license is appropriate for your use, please
-** contact the sales department at qt-sales@nokia.com.
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef QGRAPHICSSCENEBSPTREEINDEX_P_P_H
-#define QGRAPHICSSCENEBSPTREEINDEX_P_P_H
-
-//
-// W A R N I N G
-// -------------
-//
-// This file is not part of the Qt API. It exists for the convenience
-// of qapplication_*.cpp, qwidget*.cpp and qfiledialog.cpp. This header
-// file may change from version to version without notice, or even be removed.
-//
-// We mean it.
-//
-
-#include "qgraphicsscenebsptreeindex_p.h"
-
-#if !defined(QT_NO_GRAPHICSVIEW) || (QT_EDITION & QT_MODULE_GRAPHICSVIEW) != QT_MODULE_GRAPHICSVIEW
-
-#include <private/qgraphicssceneindex_p.h>
-#include <private/qgraphicsitem_p.h>
-
-QT_BEGIN_NAMESPACE
-
-static const int QGRAPHICSSCENE_INDEXTIMER_TIMEOUT = 2000;
-
-class QGraphicsScene;
-
-class QGraphicsSceneBspTreeIndexPrivate : public QGraphicsSceneIndexPrivate
-{
- Q_DECLARE_PUBLIC(QGraphicsSceneBspTreeIndex)
-public:
- QGraphicsSceneBspTreeIndexPrivate(QGraphicsScene *scene);
-
- QGraphicsSceneBspTree bsp;
- QRectF sceneRect;
- int bspTreeDepth;
- int indexTimerId;
- bool restartIndexTimer;
- bool regenerateIndex;
- int lastItemCount;
-
- QList<QGraphicsItem *> indexedItems;
- QList<QGraphicsItem *> unindexedItems;
- QList<int> freeItemIndexes;
-
- bool purgePending;
- QSet<QGraphicsItem *> removedItems;
- void purgeRemovedItems();
-
- void _q_updateIndex();
- void startIndexTimer(int interval = QGRAPHICSSCENE_INDEXTIMER_TIMEOUT);
- void resetIndex();
-
- void addToIndex(QGraphicsItem *item);
- void removeFromIndex(QGraphicsItem *item);
-
- void _q_updateSortCache();
- bool sortCacheEnabled;
- bool updatingSortCache;
- void invalidateSortCache();
-
- static void climbTree(QGraphicsItem *item, int *stackingOrder);
- static bool closestItemFirst_withoutCache(const QGraphicsItem *item1, const QGraphicsItem *item2);
- static bool closestItemLast_withoutCache(const QGraphicsItem *item1, const QGraphicsItem *item2);
-
- static inline bool closestItemFirst_withCache(const QGraphicsItem *item1, const QGraphicsItem *item2)
- {
- return item1->d_ptr->globalStackingOrder < item2->d_ptr->globalStackingOrder;
- }
- static inline bool closestItemLast_withCache(const QGraphicsItem *item1, const QGraphicsItem *item2)
- {
- return item1->d_ptr->globalStackingOrder >= item2->d_ptr->globalStackingOrder;
- }
-
- static void sortItems(QList<QGraphicsItem *> *itemList, Qt::SortOrder order, bool cached);
-};
-
-
-/*!
- \internal
-*/
-inline bool qt_closestLeaf(const QGraphicsItem *item1, const QGraphicsItem *item2)
-{
- // Return true if sibling item1 is on top of item2.
- const QGraphicsItemPrivate *d1 = item1->d_ptr;
- const QGraphicsItemPrivate *d2 = item2->d_ptr;
- bool f1 = d1->flags & QGraphicsItem::ItemStacksBehindParent;
- bool f2 = d2->flags & QGraphicsItem::ItemStacksBehindParent;
- if (f1 != f2) return f2;
- qreal z1 = d1->z;
- qreal z2 = d2->z;
- return z1 > z2;
-}
-
-/*!
- \internal
-*/
-static inline bool qt_notclosestLeaf(const QGraphicsItem *item1, const QGraphicsItem *item2)
-{
- return qt_closestLeaf(item2, item1);
-}
-
-
-QT_END_NAMESPACE
-
-#endif // QGRAPHICSSCENEBSPTREEINDEX_P_P_H
-
-#endif
-
diff --git a/src/gui/graphicsview/qgraphicssceneindex.cpp b/src/gui/graphicsview/qgraphicssceneindex.cpp
index 05ec28b..966d8fe 100644
--- a/src/gui/graphicsview/qgraphicssceneindex.cpp
+++ b/src/gui/graphicsview/qgraphicssceneindex.cpp
@@ -46,6 +46,7 @@
\ingroup multimedia
\ingroup graphicsview-api
\mainclass
+ \internal
The QGraphicsSceneIndex class provides a base class to implement
a custom indexing algorithm for discovering items in QGraphicsScene. You
@@ -57,7 +58,6 @@
#include "qgraphicssceneindex.h"
#include "qgraphicssceneindex_p.h"
-#include "qgraphicsscenebsptreeindex_p_p.h"
#include "qgraphicsscene.h"
#include "qgraphicsitem_p.h"
#include "qgraphicsscene_p.h"
diff --git a/src/gui/graphicsview/qgraphicssceneindex.h b/src/gui/graphicsview/qgraphicssceneindex.h
index 084a623..c0e415c 100644
--- a/src/gui/graphicsview/qgraphicssceneindex.h
+++ b/src/gui/graphicsview/qgraphicssceneindex.h
@@ -42,6 +42,17 @@
#ifndef QGRAPHICSSCENEINDEX_H
#define QGRAPHICSSCENEINDEX_H
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists for the convenience
+// of qapplication_*.cpp, qwidget*.cpp and qfiledialog.cpp. This header
+// file may change from version to version without notice, or even be removed.
+//
+// We mean it.
+//
+
#include <QtCore/qnamespace.h>
#include <QtCore/qobject.h>
#include <QtGui/qtransform.h>
@@ -61,7 +72,7 @@ class QRectF;
class QPointF;
template<typename T> class QList;
-class Q_GUI_EXPORT QGraphicsSceneIndex: public QObject
+class Q_AUTOTEST_EXPORT QGraphicsSceneIndex: public QObject
{
Q_OBJECT
diff --git a/src/gui/graphicsview/qgraphicsscenelinearindex.cpp b/src/gui/graphicsview/qgraphicsscenelinearindex.cpp
index 1c898bc..5504493 100644
--- a/src/gui/graphicsview/qgraphicsscenelinearindex.cpp
+++ b/src/gui/graphicsview/qgraphicsscenelinearindex.cpp
@@ -1,4 +1,4 @@
-#include "qgraphicsscenelinearindex_p.h"
+#include "qgraphicsscenelinearindex.h"
/*!
\class QGraphicsSceneLinearIndex
@@ -8,6 +8,7 @@
\ingroup multimedia
\ingroup graphicsview-api
\mainclass
+ \internal
QGraphicsSceneLinearIndex index is default linear implementation to discover items.
It basically store all items in a list and return them to the scene.
diff --git a/src/gui/graphicsview/qgraphicsscenelinearindex_p.h b/src/gui/graphicsview/qgraphicsscenelinearindex.h
index d21475c..b793d98 100644
--- a/src/gui/graphicsview/qgraphicsscenelinearindex_p.h
+++ b/src/gui/graphicsview/qgraphicsscenelinearindex.h
@@ -39,8 +39,8 @@
**
****************************************************************************/
-#ifndef QGRAPHICSSCENELINEARINDEX_P_H
-#define QGRAPHICSSCENELINEARINDEX_P_H
+#ifndef QGRAPHICSSCENELINEARINDEX_H
+#define QGRAPHICSSCENELINEARINDEX_H
//
// W A R N I N G
@@ -55,6 +55,12 @@
#include <QtCore/qlist.h>
+QT_BEGIN_HEADER
+
+QT_BEGIN_NAMESPACE
+
+QT_MODULE(Gui)
+
#if !defined(QT_NO_GRAPHICSVIEW) || (QT_EDITION & QT_MODULE_GRAPHICSVIEW) != QT_MODULE_GRAPHICSVIEW
#include <QtCore/qrect.h>
@@ -62,8 +68,6 @@
#include <QtGui/qgraphicssceneindex.h>
#include <QtGui/qgraphicsitem.h>
-QT_BEGIN_NAMESPACE
-
class Q_AUTOTEST_EXPORT QGraphicsSceneLinearIndex : public QGraphicsSceneIndex
{
Q_OBJECT
@@ -111,8 +115,10 @@ private:
QList<QGraphicsItem*> m_items;
};
+#endif // QT_NO_GRAPHICSVIEW
+
QT_END_NAMESPACE
-#endif // QT_NO_GRAPHICSVIEW
+QT_END_HEADER
-#endif // QGRAPHICSSCENELINEARINDEX_P_H
+#endif // QGRAPHICSSCENELINEARINDEX_H