Move QOpenGLFrameBufferObject from QtGui to QtOpenGL

Task-number: QTBUG-74409
Change-Id: I817ea6f052fc61a6465d443450c8017ac5d0c0e9
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
This commit is contained in:
Johan Klokkhammer Helsing 2020-01-17 15:51:29 +01:00
parent bd4635009d
commit f2bbc9c69f
13 changed files with 22 additions and 28 deletions

View File

@ -52,7 +52,7 @@
#include <QtGui/qopengl.h>
#include <QtGui/qopenglshaderprogram.h>
#include <QtGui/qopenglframebufferobject.h>
#include <QtOpenGL/qopenglframebufferobject.h>
#include <QPropertyAnimation>

View File

@ -258,7 +258,6 @@ qt_extend_target(Gui CONDITION QT_FEATURE_opengl
opengl/qopenglbuffer.cpp opengl/qopenglbuffer.h
opengl/qopenglextensions_p.h
opengl/qopenglextrafunctions.h
opengl/qopenglframebufferobject.cpp opengl/qopenglframebufferobject.h opengl/qopenglframebufferobject_p.h
opengl/qopenglfunctions.cpp opengl/qopenglfunctions.h
opengl/qopenglprogrambinarycache.cpp opengl/qopenglprogrambinarycache_p.h
opengl/qopenglshaderprogram.cpp opengl/qopenglshaderprogram.h

View File

@ -340,7 +340,6 @@ qt_extend_target(Gui CONDITION QT_FEATURE_opengl
opengl/qopenglbuffer.cpp opengl/qopenglbuffer.h
opengl/qopenglextensions_p.h
opengl/qopenglextrafunctions.h
opengl/qopenglframebufferobject.cpp opengl/qopenglframebufferobject.h opengl/qopenglframebufferobject_p.h
opengl/qopenglfunctions.cpp opengl/qopenglfunctions.h
opengl/qopenglprogrambinarycache.cpp opengl/qopenglprogrambinarycache_p.h
opengl/qopenglshaderprogram.cpp opengl/qopenglshaderprogram.h

View File

@ -8,8 +8,6 @@ qtConfig(opengl) {
HEADERS += opengl/qopengl.h \
opengl/qopengl_p.h \
opengl/qopenglfunctions.h \
opengl/qopenglframebufferobject.h \
opengl/qopenglframebufferobject_p.h \
opengl/qopenglbuffer.h \
opengl/qopenglshaderprogram.h \
opengl/qopenglextensions_p.h \
@ -21,7 +19,6 @@ qtConfig(opengl) {
SOURCES += opengl/qopengl.cpp \
opengl/qopenglfunctions.cpp \
opengl/qopenglframebufferobject.cpp \
opengl/qopenglbuffer.cpp \
opengl/qopenglshaderprogram.cpp \
opengl/qopenglversionfunctions.cpp \

View File

@ -11,6 +11,7 @@ qt_add_module(OpenGL
qopengldebug.cpp qopengldebug.h
qopenglengineshadermanager.cpp qopenglengineshadermanager_p.h
qopenglengineshadersource_p.h
qopenglframebufferobject.cpp qopenglframebufferobject.h qopenglframebufferobject_p.h
qopenglgradientcache.cpp qopenglgradientcache_p.h
qopenglpaintdevice.cpp qopenglpaintdevice.h qopenglpaintdevice_p.h
qopenglpaintengine.cpp qopenglpaintengine_p.h

View File

@ -15,6 +15,8 @@ HEADERS += \
qopengldebug.h \
qopenglengineshadermanager_p.h \
qopenglengineshadersource_p.h \
qopenglframebufferobject.h \
qopenglframebufferobject_p.h \
qopenglgradientcache_p.h \
qopenglpaintdevice.h \
qopenglpaintdevice_p.h \
@ -35,6 +37,7 @@ SOURCES += \
qopengl2pexvertexarray.cpp \
qopenglcustomshaderstage.cpp \
qopenglengineshadermanager.cpp \
qopenglframebufferobject.cpp \
qopenglgradientcache.cpp \
qopenglpaintdevice.cpp \
qopenglpaintengine.cpp \

View File

@ -3,7 +3,7 @@
** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the QtGui module of the Qt Toolkit.
** This file is part of the QtOpenGL module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** Commercial License Usage
@ -156,7 +156,7 @@ QT_BEGIN_NAMESPACE
\class QOpenGLFramebufferObjectFormat
\brief The QOpenGLFramebufferObjectFormat class specifies the format of an OpenGL
framebuffer object.
\inmodule QtGui
\inmodule QtOpenGL
\since 5.0
@ -808,7 +808,7 @@ void QOpenGLFramebufferObjectPrivate::initDepthStencilAttachments(QOpenGLContext
\class QOpenGLFramebufferObject
\brief The QOpenGLFramebufferObject class encapsulates an OpenGL framebuffer object.
\since 5.0
\inmodule QtGui
\inmodule QtOpenGL
\ingroup painting-3D
@ -1405,7 +1405,7 @@ static QImage qt_gl_read_framebuffer(const QSize &size, GLenum internal_format,
return QImage();
}
Q_GUI_EXPORT QImage qt_gl_read_framebuffer(const QSize &size, bool alpha_format, bool include_alpha)
Q_OPENGL_EXPORT QImage qt_gl_read_framebuffer(const QSize &size, bool alpha_format, bool include_alpha)
{
return qt_gl_read_framebuffer(size, alpha_format ? GL_RGBA : GL_RGB, include_alpha, true);
}

View File

@ -3,7 +3,7 @@
** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the QtGui module of the Qt Toolkit.
** This file is part of the QtOpenGL module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** Commercial License Usage
@ -40,9 +40,7 @@
#ifndef QOPENGLFRAMEBUFFEROBJECT_H
#define QOPENGLFRAMEBUFFEROBJECT_H
#include <QtGui/qtguiglobal.h>
#ifndef QT_NO_OPENGL
#include <QtOpenGL/qtopenglglobal.h>
#include <QtGui/qopengl.h>
#include <QtGui/qpaintdevice.h>
@ -65,7 +63,7 @@ QT_BEGIN_NAMESPACE
class QOpenGLFramebufferObjectPrivate;
class QOpenGLFramebufferObjectFormat;
class Q_GUI_EXPORT QOpenGLFramebufferObject
class Q_OPENGL_EXPORT QOpenGLFramebufferObject
{
Q_DECLARE_PRIVATE(QOpenGLFramebufferObject)
public:
@ -161,7 +159,7 @@ private:
};
class QOpenGLFramebufferObjectFormatPrivate;
class Q_GUI_EXPORT QOpenGLFramebufferObjectFormat
class Q_OPENGL_EXPORT QOpenGLFramebufferObjectFormat
{
public:
QOpenGLFramebufferObjectFormat();
@ -195,6 +193,4 @@ private:
QT_END_NAMESPACE
#endif // QT_NO_OPENGL
#endif // QOPENGLFRAMEBUFFEROBJECT_H

View File

@ -3,7 +3,7 @@
** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the QtGui module of the Qt Toolkit.
** This file is part of the QtOpenGL module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** Commercial License Usage
@ -51,7 +51,6 @@
// We mean it.
//
#include <QtGui/private/qtguiglobal_p.h>
#include <qopenglframebufferobject.h>
#include <private/qopenglcontext_p.h>
#include <private/qopenglextensions_p.h>
@ -147,6 +146,7 @@ public:
inline GLuint fbo() const { return fbo_guard ? fbo_guard->id() : 0; }
};
Q_OPENGL_EXPORT QImage qt_gl_read_framebuffer(const QSize &size, bool alpha_format, bool include_alpha);
QT_END_NAMESPACE

View File

@ -39,7 +39,6 @@
#include "qopenglwidget.h"
#include <QtGui/QOpenGLContext>
#include <QtGui/QOpenGLFramebufferObject>
#include <QtGui/QOffscreenSurface>
#include <QtGui/QOpenGLFunctions>
#include <QtGui/QWindow>
@ -47,12 +46,14 @@
#include <QtGui/QScreen>
#include <QtGui/qpa/qplatformwindow.h>
#include <QtGui/qpa/qplatformintegration.h>
#include <QtOpenGL/QOpenGLFramebufferObject>
#include <QtOpenGL/QOpenGLPaintDevice>
#include <QtGui/private/qguiapplication_p.h>
#include <QtGui/private/qopenglextensions_p.h>
#include <QtGui/private/qfont_p.h>
#include <QtGui/private/qopenglcontext_p.h>
#include <QtOpenGL/private/qopenglframebufferobject_p.h>
#include <QtOpenGL/private/qopenglpaintdevice_p.h>
#include <QtWidgets/private/qwidget_p.h>
@ -930,8 +931,6 @@ void QOpenGLWidgetPrivate::invalidateFbo()
}
}
extern Q_GUI_EXPORT QImage qt_gl_read_framebuffer(const QSize &size, bool alpha_format, bool include_alpha);
QImage QOpenGLWidgetPrivate::grabFramebuffer()
{
Q_Q(QOpenGLWidget);

View File

@ -38,13 +38,15 @@
****************************************************************************/
#include "qopenglwindow.h"
#include <QtGui/QOpenGLFramebufferObject>
#include <QtGui/QOpenGLFunctions>
#include <QtGui/private/qpaintdevicewindow_p.h>
#include <QtGui/private/qopenglextensions_p.h>
#include <QtGui/private/qopenglcontext_p.h>
#include <QtGui/QMatrix4x4>
#include <QtGui/QOffscreenSurface>
#include <QtOpenGL/private/qopenglframebufferobject_p.h>
#include <QtOpenGL/QOpenGLFramebufferObject>
#include <QtOpenGL/QOpenGLTextureBlitter>
#include <QtOpenGL/QOpenGLPaintDevice>
@ -508,8 +510,6 @@ GLuint QOpenGLWindow::defaultFramebufferObject() const
return 0;
}
extern Q_GUI_EXPORT QImage qt_gl_read_framebuffer(const QSize &size, bool alpha_format, bool include_alpha);
/*!
Returns a copy of the framebuffer.

View File

@ -37,8 +37,8 @@
**
****************************************************************************/
#include <QtOpenGL/QOpenGLFramebufferObject>
#include <QtGui/QOpenGLContext>
#include <QtGui/QOpenGLFramebufferObject>
#include <QtGui/QWindow>
#include <qpa/qplatformbackingstore.h>

View File

@ -26,11 +26,11 @@
**
****************************************************************************/
#include <QtOpenGL/QOpenGLFramebufferObject>
#include <QtOpenGL/QOpenGLPaintDevice>
#include <QtOpenGL/QOpenGLTexture>
#include <QtOpenGL/qopengltextureblitter.h>
#include <QtGui/private/qopenglcontext_p.h>
#include <QtGui/QOpenGLFramebufferObject>
#include <QtGui/QOpenGLFunctions>
#include <QtGui/QOpenGLFunctions_4_2_Core>
#include <QtGui/QOpenGLVertexArrayObject>