summaryrefslogtreecommitdiffstats
path: root/src/opengl/qglframebufferobject.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch '4.8' of scm.dev.nokia.troll.no:qt/qtDavid Boddie2011-05-241-17/+17
|\ | | | | | | | | | | | | | | Conflicts: src/gui/text/qrawfont.cpp src/gui/text/qtextlayout.cpp src/gui/util/qscroller.cpp src/gui/widgets/qlineedit.cpp
| * Update licenseheader text in source files for qt4.8Jyri Tahtela2011-05-131-17/+17
| | | | | | | | | | | | | | Updated version of LGPL and FDL licenseheaders. Apply release phase licenseheaders for all source files. Reviewed-by: Trust Me
* | Doc: Fixed qdoc warnings.David Boddie2011-05-111-3/+6
|/
* Put all the declarations of qt_defaultDpi{,X,Y}() in one placeJiang Jiang2011-04-051-3/+1
| | | | Reviewed-by: Samuel Rødal
* Merge remote branch 'origin/4.7' into qt-master-from-4.7Olivier Goffart2011-01-251-2/+2
|\ | | | | | | | | | | Conflicts: configure src/network/bearer/bearer.pri
| * Fix static build on Windows with MinGW.Mark Brand2011-01-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Q_DECL_IMPORT is still __declspec(dllimport), which is unsuitable for static code. Commit edbc656b changed Q_DECL_IMPORT_IMPORT to Q_CORE_EXPORT when declaring QtCore functions in svg. Now we change Q_DECL_IMPORT to Q_GUI_EXPORT when declaring QtGui functions into opengl and openvg. Also removed the redundant keyword "extern" from the function declarations. Merge-request: 2540 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: mariusSO
* | Merge remote branch 'origin/4.7' into qt-master-from-4.7Olivier Goffart2011-01-171-1/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/webkit/imageanalyzer/imageanalyzer.h examples/webkit/imageanalyzer/mainwindow.h mkspecs/unsupported/qws/linux-x86-openkode-g++/qplatformdefs.h src/corelib/io/qfsfileengine_iterator_unix.cpp src/corelib/io/qfsfileengine_iterator_win.cpp src/corelib/kernel/qcoreapplication.cpp src/network/access/qnetworkaccessdatabackend.cpp src/plugins/bearer/connman/qconnmanservice_linux.cpp src/plugins/platforms/openvglite/qwindowsurface_vglite.h src/s60installs/bwins/QtCoreu.def src/s60installs/eabi/QtCoreu.def src/s60installs/s60installs.pro tools/assistant/tools/assistant/helpviewer_qwv.h tools/qdoc3/test/qt-html-templates.qdocconf
| * Update copyright year to 2011.Jason McDonald2011-01-101-1/+1
| | | | | | | | Reviewed-by: Trust Me
* | Added mipmap property to QGLFramebufferObjectFormat.Kim Motoyoshi Kalland2010-11-261-3/+37
| | | | | | | | | | | | | | If the mipmap property is set, QGLFramebufferObject will allocate memory for mipmap levels. Reviewed-by: Gunnar
* | Reapply "Fixed painter path drawing on FBO without stencil buffer."Kim Motoyoshi Kalland2010-11-021-0/+4
| | | | | | | | This reverts commit 4035ec3e9ed5ef904dd6f22adaf5e9deb24e9455.
* | Merge remote branch 'origin/4.7' into qt-master-from-4.7Olivier Goffart2010-10-251-7/+16
|\ \ | |/ | | | | | | | | | | | | | | | | Conflicts: demos/declarative/snake/snake.qml qmake/generators/symbian/symbiancommon.cpp src/network/access/qnetworkaccessmanager.cpp src/s60installs/s60installs.pro tests/auto/qitemselectionmodel/tst_qitemselectionmodel.cpp tests/auto/qnetworkreply/tst_qnetworkreply.cpp
| * Functions that are externally defined to QtOpenGL needs to be imported.Jani Hautakangas2010-10-211-2/+2
| | | | | | | | | | | | This is needed for RVCT4 Reviewed-by: Jason Barron
| * Fix GL_OES_element_index_uint and add GL_OES_depth24 detection.Jani Hautakangas2010-10-201-5/+14
| | | | | | | | | | | | | | | | | | GL_OES_element_index_uint detection was not working because EGL config wasn't yet resolved. In addition QFrameBufferObject should use 24bit depth render buffer if extension is available. Task-number: QTBUG-14542 Reviewed-by: Gunnar
* | Merge remote branch 'origin/4.7' into qt-master-from-4.7Olivier Goffart2010-09-281-29/+76
|\ \ | |/ | | | | | | | | | | | | Conflicts: src/gui/painting/qrasterizer.cpp src/network/access/qnetworkaccessmanager.cpp tests/auto/qpainter/tst_qpainter.cpp tools/assistant/tools/assistant/mainwindow.cpp
| * Fix compilationOlivier Goffart2010-09-221-2/+2
| | | | | | | | Reviewed-by: Kim
| * Revert "Fixed painter path drawing on FBO without stencil buffer."Kim Motoyoshi Kalland2010-09-221-4/+0
| | | | | | | | | | This reverts commit 89cbb165600de9a557a8a621dc41b93c2a7a2b52. The patch should be applied to Qt 4.8, not 4.7.
| * Fixed stencil buffer on FBOs with OpenGL ES.Kim Motoyoshi Kalland2010-09-221-25/+76
| | | | | | | | | | | | | | | | If combined depth-stencil buffer is not supported, create separate depth and stencil buffers. Task-number: QTBUG-12861 Reviewed-by: Trond
* | Merge remote branch 'origin/4.7' into qt-master-from-4.7Thiago Macieira2010-09-211-0/+4
|\ \ | |/ | | | | | | | | | | | | Conflicts: src/corelib/kernel/qobject.h src/declarative/graphicsitems/qdeclarativeflickable.cpp src/declarative/graphicsitems/qdeclarativeflickable_p_p.h src/declarative/util/qdeclarativelistmodel.cpp
| * Fixed painter path drawing on FBO without stencil buffer.Kim Motoyoshi Kalland2010-09-201-0/+4
| | | | | | | | | | Task-number: QTBUG-13450 Reviewed-by: Samuel
* | Doc update regarding threaded painting with QPainter in the QGL module.Trond Kjernåsen2010-09-091-0/+7
| | | | | | | | Reviewed-by: Gunnar
* | Merge remote branch 'origin/4.7' into qt-master-from-4.7Olivier Goffart2010-08-131-2/+2
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/painting/qpainter.cpp src/gui/text/qtextengine.cpp tests/auto/qimage/tst_qimage.cpp tests/auto/qpainter/tst_qpainter.cpp tools/qdoc3/test/assistant.qdocconf tools/qdoc3/test/designer.qdocconf tools/qdoc3/test/linguist.qdocconf tools/qdoc3/test/qmake.qdocconf tools/qdoc3/test/qt-build-docs.qdocconf tools/qdoc3/test/qt-html-templates.qdocconf tools/qdoc3/test/qt-html-templates_zh_CN.qdocconf tools/qdoc3/test/qt.qdocconf
| * OpenGL: Fix multisample renderbuffer creation when MAX_SAMPLES is 0.Christian Kamm2010-08-091-2/+2
| | | | | | | | | | | | | | | | Previously, we would try to create one with samples = 1 anyway, potentially resulting in an INVALID_VALUE error. Task-number: QTBUG-12757 Reviewed-by: Samuel Rødal
* | Redesigned how GL resource management works.Trond Kjernåsen2010-07-021-4/+4
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The usage of QGLContextResource has changed: You're now have to subclass QGLContextResource and reimplement the freeResource() function and add your cleanup code there instead of using a plain callback function. It's now also possible to delete a QGLContextResource *before* the QGLContextGroup it refers to is destroyed, as the resource will remove itself from the context groups it's a member of. The QGLTextureGlyphCache is no longer a QObject, and it no longer depends on the aboutToDestroyContext() signal. That concept doesn't work in a threaded environment, as it relies on an eventloop to dispatch the signal to the thread. It's common to *not* have an eventloop running in a thread, which means the signal might never be delivered. QGLTextureGlyphCache now inherits from QGLContextResource, and gets cleaned up correctly when the group context is destroyed. Note that up until now the glyph cache has never been shared among sharing contexts for the GL 2 engine. Made the gradient and pixmap blur caches use the new QGLContextResource scheme. Added a template that wraps the common init code for paintEngine() function implementations for QGLWidget, QGLPixelBuffer and QGLFramebufferObject. Fixed a bug in QFontCache where the font caches weren't cleared when a thread other than the main thread exited (backported to 4.6.3), which caused resource leaks.
* Added static version of QGLFramebufferObject::release().Kim Motoyoshi Kalland2010-06-021-0/+30
| | | | | | The function is marked internal for now. Reviewed-by: Gunnar
* Merge remote branch 'origin/master' into qt-master-from-4.6Thiago Macieira2010-02-181-1/+1
|\ | | | | | | | | | | Conflicts: src/corelib/codecs/qtextcodec.h tests/auto/gestures/tst_gestures.cpp
| * doc: Fixed some qdoc errors.Martin Smith2010-02-161-1/+1
| |
* | Merge branch '4.6' into qt-master-from-4.6Thiago Macieira2010-02-171-0/+7
|\ \ | |/ |/| | | | | | | | | Conflicts: mkspecs/common/symbian/symbian.conf src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp tools/assistant/tools/assistant/helpviewer.cpp
| * Moved 'hasAlpha' property from GL2 engine to GL paint device.Kim Motoyoshi Kalland2010-02-121-0/+7
| | | | | | | | | | | | Got rid of an ugly switch statement. Reviewed-by: Tom
* | Remove obsolete OpenGL/ES CommonLite (fixed-point) supportRhys Weatherley2010-02-041-7/+3
|/ | | | | Task-number: QTBUG-7683 Reviewed-by: Tom Cooksey
* Rework how Qt handles GL extensions.Trond Kjernåsen2010-01-131-7/+5
| | | | | | | | | | | | | | | | | | Qt used to store the GL extensions a particular implementation supported in a global cache, which was initialized once and never updated. This could cause problems because different types of context might support different kinds of extensions (e.g. the difference between sw and hw contexts). With this patch, the GL extensions are cached and updated within each QGLContext. It also makes the extension initialization lazy, which saves application initialization costs for embedded platforms. The patch introduces a internal cross platform QGLTemporaryContext class that is used to create a light-weight GL context without going via QGLWidget and friends (QWS and WinCE still have QGLWidget fallbacks for now). Reviewed-by: Kim Reviewed-by: Samuel
* Update copyright year to 2010Jason McDonald2010-01-061-1/+1
| | | | Reviewed-by: Trust Me
* Update FBO docs to describe how QPainter changes the GL stateRhys Weatherley2009-12-171-0/+6
| | | | | | | | | Using a QPainter on a QGLFramebufferObject will not return the GL context to its original conditions, especially with the OpenGL2 paint engine. Update the docs to make this clearer. Task-number: QTBUG-6712 Reviewed-by: Daniel Pope
* Rebind window surface fbo after native GL renderingRhys Weatherley2009-12-041-2/+2
| | | | | | | | | If the user called QGLFramebufferObject::bind()/release() during a beginNativePainting() callout, the release() would reset the context's fbo to zero, not the actual window surface fbo. Task-number: QTBUG-6204 Reviewed-by: Tom
* Fix docs for QGLFramebufferObject & add warnings in bind/releaseTom Cooksey2009-11-051-7/+16
| | | | | | | Warnings are for binding/releasing when the current context isn't in the same context group as the FBO was created in. Reviewed-By: Trond
* Remove unnessisary QGLFBOGLPaintDevice re-implementationsTom Cooksey2009-11-051-30/+0
| | | | | | | Now QGLFBO doesn't do stacking, QGLPaintDevice's base implementation is ok to use. Reviewed-By: Trond
* Removed the FBO stacking behaviour and the test attached to it.Trond Kjernåsen2009-11-051-26/+7
| | | | | | | Having this behaviour in QGLFrameBufferObject complicates alot of things and isn't really necessary. Reviewed-by: Tom Cooksey
* Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Gunnar Sletta2009-10-191-1/+3
|\
| * Don't delete an fbo's texture if the fbo isn't using a textureRhys Weatherley2009-10-121-1/+3
| | | | | | | | | | | | Also, unbind the texture after it is initialized. Reviewed-by: Sarah Smith
* | Fixed a crash in the tst_qgl test.Trond Kjernåsen2009-10-161-1/+2
| | | | | | | | | | | | | | QGLFramebuffer::isBound() would crash if it was called when there wasn't a current context bound. Reviewed-by: Kim
* | Fixed bug when using QGLWidgets in -graphicssystem openglSamuel Rødal2009-10-121-0/+17
|/ | | | | | We need to make sure that the FBO is bound in a valid context. Reviewed-by: Tom
* Check the framebuffer format against a format, not a texture targetRhys Weatherley2009-10-091-1/+1
| | | | | | | | The previous code was comparing QGLFramebufferObjectFormat::textureTarget() against GL_RGB to determine if alpha was present. This should be internalTextureFormat() instead. Reviewed-by: Sarah Smith
* Make QGLFramebufferObject crash-proof if QGLContext destroyed firstRhys Weatherley2009-10-011-23/+35
| | | | | | | | | | | | | | | | Sometimes it isn't possible to arrange for the QGLFramebufferObject to be destroyed before the QGLContext group in which it was created. Especially during application shutdown or in applications with multiple shared contexts. This change modifies QGLFramebufferObject to use QGLSharedResourceGuard, which ensures that when the last QGLContext in a sharing group is destroyed, any remaining FBO's will revert to !isValid(). It is now safe to destroy the context before the FBO, or the FBO before the context. Unit test included. Reviewed-by: Sarah Smith
* qdoc fixes to QGLFramebufferObject::blitFramebuffer()Rhys Weatherley2009-09-281-6/+11
|
* Don't round-trip to GL server for glGetError() in release mode.Rhys Weatherley2009-09-151-1/+10
| | | | | Reviewed-by: Samuel Reviewed-by: Tom Cooksey
* qdoc: document default values for QGLFramebufferObject propertiesRhys Weatherley2009-09-131-9/+17
|
* Made GL window surface work better with native child widgets.Samuel Rødal2009-09-111-0/+2
| | | | | | | Need to unbind the window surface FBO and re-bind it in the child widget's context before doing a blit. Reviewed-by: Kim
* Return the correct QGLFormat to the OpenGL1 paint engine for FBO'sRhys Weatherley2009-09-101-2/+13
| | | | | | | | | | | | | QGLPaintDevice::format() was returning the context's format, not the format of the window surface's FBO. This caused the OpenGL1 paint engine to think that the window didn't have depth and stencil buffers, even though the FBO most certainly did. This change makes QGLPaintDevice::format() virtual and overrides it in QGLFBOGLPaintDevice to return an updated format that includes the context parameters plus the extra features that the FBO supports. Reviewed-by: Tom Cooksey
* Fix build breakage on Mac CarbonTom Cooksey2009-09-091-1/+1
| | | | | | | A new QGLFramebufferObject constructor was added after the QGLPaintDevice was branched which therefore didn't get patched. Reviewed-by: Trustme
* Remove duplicate setFBO calls introduced by QGLPaintDevice mergeTom Cooksey2009-09-091-2/+0
| | | | Reviewed-by: Trustme
* Update license headers again.Jason McDonald2009-09-091-4/+4
| | | | Reviewed-by: Trust Me