diff options
Diffstat (limited to 'examples/quick/scenegraph')
-rw-r--r-- | examples/quick/scenegraph/openglunderqml/squircle.cpp | 5 | ||||
-rw-r--r-- | examples/quick/scenegraph/openglunderqml/squircle.h | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/examples/quick/scenegraph/openglunderqml/squircle.cpp b/examples/quick/scenegraph/openglunderqml/squircle.cpp index 8ef975c5b6..2834b93e10 100644 --- a/examples/quick/scenegraph/openglunderqml/squircle.cpp +++ b/examples/quick/scenegraph/openglunderqml/squircle.cpp @@ -97,6 +97,7 @@ void Squircle::sync() } m_renderer->setViewportSize(window()->size() * window()->devicePixelRatio()); m_renderer->setT(m_t); + m_renderer->setWindow(window()); } //! [9] @@ -156,5 +157,9 @@ void SquircleRenderer::paint() m_program->disableAttributeArray(0); m_program->release(); + + // Not strictly needed for this example, but generally useful for when + // mixing with raw OpenGL. + m_window->resetOpenGLState(); } //! [5] diff --git a/examples/quick/scenegraph/openglunderqml/squircle.h b/examples/quick/scenegraph/openglunderqml/squircle.h index f797d7a7a5..28016def44 100644 --- a/examples/quick/scenegraph/openglunderqml/squircle.h +++ b/examples/quick/scenegraph/openglunderqml/squircle.h @@ -50,6 +50,7 @@ public: void setT(qreal t) { m_t = t; } void setViewportSize(const QSize &size) { m_viewportSize = size; } + void setWindow(QQuickWindow *window) { m_window = window; } public slots: void paint(); @@ -58,6 +59,7 @@ private: QSize m_viewportSize; qreal m_t; QOpenGLShaderProgram *m_program; + QQuickWindow *m_window; }; //! [1] |