summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndy Nichols <[email protected]>2016-08-12 10:16:46 +0200
committerAndy Nichols <[email protected]>2016-08-15 13:51:53 +0000
commitff57203b57751a38c814419495123d23bb7c3f1e (patch)
tree4fa67e3ce5b37337f6866309ff898030931faacd
parent131eee5cd7547ddb658d6337e1877da3d73b3158 (diff)
Move QTriangulator and QTriangulatingStroker classes to painting
Previously the private APIs for QTriangulator and QTriangulatingStroker were located in src/gui/opengl because they were used by the OpenGL paint engine. These API's are not actually specific to OpenGL however, and were not being built when QT_NO_OPENGL was defined. It makes more sense for these classes to belong in the painting subgroup. Aside from the OpenGL paint engine, these private APIs are used by QtLocation to triangulate polylines to be rendered by QtQuick. Change-Id: Idb4d1e5b2a51394d4c6bcdf9ab1ece99de23d4de Reviewed-by: Laszlo Agocs <[email protected]>
-rw-r--r--src/gui/opengl/opengl.pri5
-rw-r--r--src/gui/painting/painting.pri5
-rw-r--r--src/gui/painting/qrbtree_p.h (renamed from src/gui/opengl/qrbtree_p.h)0
-rw-r--r--src/gui/painting/qtriangulatingstroker.cpp (renamed from src/gui/opengl/qtriangulatingstroker.cpp)0
-rw-r--r--src/gui/painting/qtriangulatingstroker_p.h (renamed from src/gui/opengl/qtriangulatingstroker_p.h)0
-rw-r--r--src/gui/painting/qtriangulator.cpp (renamed from src/gui/opengl/qtriangulator.cpp)11
-rw-r--r--src/gui/painting/qtriangulator_p.h (renamed from src/gui/opengl/qtriangulator_p.h)0
7 files changed, 13 insertions, 8 deletions
diff --git a/src/gui/opengl/opengl.pri b/src/gui/opengl/opengl.pri
index dfaf3042bc4..bdda5381cea 100644
--- a/src/gui/opengl/opengl.pri
+++ b/src/gui/opengl/opengl.pri
@@ -22,12 +22,9 @@ contains(QT_CONFIG, opengl)|contains(QT_CONFIG, opengles2) {
opengl/qopenglpaintengine_p.h \
opengl/qopenglengineshadersource_p.h \
opengl/qopenglcustomshaderstage_p.h \
- opengl/qtriangulatingstroker_p.h \
opengl/qopengltextureglyphcache_p.h \
opengl/qopenglshadercache_p.h \
opengl/qopenglshadercache_meego_p.h \
- opengl/qtriangulator_p.h \
- opengl/qrbtree_p.h \
opengl/qopenglversionfunctions.h \
opengl/qopenglversionfunctionsfactory_p.h \
opengl/qopenglvertexarrayobject.h \
@@ -51,9 +48,7 @@ contains(QT_CONFIG, opengl)|contains(QT_CONFIG, opengles2) {
opengl/qopengl2pexvertexarray.cpp \
opengl/qopenglpaintengine.cpp \
opengl/qopenglcustomshaderstage.cpp \
- opengl/qtriangulatingstroker.cpp \
opengl/qopengltextureglyphcache.cpp \
- opengl/qtriangulator.cpp \
opengl/qopenglversionfunctions.cpp \
opengl/qopenglversionfunctionsfactory.cpp \
opengl/qopenglvertexarrayobject.cpp \
diff --git a/src/gui/painting/painting.pri b/src/gui/painting/painting.pri
index 2f927aeddb0..00f23759239 100644
--- a/src/gui/painting/painting.pri
+++ b/src/gui/painting/painting.pri
@@ -42,6 +42,7 @@ HEADERS += \
painting/qpolygonclipper_p.h \
painting/qrasterdefs_p.h \
painting/qrasterizer_p.h \
+ painting/qrbtree_p.h \
painting/qregion.h \
painting/qrgb.h \
painting/qrgba64.h \
@@ -49,6 +50,8 @@ HEADERS += \
painting/qstroker_p.h \
painting/qtextureglyphcache_p.h \
painting/qtransform.h \
+ painting/qtriangulatingstroker_p.h \
+ painting/qtriangulator_p.h \
painting/qplatformbackingstore.h \
painting/qpathsimplifier_p.h
@@ -92,6 +95,8 @@ SOURCES += \
painting/qstroker.cpp \
painting/qtextureglyphcache.cpp \
painting/qtransform.cpp \
+ painting/qtriangulatingstroker.cpp \
+ painting/qtriangulator.cpp \
painting/qplatformbackingstore.cpp \
painting/qpathsimplifier.cpp
diff --git a/src/gui/opengl/qrbtree_p.h b/src/gui/painting/qrbtree_p.h
index d3ee23a91c1..d3ee23a91c1 100644
--- a/src/gui/opengl/qrbtree_p.h
+++ b/src/gui/painting/qrbtree_p.h
diff --git a/src/gui/opengl/qtriangulatingstroker.cpp b/src/gui/painting/qtriangulatingstroker.cpp
index d9a32311655..d9a32311655 100644
--- a/src/gui/opengl/qtriangulatingstroker.cpp
+++ b/src/gui/painting/qtriangulatingstroker.cpp
diff --git a/src/gui/opengl/qtriangulatingstroker_p.h b/src/gui/painting/qtriangulatingstroker_p.h
index 2b0f08972b7..2b0f08972b7 100644
--- a/src/gui/opengl/qtriangulatingstroker_p.h
+++ b/src/gui/painting/qtriangulatingstroker_p.h
diff --git a/src/gui/opengl/qtriangulator.cpp b/src/gui/painting/qtriangulator.cpp
index 601b51a5fb5..7906011cd2f 100644
--- a/src/gui/opengl/qtriangulator.cpp
+++ b/src/gui/painting/qtriangulator.cpp
@@ -50,9 +50,10 @@
#include <QtCore/qglobal.h>
#include <QtCore/qpoint.h>
#include <QtCore/qalgorithms.h>
-
-#include <private/qopenglcontext_p.h>
-#include <private/qopenglextensions_p.h>
+#ifndef QT_NO_OPENGL
+# include <private/qopenglcontext_p.h>
+# include <private/qopenglextensions_p.h>
+#endif
#include <private/qrbtree_p.h>
QT_BEGIN_NAMESPACE
@@ -2267,10 +2268,14 @@ void QTriangulator<T>::MonotoneToTriangles::decompose()
static bool hasElementIndexUint()
{
+#ifndef QT_NO_OPENGL
QOpenGLContext *context = QOpenGLContext::currentContext();
if (!context)
return false;
return static_cast<QOpenGLExtensions *>(context->functions())->hasOpenGLExtension(QOpenGLExtensions::ElementIndexUint);
+#else
+ return false;
+#endif
}
Q_GUI_EXPORT QTriangleSet qTriangulate(const qreal *polygon,
diff --git a/src/gui/opengl/qtriangulator_p.h b/src/gui/painting/qtriangulator_p.h
index 4d1aba099c1..4d1aba099c1 100644
--- a/src/gui/opengl/qtriangulator_p.h
+++ b/src/gui/painting/qtriangulator_p.h