LibreOffice Module vcl (master) 1
Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
QtOpenGLContext Class Referencefinal

#include <QtOpenGLContext.hxx>

Inheritance diagram for QtOpenGLContext:
[legend]
Collaboration diagram for QtOpenGLContext:
[legend]

Public Member Functions

virtual void initWindow () override
 
- Public Member Functions inherited from OpenGLContext
virtual ~OpenGLContext ()
 
 OpenGLContext (const OpenGLContext &)=delete
 
 OpenGLContext (OpenGLContext &&)=delete
 
OpenGLContextoperator= (const OpenGLContext &)=delete
 
OpenGLContextoperator= (OpenGLContext &&)=delete
 
void acquire ()
 
void release ()
 
void dispose ()
 
void requestLegacyContext ()
 
bool init (vcl::Window *pParent)
 
void reset ()
 
virtual bool isCurrent ()
 Is this GL context the current context ? More...
 
virtual bool isAnyCurrent ()
 Is any GL context the current context ? More...
 
virtual void makeCurrent ()
 make this GL context current - so it is implicit in subsequent GL calls More...
 
void registerAsCurrent ()
 Put this GL context to the end of the context list. More...
 
virtual void resetCurrent ()
 reset the GL context so this context is not implicit in subsequent GL calls. More...
 
virtual void restoreDefaultFramebuffer ()
 unbind the GL_FRAMEBUFFER to its default state, needed for gtk3 More...
 
virtual void swapBuffers ()
 
virtual void sync ()
 
void show ()
 
void setWinPosAndSize (const Point &rPos, const Size &rSize)
 
virtual const GLWindowgetOpenGLWindow () const =0
 
SystemChildWindowgetChildWindow ()
 
const SystemChildWindowgetChildWindow () const
 
bool isInitialized () const
 
virtual SystemWindowData generateWinData (vcl::Window *pParent, bool bRequestLegacyContext)
 

Private Member Functions

virtual const GLWindowgetOpenGLWindow () const override
 
virtual GLWindowgetModifiableOpenGLWindow () override
 
virtual bool ImplInit () override
 
virtual void makeCurrent () override
 make this GL context current - so it is implicit in subsequent GL calls More...
 
virtual void destroyCurrentContext () override
 
virtual bool isCurrent () override
 Is this GL context the current context ? More...
 
virtual bool isAnyCurrent () override
 Is any GL context the current context ? More...
 
virtual void resetCurrent () override
 reset the GL context so this context is not implicit in subsequent GL calls. More...
 
virtual void swapBuffers () override
 

Private Attributes

GLWindow m_aGLWin
 
QWindow * m_pWindow
 
QOpenGLContext * m_pContext
 

Static Private Attributes

static bool g_bAnyCurrent
 

Additional Inherited Members

- Static Public Member Functions inherited from OpenGLContext
static rtl::Reference< OpenGLContextCreate ()
 
static void clearCurrent ()
 release bound resources from the current context More...
 
static void prepareForYield ()
 release contexts etc. before (potentially) allowing another thread run. More...
 
static bool hasCurrent ()
 Is there a current GL context ? More...
 
- Public Attributes inherited from OpenGLContext
OpenGLContextmpPrevContext
 
OpenGLContextmpNextContext
 
- Protected Member Functions inherited from OpenGLContext
 OpenGLContext ()
 
bool InitGL ()
 
virtual GLWindowgetModifiableOpenGLWindow ()=0
 
virtual bool ImplInit ()
 
- Static Protected Member Functions inherited from OpenGLContext
static void InitGLDebugging ()
 
static void InitChildWindow (SystemChildWindow *pChildWindow)
 
static void BuffersSwapped ()
 
- Protected Attributes inherited from OpenGLContext
VclPtr< vcl::Windowm_xWindow
 
VclPtr< vcl::WindowmpWindow
 
VclPtr< SystemChildWindowm_pChildWindow
 
bool mbInitialized
 
int mnRefCount
 
bool mbRequestLegacyContext
 

Detailed Description

Definition at line 27 of file qt5/QtOpenGLContext.hxx.

Member Function Documentation

◆ destroyCurrentContext()

virtual void QtOpenGLContext::destroyCurrentContext ( )
overrideprivatevirtual

Reimplemented from OpenGLContext.

◆ getModifiableOpenGLWindow()

virtual GLWindow & QtOpenGLContext::getModifiableOpenGLWindow ( )
inlineoverrideprivatevirtual

Implements OpenGLContext.

Definition at line 34 of file qt5/QtOpenGLContext.hxx.

References m_aGLWin.

◆ getOpenGLWindow()

virtual const GLWindow & QtOpenGLContext::getOpenGLWindow ( ) const
inlineoverrideprivatevirtual

Implements OpenGLContext.

Definition at line 33 of file qt5/QtOpenGLContext.hxx.

References m_aGLWin.

◆ ImplInit()

virtual bool QtOpenGLContext::ImplInit ( )
overrideprivatevirtual

Reimplemented from OpenGLContext.

◆ initWindow()

virtual void QtOpenGLContext::initWindow ( )
overridevirtual

Reimplemented from OpenGLContext.

◆ isAnyCurrent()

virtual bool QtOpenGLContext::isAnyCurrent ( )
overrideprivatevirtual

Is any GL context the current context ?

Reimplemented from OpenGLContext.

◆ isCurrent()

virtual bool QtOpenGLContext::isCurrent ( )
overrideprivatevirtual

Is this GL context the current context ?

Reimplemented from OpenGLContext.

◆ makeCurrent()

virtual void QtOpenGLContext::makeCurrent ( )
overrideprivatevirtual

make this GL context current - so it is implicit in subsequent GL calls

Reimplemented from OpenGLContext.

◆ resetCurrent()

virtual void QtOpenGLContext::resetCurrent ( )
overrideprivatevirtual

reset the GL context so this context is not implicit in subsequent GL calls.

Reimplemented from OpenGLContext.

◆ swapBuffers()

virtual void QtOpenGLContext::swapBuffers ( )
overrideprivatevirtual

Reimplemented from OpenGLContext.

Member Data Documentation

◆ g_bAnyCurrent

bool QtOpenGLContext::g_bAnyCurrent
staticprivate

Definition at line 44 of file qt5/QtOpenGLContext.hxx.

◆ m_aGLWin

GLWindow QtOpenGLContext::m_aGLWin
private

Definition at line 46 of file qt5/QtOpenGLContext.hxx.

Referenced by getModifiableOpenGLWindow(), and getOpenGLWindow().

◆ m_pContext

QOpenGLContext* QtOpenGLContext::m_pContext
private

Definition at line 49 of file qt5/QtOpenGLContext.hxx.

◆ m_pWindow

QWindow* QtOpenGLContext::m_pWindow
private

Definition at line 48 of file qt5/QtOpenGLContext.hxx.


The documentation for this class was generated from the following file: