File: QtOpenGL.py

package info (click to toggle)
git-cola 4.13.0-1
  • links: PTS
  • area: main
  • in suites: sid
  • size: 6,480 kB
  • sloc: python: 36,938; sh: 304; makefile: 223; xml: 100; tcl: 62
file content (66 lines) | stat: -rw-r--r-- 2,032 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
# -----------------------------------------------------------------------------
# Copyright © 2009- The Spyder Development Team
#
# Licensed under the terms of the MIT License
# (see LICENSE.txt for details)
# -----------------------------------------------------------------------------

"""Provides QtOpenGL classes and functions."""

import contextlib

from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6

if PYQT5:
    from PyQt5.QtGui import (
        QOpenGLBuffer,
        QOpenGLContext,
        QOpenGLContextGroup,
        QOpenGLDebugLogger,
        QOpenGLDebugMessage,
        QOpenGLFramebufferObject,
        QOpenGLFramebufferObjectFormat,
        QOpenGLPixelTransferOptions,
        QOpenGLShader,
        QOpenGLShaderProgram,
        QOpenGLTexture,
        QOpenGLTextureBlitter,
        QOpenGLVersionProfile,
        QOpenGLVertexArrayObject,
        QOpenGLWindow,
    )
    from PyQt5.QtOpenGL import *

    # These are not present on some architectures such as armhf
    with contextlib.suppress(ImportError):
        from PyQt5.QtGui import QOpenGLTimeMonitor, QOpenGLTimerQuery

elif PYQT6:
    from PyQt6.QtGui import QOpenGLContext, QOpenGLContextGroup
    from PyQt6.QtOpenGL import *
elif PYSIDE6:
    from PySide6.QtGui import QOpenGLContext, QOpenGLContextGroup
    from PySide6.QtOpenGL import *
elif PYSIDE2:
    from PySide2.QtGui import (
        QOpenGLBuffer,
        QOpenGLContext,
        QOpenGLContextGroup,
        QOpenGLDebugLogger,
        QOpenGLDebugMessage,
        QOpenGLFramebufferObject,
        QOpenGLFramebufferObjectFormat,
        QOpenGLPixelTransferOptions,
        QOpenGLShader,
        QOpenGLShaderProgram,
        QOpenGLTexture,
        QOpenGLTextureBlitter,
        QOpenGLVersionProfile,
        QOpenGLVertexArrayObject,
        QOpenGLWindow,
    )
    from PySide2.QtOpenGL import *

    # These are not present on some architectures such as armhf
    with contextlib.suppress(ImportError):
        from PySide2.QtGui import QOpenGLTimeMonitor, QOpenGLTimerQuery