--- a/src/openvg/qwindowsurface_vgegl.cpp Wed Jun 23 19:07:03 2010 +0300
+++ b/src/openvg/qwindowsurface_vgegl.cpp Tue Jul 06 15:10:48 2010 +0300
@@ -71,18 +71,13 @@
QImage::Format qt_vg_config_to_image_format(QEglContext *context)
{
- EGLint red = 0;
- EGLint green = 0;
- EGLint blue = 0;
- EGLint alpha = 0;
- context->configAttrib(EGL_RED_SIZE, &red);
- context->configAttrib(EGL_GREEN_SIZE, &green);
- context->configAttrib(EGL_BLUE_SIZE, &blue);
- context->configAttrib(EGL_ALPHA_SIZE, &alpha);
+ EGLint red = context->configAttrib(EGL_RED_SIZE);
+ EGLint green = context->configAttrib(EGL_GREEN_SIZE);
+ EGLint blue = context->configAttrib(EGL_BLUE_SIZE);
+ EGLint alpha = context->configAttrib(EGL_ALPHA_SIZE);
QImage::Format argbFormat;
#ifdef EGL_VG_ALPHA_FORMAT_PRE_BIT
- EGLint type = 0;
- context->configAttrib(EGL_SURFACE_TYPE, &type);
+ EGLint type = context->configAttrib(EGL_SURFACE_TYPE);
if ((type & EGL_VG_ALPHA_FORMAT_PRE_BIT) != 0)
argbFormat = QImage::Format_ARGB32_Premultiplied;
else
@@ -210,11 +205,7 @@
static bool isPremultipliedContext(const QEglContext *context)
{
- EGLint value = 0;
- if (context->configAttrib(EGL_SURFACE_TYPE, &value))
- return (value & EGL_VG_ALPHA_FORMAT_PRE_BIT) != 0;
- else
- return false;
+ return context->configAttrib(EGL_SURFACE_TYPE) & EGL_VG_ALPHA_FORMAT_PRE_BIT;
}
#endif
@@ -230,9 +221,9 @@
// Set the swap interval for the display.
QByteArray interval = qgetenv("QT_VG_SWAP_INTERVAL");
if (!interval.isEmpty())
- eglSwapInterval(QEglContext::display(), interval.toInt());
+ eglSwapInterval(QEgl::display(), interval.toInt());
else
- eglSwapInterval(QEglContext::display(), 1);
+ eglSwapInterval(QEgl::display(), 1);
#ifdef EGL_RENDERABLE_TYPE
// Has the user specified an explicit EGL configuration to use?
@@ -246,16 +237,16 @@
EGLint matching = 0;
EGLConfig cfg;
if (eglChooseConfig
- (QEglContext::display(), properties, &cfg, 1, &matching) &&
+ (QEgl::display(), properties, &cfg, 1, &matching) &&
matching > 0) {
// Check that the selected configuration actually supports OpenVG
// and then create the context with it.
EGLint id = 0;
EGLint type = 0;
eglGetConfigAttrib
- (QEglContext::display(), cfg, EGL_CONFIG_ID, &id);
+ (QEgl::display(), cfg, EGL_CONFIG_ID, &id);
eglGetConfigAttrib
- (QEglContext::display(), cfg, EGL_RENDERABLE_TYPE, &type);
+ (QEgl::display(), cfg, EGL_RENDERABLE_TYPE, &type);
if (cfgId == id && (type & EGL_OPENVG_BIT) != 0) {
context->setConfig(cfg);
if (!context->createContext()) {
@@ -334,7 +325,7 @@
shared->engine = 0;
shared->context->doneCurrent();
if (shared->surface != EGL_NO_SURFACE) {
- eglDestroySurface(QEglContext::display(), shared->surface);
+ eglDestroySurface(QEgl::display(), shared->surface);
shared->surface = EGL_NO_SURFACE;
}
delete shared->context;
@@ -412,7 +403,7 @@
attribs[4] = EGL_NONE;
}
shared->surface = eglCreatePbufferSurface
- (QEglContext::display(), shared->context->config(), attribs);
+ (QEgl::display(), shared->context->config(), attribs);
}
return shared->surface;
}
@@ -555,7 +546,7 @@
context->makeCurrent(mainSurface());
recreateBackBuffer = false;
if (backBufferSurface != EGL_NO_SURFACE) {
- eglDestroySurface(QEglContext::display(), backBufferSurface);
+ eglDestroySurface(QEgl::display(), backBufferSurface);
backBufferSurface = EGL_NO_SURFACE;
}
if (backBuffer != VG_INVALID_HANDLE) {
@@ -568,7 +559,7 @@
if (backBuffer != VG_INVALID_HANDLE) {
// Create an EGL surface for rendering into the VGImage.
backBufferSurface = eglCreatePbufferFromClientBuffer
- (QEglContext::display(), EGL_OPENVG_IMAGE,
+ (QEgl::display(), EGL_OPENVG_IMAGE,
(EGLClientBuffer)(backBuffer),
context->config(), NULL);
if (backBufferSurface == EGL_NO_SURFACE) {
@@ -705,7 +696,7 @@
#if defined(QVG_DIRECT_TO_WINDOW)
// Did we get a direct to window rendering surface?
EGLint buffer = 0;
- if (eglQueryContext(QEglContext::display(), context->context(),
+ if (eglQueryContext(QEgl::display(), context->context(),
EGL_RENDER_BUFFER, &buffer) &&
buffer == EGL_SINGLE_BUFFER) {
needToSwap = false;
@@ -719,7 +710,7 @@
// Try to force the surface back buffer to preserve its contents.
if (needToSwap) {
eglGetError(); // Clear error state first.
- eglSurfaceAttrib(QEglContext::display(), windowSurface,
+ eglSurfaceAttrib(QEgl::display(), windowSurface,
EGL_SWAP_BEHAVIOR, EGL_BUFFER_PRESERVED);
if (eglGetError() != EGL_SUCCESS) {
qWarning("QVG: could not enable preserved swap");