diff options
Diffstat (limited to 'platform/qt/src')
-rw-r--r-- | platform/qt/src/qmapbox.cpp | 23 | ||||
-rw-r--r-- | platform/qt/src/qmapboxgl.cpp | 14 | ||||
-rw-r--r-- | platform/qt/src/qmapboxgl_p.hpp | 3 |
3 files changed, 17 insertions, 23 deletions
diff --git a/platform/qt/src/qmapbox.cpp b/platform/qt/src/qmapbox.cpp index 126ece1efa..410e114690 100644 --- a/platform/qt/src/qmapbox.cpp +++ b/platform/qt/src/qmapbox.cpp @@ -1,6 +1,5 @@ #include "qmapbox.hpp" -#include <mbgl/gl/extension.hpp> #include <mbgl/storage/network_status.hpp> #include <mbgl/util/default_styles.hpp> #include <mbgl/util/geometry.hpp> @@ -255,26 +254,4 @@ Q_DECL_EXPORT QList<QPair<QString, QString> >& defaultStyles() return styles; } -/*! - \fn void QMapbox::initializeGLExtensions() - - Initializes the OpenGL extensions such as Vertex Array Objects (VAOs), - required by Mapbox GL Native engine. - - Should be called only once, after an OpenGL context is available. - Consecutive calls are ignored. -*/ -Q_DECL_EXPORT void initializeGLExtensions() -{ - mbgl::gl::InitializeExtensions([](const char* name) { -#if QT_VERSION >= 0x050000 - QOpenGLContext* thisContext = QOpenGLContext::currentContext(); - return thisContext->getProcAddress(name); -#else - const QGLContext* thisContext = QGLContext::currentContext(); - return reinterpret_cast<mbgl::gl::glProc>(thisContext->getProcAddress(name)); -#endif - }); -} - } // namespace QMapbox diff --git a/platform/qt/src/qmapboxgl.cpp b/platform/qt/src/qmapboxgl.cpp index 384bdc8ebf..5776502a5b 100644 --- a/platform/qt/src/qmapboxgl.cpp +++ b/platform/qt/src/qmapboxgl.cpp @@ -1678,6 +1678,20 @@ void QMapboxGLPrivate::onSourceChanged(mbgl::style::Source&) emit mapChanged(QMapboxGL::MapChangeSourceDidChange); } +/*! + Initializes an OpenGL extension function such as Vertex Array Objects (VAOs), + required by Mapbox GL Native engine. +*/ +mbgl::gl::ProcAddress QMapboxGLPrivate::initializeExtension(const char* name) { +#if QT_VERSION >= 0x050000 + QOpenGLContext* thisContext = QOpenGLContext::currentContext(); + return thisContext->getProcAddress(name); +#else + const QGLContext* thisContext = QGLContext::currentContext(); + return reinterpret_cast<mbgl::gl::ProcAddress>(thisContext->getProcAddress(name)); +#endif +} + void QMapboxGLPrivate::connectionEstablished() { mbgl::NetworkStatus::Reachable(); diff --git a/platform/qt/src/qmapboxgl_p.hpp b/platform/qt/src/qmapboxgl_p.hpp index 4112542431..464b66bd73 100644 --- a/platform/qt/src/qmapboxgl_p.hpp +++ b/platform/qt/src/qmapboxgl_p.hpp @@ -58,6 +58,9 @@ public: bool dirty { false }; +private: + mbgl::gl::ProcAddress initializeExtension(const char*) override; + public slots: void connectionEstablished(); |