From 0d3b7313c1c6b57a8c12f65265e71c42b6428f3f Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Thu, 4 Aug 2022 13:43:28 +0200 Subject: Add glGet(Boolean|Double|Float|Integer)v() to QtOpenGL's versioned functions The functions were so far excluded by a parameter type exclusion. To make them visible, exclude the other getters explicitly by name instead by parameter. This enables adding further getters step by step. Add entities to be used in each of the classes, reusing the snippets from QtGui. [ChangeLog][PySide6] The glGet(Boolean|Double|Float|Integer)v() functions have been added. Task-number: PYSIDE-2013 Fixes: PYSIDE-2017 Change-Id: I096c9ee6428af6fc0bb6cfae3ca6f021106c3320 Reviewed-by: Shyamnath Premnadh Reviewed-by: Christian Tismer --- sources/pyside6/PySide6/QtOpenGL/glue/utils.cpp | 30 +++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 sources/pyside6/PySide6/QtOpenGL/glue/utils.cpp (limited to 'sources/pyside6/PySide6/QtOpenGL/glue/utils.cpp') diff --git a/sources/pyside6/PySide6/QtOpenGL/glue/utils.cpp b/sources/pyside6/PySide6/QtOpenGL/glue/utils.cpp new file mode 100644 index 000000000..49d66e3a6 --- /dev/null +++ b/sources/pyside6/PySide6/QtOpenGL/glue/utils.cpp @@ -0,0 +1,30 @@ +// Copyright (C) 2022 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only + +#include + +// Return the number of return values of the glGetBoolean/Double/Integerv functions +// cf https://registry.khronos.org/OpenGL-Refpages/gl4/html/glGet.xhtml +int glGetVReturnSize(GLenum pname) +{ + switch (pname) { + case GL_ALIASED_LINE_WIDTH_RANGE: + case GL_DEPTH_RANGE: + case GL_MAX_VIEWPORT_DIMS: + case GL_POINT_SIZE_RANGE: + case GL_SMOOTH_LINE_WIDTH_RANGE: + case GL_VIEWPORT_BOUNDS_RANGE: + return 2; + case GL_BLEND_COLOR: + case GL_COLOR_CLEAR_VALUE: + case GL_COLOR_WRITEMASK: + case GL_SCISSOR_BOX: + case GL_VIEWPORT: + return 4; + case GL_COMPRESSED_TEXTURE_FORMATS: + return GL_NUM_COMPRESSED_TEXTURE_FORMATS; + default: + break; + } + return 1; +} -- cgit v1.2.3