Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qopenglwidget.h
Go to the documentation of this file.
1
// Copyright (C) 2016 The Qt Company Ltd.
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
// Qt-Security score:significant reason:default
4
5
#
ifndef
QOPENGLWIDGET_H
6
#
define
QOPENGLWIDGET_H
7
8
#
include
<
QtOpenGLWidgets
/
qtopenglwidgetsglobal
.
h
>
9
10
#
include
<
QtWidgets
/
QWidget
>
11
#
include
<
QtGui
/
QSurfaceFormat
>
12
#
include
<
QtGui
/
qopengl
.
h
>
13
14
QT_BEGIN_NAMESPACE
15
16
class
QOpenGLWidgetPrivate;
17
18
class
Q_OPENGLWIDGETS_EXPORT
QOpenGLWidget
:
public
QWidget
19
{
20
Q_OBJECT
21
Q_DECLARE_PRIVATE(QOpenGLWidget)
22
23
public
:
24
enum
UpdateBehavior {
25
NoPartialUpdate,
26
PartialUpdate
27
};
28
Q_ENUM(UpdateBehavior)
29
30
enum
TargetBuffer : uint8_t {
31
LeftBuffer = 0,
// Default
32
RightBuffer
// Only used when QSurfaceFormat::StereoBuffers is enabled
33
};
34
Q_ENUM(TargetBuffer)
35
36
explicit
QOpenGLWidget(QWidget* parent =
nullptr
, Qt::WindowFlags f = Qt::WindowFlags());
37
~QOpenGLWidget();
38
39
void
setUpdateBehavior(UpdateBehavior updateBehavior);
40
UpdateBehavior updateBehavior()
const
;
41
42
void
setFormat(
const
QSurfaceFormat &format);
43
QSurfaceFormat format()
const
;
44
45
GLenum textureFormat()
const
;
46
void
setTextureFormat(GLenum texFormat);
47
48
bool
isValid()
const
;
49
50
void
makeCurrent();
51
void
makeCurrent(TargetBuffer targetBuffer);
52
void
doneCurrent();
53
54
QOpenGLContext *context()
const
;
55
GLuint defaultFramebufferObject()
const
;
56
GLuint defaultFramebufferObject(TargetBuffer targetBuffer)
const
;
57
58
QImage grabFramebuffer();
59
QImage grabFramebuffer(TargetBuffer targetBuffer);
60
61
TargetBuffer currentTargetBuffer()
const
;
62
63
Q_SIGNALS:
64
void
aboutToCompose();
65
void
frameSwapped();
66
void
aboutToResize();
67
void
resized();
68
69
protected
:
70
virtual
void
initializeGL();
71
virtual
void
resizeGL(
int
w,
int
h);
72
virtual
void
paintGL();
73
74
void
paintEvent(QPaintEvent *e) override;
75
void
resizeEvent(QResizeEvent *e) override;
76
bool
event(QEvent *e) override;
77
78
int
metric(QPaintDevice::PaintDeviceMetric metric)
const
override;
79
QPaintDevice *redirected(QPoint *p)
const
override;
80
QPaintEngine *paintEngine()
const
override;
81
82
private
:
83
Q_DISABLE_COPY(QOpenGLWidget)
84
};
85
86
QT_END_NAMESPACE
87
88
#
endif
// QOPENGLWIDGET_H
QOpenGLWidgetPaintDevicePrivate
Definition
qopenglwidget.cpp:518
QOpenGLWidgetPaintDevicePrivate::QOpenGLWidgetPaintDevicePrivate
QOpenGLWidgetPaintDevicePrivate(QOpenGLWidget *widget)
Definition
qopenglwidget.cpp:520
QOpenGLWidgetPaintDevicePrivate::beginPaint
void beginPaint() override
Definition
qopenglwidget.cpp:602
QOpenGLWidgetPaintDevicePrivate::endPaint
void endPaint() override
Definition
qopenglwidget.cpp:621
QOpenGLWidgetPaintDevicePrivate::w
QOpenGLWidget * w
Definition
qopenglwidget.cpp:527
QOpenGLWidgetPaintDevice
Definition
qopenglwidget.cpp:531
QOpenGLWidgetPaintDevice::QOpenGLWidgetPaintDevice
QOpenGLWidgetPaintDevice(QOpenGLWidget *widget)
Definition
qopenglwidget.cpp:533
QOpenGLWidgetPaintDevice::ensureActiveTarget
void ensureActiveTarget() override
This virtual method is provided as a callback to allow re-binding a target frame buffer object or con...
Definition
qopenglwidget.cpp:631
QOpenGLWidgetPrivate
Definition
qopenglwidget.cpp:539
QOpenGLWidgetPrivate::endBackingStorePainting
void endBackingStorePainting() override
Definition
qopenglwidget.cpp:571
QOpenGLWidgetPrivate::recreateFbos
void recreateFbos()
Definition
qopenglwidget.cpp:730
QOpenGLWidgetPrivate::beginCompose
void beginCompose() override
Definition
qopenglwidget.cpp:810
QOpenGLWidgetPrivate::inPaintGL
bool inPaintGL
Definition
qopenglwidget.cpp:597
QOpenGLWidgetPrivate::fakeHidden
bool fakeHidden
Definition
qopenglwidget.cpp:593
QOpenGLWidgetPrivate::invalidateFboBeforePainting
void invalidateFboBeforePainting()
Definition
qopenglwidget.cpp:998
QOpenGLWidgetPrivate::resolvedFbos
QOpenGLFramebufferObject * resolvedFbos[2]
Definition
qopenglwidget.cpp:585
QOpenGLWidgetPrivate::textureListFlags
QPlatformTextureList::Flags textureListFlags() override
Definition
qopenglwidget.cpp:673
QOpenGLWidgetPrivate::setCurrentTargetBuffer
bool setCurrentTargetBuffer(QOpenGLWidget::TargetBuffer targetBuffer)
Definition
qopenglwidget.cpp:1704
QOpenGLWidgetPrivate::gl_color_attachment0
static constexpr GLenum gl_color_attachment0
Definition
qopenglwidget.cpp:557
QOpenGLWidgetPrivate::ensureRhiDependentResources
void ensureRhiDependentResources()
Definition
qopenglwidget.cpp:787
QOpenGLWidgetPrivate::textureFormat
GLenum textureFormat
Definition
qopenglwidget.cpp:589
QOpenGLWidgetPrivate::gl_depth_attachment
static constexpr GLenum gl_depth_attachment
Definition
qopenglwidget.cpp:558
QOpenGLWidgetPrivate::initialized
bool initialized
Definition
qopenglwidget.cpp:592
QOpenGLWidgetPrivate::requestedSamples
int requestedSamples
Definition
qopenglwidget.cpp:588
QOpenGLWidgetPrivate::initializeViewportFramebuffer
void initializeViewportFramebuffer() override
Definition
qopenglwidget.cpp:1109
QOpenGLWidgetPrivate::texture
QWidgetPrivate::TextureData texture() const override
Definition
qopenglwidget.cpp:655
QOpenGLWidgetPrivate::context
QOpenGLContext * context
Definition
qopenglwidget.cpp:582
QOpenGLWidgetPrivate::gl_depth_stencil_attachment
static constexpr GLenum gl_depth_stencil_attachment
Definition
qopenglwidget.cpp:560
QOpenGLWidgetPrivate::gl_stencil_attachment
static constexpr GLenum gl_stencil_attachment
Definition
qopenglwidget.cpp:559
QOpenGLWidgetPrivate::resetRhiDependentResources
void resetRhiDependentResources()
Definition
qopenglwidget.cpp:715
QOpenGLWidgetPrivate::beginBackingStorePainting
void beginBackingStorePainting() override
Definition
qopenglwidget.cpp:570
QOpenGLWidgetPrivate::flushPending
bool flushPending
Definition
qopenglwidget.cpp:596
QOpenGLWidgetPrivate::destroyFbos
void destroyFbos()
Definition
qopenglwidget.cpp:1035
QOpenGLWidgetPrivate::endCompose
void endCompose() override
Definition
qopenglwidget.cpp:822
QOpenGLWidgetPrivate::hasBeenComposed
bool hasBeenComposed
Definition
qopenglwidget.cpp:595
QOpenGLWidgetPrivate::rhiConfig
QPlatformBackingStoreRhiConfig rhiConfig() const override
Definition
qopenglwidget.cpp:552
QOpenGLWidgetPrivate::initialize
void initialize()
Definition
qopenglwidget.cpp:828
QOpenGLWidgetPrivate::paintDevice
QOpenGLPaintDevice * paintDevice
Definition
qopenglwidget.cpp:587
QOpenGLWidgetPrivate::grabFramebuffer
QImage grabFramebuffer(QOpenGLWidget::TargetBuffer targetBuffer)
Definition
qopenglwidget.cpp:1055
QOpenGLWidgetPrivate::render
void render()
Definition
qopenglwidget.cpp:926
QOpenGLWidgetPrivate::inBackingStorePaint
bool inBackingStorePaint
Definition
qopenglwidget.cpp:594
QOpenGLWidgetPrivate::grabFramebuffer
QImage grabFramebuffer() override
Definition
qopenglwidget.cpp:1050
QOpenGLWidgetPrivate::resolveSamplesForBuffer
void resolveSamplesForBuffer(QOpenGLWidget::TargetBuffer targetBuffer)
Definition
qopenglwidget.cpp:915
QOpenGLWidgetPrivate::requestedFormat
QSurfaceFormat requestedFormat
Definition
qopenglwidget.cpp:590
QOpenGLWidgetPrivate::resolveSamples
void resolveSamples() override
Definition
qopenglwidget.cpp:909
QOpenGLWidgetPrivate::isStereoEnabled
bool isStereoEnabled() override
Definition
qopenglwidget.cpp:1118
QOpenGLWidgetPrivate::reset
void reset()
Definition
qopenglwidget.cpp:689
QOpenGLWidgetPrivate::resizeViewportFramebuffer
void resizeViewportFramebuffer() override
Definition
qopenglwidget.cpp:1134
QOpenGLWidgetPrivate::surface
QOffscreenSurface * surface
Definition
qopenglwidget.cpp:586
QOpenGLWidgetPrivate::wrapperTextures
QRhiTexture * wrapperTextures[2]
Definition
qopenglwidget.cpp:583
QOpenGLWidgetPrivate::toggleStereoTargetBuffer
bool toggleStereoTargetBuffer() override
Definition
qopenglwidget.cpp:1127
QOpenGLWidgetPrivate::fbos
QOpenGLFramebufferObject * fbos[2]
Definition
qopenglwidget.cpp:584
QOpenGLWidgetPrivate::invalidateFboAfterPainting
void invalidateFboAfterPainting()
Definition
qopenglwidget.cpp:1018
QOpenGLWidgetPrivate::isViewport
bool isViewport
Definition
qopenglwidget.cpp:598
QOpenGLWidget
\inmodule QtOpenGLWidgets
Definition
qopenglwidget.h:19
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qsequentialanimationgroup.cpp:47
std
[33]
Definition
src_corelib_tools_qhash.cpp:421
GL_SRGB_ALPHA
#define GL_SRGB_ALPHA
Definition
qopenglext.h:864
GL_SRGB8_ALPHA8
#define GL_SRGB8_ALPHA8
Definition
qopenglext.h:865
GL_SRGB
#define GL_SRGB
Definition
qopenglext.h:862
GL_SRGB8
#define GL_SRGB8
Definition
qopenglext.h:863
qtbase
src
openglwidgets
qopenglwidget.h
Generated on
for Qt by
1.18.0