Merge branch 'master' into qtquick2
authorGunnar Sletta <gunnar.sletta@nokia.com>
Wed, 15 Jun 2011 17:00:08 +0000 (19:00 +0200)
committerGunnar Sletta <gunnar.sletta@nokia.com>
Wed, 15 Jun 2011 17:00:08 +0000 (19:00 +0200)
Conflicts:
src/declarative/scenegraph/coreapi/qsgdefaultrenderer.cpp
src/declarative/scenegraph/coreapi/qsgdefaultrenderer_p.h
tests/auto/declarative/qdeclarativeinstruction/tst_qdeclarativeinstruction.cpp

Change-Id: Id2267925c4f77b41f63bbbf555b816ca1f55a0ec

1  2 
src/declarative/items/qsgcanvas.cpp
src/declarative/items/qsgitem.cpp
src/declarative/items/qsgitem_p.h
src/declarative/items/qsgitemsmodule.cpp
src/declarative/items/qsgmousearea.cpp
src/declarative/items/qsgtext.cpp
src/declarative/items/qsgtextnode.cpp
src/declarative/scenegraph/coreapi/qsgdefaultrenderer.cpp
src/declarative/scenegraph/coreapi/qsgdefaultrenderer_p.h
src/declarative/scenegraph/coreapi/qsgrenderer.cpp
src/declarative/scenegraph/qsgcontext.cpp

Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -340,15 -336,7 +336,7 @@@ void QSGDefaultRenderer::render(
  
  }
  
- class Foo : public QPair<int, QSGGeometryNode *>
- {
- public:
-     Foo() { }
-     Foo(int i, QSGGeometryNode *n) : QPair<int, QSGGeometryNode *>(i, n) { }
-     bool operator < (const Foo &other) const { return nodeLessThan(second, other.second); }
- };
 -void QMLRenderer::setSortFrontToBackEnabled(bool sort)
 +void QSGDefaultRenderer::setSortFrontToBackEnabled(bool sort)
  {
      printf("setting sorting to... %d\n", sort);
      m_sort_front_to_back = sort;
@@@ -52,7 -52,32 +52,32 @@@ QT_BEGIN_NAMESPAC
  
  QT_MODULE(Declarative)
  
 -class QMLRenderer : public QSGRenderer
+ class IndexGeometryNodePair : public QPair<int, QSGGeometryNode *>
+ {
+ public:
+     IndexGeometryNodePair(int i, QSGGeometryNode *n);
+     bool operator < (const IndexGeometryNodePair &other) const;
+ };
+ // Minimum heap.
+ class IndexGeometryNodePairHeap
+ {
+ public:
+     IndexGeometryNodePairHeap();
+     void insert(const IndexGeometryNodePair &x);
+     const IndexGeometryNodePair &top() const { return v.first(); }
+     IndexGeometryNodePair pop();
+     bool isEmpty() const { return v.isEmpty(); }
+ private:
+     static int parent(int i) { return (i - 1) >> 1; }
+     static int left(int i) { return (i << 1) | 1; }
+     static int right(int i) { return (i + 1) << 1; }
+     QDataBuffer<IndexGeometryNodePair> v;
+ };
 +class QSGDefaultRenderer : public QSGRenderer
  {
      Q_OBJECT
  public: