aboutsummaryrefslogtreecommitdiffstats
path: root/src/quickwidgets
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@digia.com>2014-08-26 16:40:17 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-08-26 16:40:17 +0200
commit3413f98e57be33d60692296cb44e3e3a83a80c1b (patch)
treef98f87674f21be878469b79c22e6b152e7dc6512 /src/quickwidgets
parent2c42d6af19f57ae013da0a4c45b6e1de8fb99e99 (diff)
parentcc1b216c52d42964c9ac816302414cc6ec376dfe (diff)
Merge "Merge branch 'origin/5.4' into dev" into refs/staging/dev
Diffstat (limited to 'src/quickwidgets')
-rw-r--r--src/quickwidgets/qquickwidget.cpp16
-rw-r--r--src/quickwidgets/qquickwidget_p.h1
2 files changed, 11 insertions, 6 deletions
diff --git a/src/quickwidgets/qquickwidget.cpp b/src/quickwidgets/qquickwidget.cpp
index 6cca36b726..2541359fdd 100644
--- a/src/quickwidgets/qquickwidget.cpp
+++ b/src/quickwidgets/qquickwidget.cpp
@@ -238,6 +238,15 @@ void QQuickWidgetPrivate::renderSceneGraph()
q->update();
}
+QImage QQuickWidgetPrivate::grabFramebuffer()
+{
+ if (!context)
+ return QImage();
+
+ context->makeCurrent(offscreenSurface);
+ return renderControl->grab();
+}
+
/*!
\module QtQuickWidgets
\title Qt Quick Widgets C++ Classes
@@ -1103,12 +1112,7 @@ QSurfaceFormat QQuickWidget::format() const
*/
QImage QQuickWidget::grabFramebuffer() const
{
- Q_D(const QQuickWidget);
- if (!d->context)
- return QImage();
-
- d->context->makeCurrent(d->offscreenSurface);
- return d->renderControl->grab();
+ return const_cast<QQuickWidgetPrivate *>(d_func())->grabFramebuffer();
}
QT_END_NAMESPACE
diff --git a/src/quickwidgets/qquickwidget_p.h b/src/quickwidgets/qquickwidget_p.h
index 8a8d98f45e..755acb969d 100644
--- a/src/quickwidgets/qquickwidget_p.h
+++ b/src/quickwidgets/qquickwidget_p.h
@@ -89,6 +89,7 @@ public:
void handleContextCreationFailure(const QSurfaceFormat &format, bool isEs);
GLuint textureId() const Q_DECL_OVERRIDE;
+ QImage grabFramebuffer() Q_DECL_OVERRIDE;
void init(QQmlEngine* e = 0);
void handleWindowChange();