diff options
author | Samuel Rødal <samuel.rodal@nokia.com> | 2011-06-21 13:39:26 +0200 |
---|---|---|
committer | Samuel Rødal <samuel.rodal@nokia.com> | 2011-06-21 14:02:22 +0200 |
commit | 176f30b13739b352cbe453cba7796d9a9c808bcd (patch) | |
tree | 8fa60b6ae4ef06455652863a0406bc5e86a22303 /src/plugins/platforms/wayland/gl_integration/xcomposite_glx/qwaylandxcompositeglxcontext.cpp | |
parent | 272daebaa07b21e372ad4274fafb51ce0be92396 (diff) |
OpenGL API refactor.
Rename QGuiGLFormat to QSurfaceFormat, and make QWindow sub-class of
QSurface and QPlatformWindow sub-class of QPlatformSurface, instead of
having QPlatformGLSurface accessor in QWindow.
Diffstat (limited to 'src/plugins/platforms/wayland/gl_integration/xcomposite_glx/qwaylandxcompositeglxcontext.cpp')
-rw-r--r-- | src/plugins/platforms/wayland/gl_integration/xcomposite_glx/qwaylandxcompositeglxcontext.cpp | 33 |
1 files changed, 11 insertions, 22 deletions
diff --git a/src/plugins/platforms/wayland/gl_integration/xcomposite_glx/qwaylandxcompositeglxcontext.cpp b/src/plugins/platforms/wayland/gl_integration/xcomposite_glx/qwaylandxcompositeglxcontext.cpp index 54d63a2bec..20fb0396f8 100644 --- a/src/plugins/platforms/wayland/gl_integration/xcomposite_glx/qwaylandxcompositeglxcontext.cpp +++ b/src/plugins/platforms/wayland/gl_integration/xcomposite_glx/qwaylandxcompositeglxcontext.cpp @@ -47,17 +47,7 @@ #include <QRegion> -QWaylandXCompositeGLXSurface::QWaylandXCompositeGLXSurface(QWaylandXCompositeGLXWindow *window) - : m_window(window) -{ -} - -Window QWaylandXCompositeGLXSurface::xWindow() const -{ - return m_window->xWindow(); -} - -QWaylandXCompositeGLXContext::QWaylandXCompositeGLXContext(const QGuiGLFormat &format, QPlatformGLContext *share, Display *display, int screen) +QWaylandXCompositeGLXContext::QWaylandXCompositeGLXContext(const QSurfaceFormat &format, QPlatformGLContext *share, Display *display, int screen) : m_display(display) { qDebug("creating XComposite-GLX context"); @@ -65,12 +55,12 @@ QWaylandXCompositeGLXContext::QWaylandXCompositeGLXContext(const QGuiGLFormat &f GLXFBConfig config = qglx_findConfig(display, screen, format); XVisualInfo *visualInfo = glXGetVisualFromFBConfig(display, config); m_context = glXCreateContext(display, visualInfo, shareContext, true); - m_format = qglx_guiGLFormatFromGLXFBConfig(display, config, m_context); + m_format = qglx_surfaceFormatFromGLXFBConfig(display, config, m_context); } -bool QWaylandXCompositeGLXContext::makeCurrent(const QPlatformGLSurface &surface) +bool QWaylandXCompositeGLXContext::makeCurrent(QPlatformSurface *surface) { - Window xWindow = static_cast<const QWaylandXCompositeGLXSurface &>(surface).xWindow(); + Window xWindow = static_cast<QWaylandXCompositeGLXWindow *>(surface)->xWindow(); return glXMakeCurrent(m_display, xWindow, m_context); } @@ -80,17 +70,16 @@ void QWaylandXCompositeGLXContext::doneCurrent() glXMakeCurrent(m_display, 0, 0); } -void QWaylandXCompositeGLXContext::swapBuffers(const QPlatformGLSurface &surface) +void QWaylandXCompositeGLXContext::swapBuffers(QPlatformSurface *surface) { - const QWaylandXCompositeGLXSurface &s = - static_cast<const QWaylandXCompositeGLXSurface &>(surface); + QWaylandXCompositeGLXWindow *w = static_cast<QWaylandXCompositeGLXWindow *>(surface); - QSize size = s.window()->geometry().size(); + QSize size = w->geometry().size(); - glXSwapBuffers(m_display, s.xWindow()); + glXSwapBuffers(m_display, w->xWindow()); - s.window()->damage(QRect(QPoint(), size)); - s.window()->waitForFrameSync(); + w->damage(QRect(QPoint(), size)); + w->waitForFrameSync(); } void (*QWaylandXCompositeGLXContext::getProcAddress(const QByteArray &procName)) () @@ -98,7 +87,7 @@ void (*QWaylandXCompositeGLXContext::getProcAddress(const QByteArray &procName)) return glXGetProcAddress(reinterpret_cast<const GLubyte *>(procName.constData())); } -QGuiGLFormat QWaylandXCompositeGLXContext::format() const +QSurfaceFormat QWaylandXCompositeGLXContext::format() const { return m_format; } |