summaryrefslogtreecommitdiffstats
path: root/src/gui/painting
Commit message (Collapse)AuthorAgeFilesLines
* implement equality operator in a more sane wayLars Knoll2009-06-091-5/+9
| | | | | | | Using qFuzzyCompare for checking whether two transformations are equal doesn't give us too much and is inconsistent with our other matrix classes. Using simple floating point equality is a lot faster as well.
* greatly speed up QTransform::mapRect() for projective transformsLars Knoll2009-06-091-10/+2
| | | | | | | | | The code so far was converting the rect to a painterpath, mapping that one and then taking the bounding rect. It is actually sufficient to simply map the four corners of the rectangle and take the bounding rect of these four points even in the projective case. Reviewed-by: Andreas
* Merge commit 'origin/4.5'Oswald Buddenhagen2009-06-081-1/+1
|\ | | | | | | | | | | | | | | Conflicts: src/3rdparty/phonon/qt7/mediaobject.mm src/3rdparty/phonon/qt7/quicktimevideoplayer.mm src/gui/text/qfontengine_win.cpp tools/linguist/shared/cpp.cpp
| * Fixed an issue with graphicssystem raster on 8 and 16 bit X servers.Trond Kjernåsen2009-06-051-1/+1
| | | | | | | | | | | | | | | | | | | | We didn't actually check the depth of the target window before calling the qt_x11_drawImage() fu, that will only work with depths >= 24. Task-number: 255311 Reviewed-by: Samuel BT: yes
* | Fix QT_NO_DATASTREAM macro checks and improve readabilityRitt Konstantin2009-06-086-5/+9
| | | | | | | | | | | | | | | | Some checks where in the wrong locations, and some endifs where hard to read. Merge-request: 611 Reviewed-by: Marius Storm-Olsen <marius@trolltech.com>
* | Add a callback so Qt updates its color stuff when the profile changes.Norwegian Rock Cat2009-06-051-0/+2
| | | | | | | | | | | | | | | | | | We've had a problem with a stale cache for color profiles this should make things work well. We get the callback for each display whether it needs it or not, but honesly I would rather that we update this a few times too many when people change their display profile than not at all. FWIW, this code is inspired from Apple's Tech Note TN2035.
* | All of Qt's own code compiles with -pedantic now (but pcre and webkit don't ↵David Faure2009-06-044-8/+8
| | | | | | | | | | | | | | seem fixable easily) Merge-request: 594 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* | Merge commit 'origin/4.5'Olivier Goffart2009-06-042-9/+12
|\ \ | |/
| * Fixed raster bug causing fully clipped images to be partially blended.Samuel Rødal2009-06-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | The blend functions assume the width / height of the images being blended to be greater than 0. A width of 0 caused the first iteration of a duff's device memcpy (QT_MEMCPY_USHORT) to be executed, thus blending 8 pixels instead of none. BT: yes Task-number: 255014 Reviewed-by: Trond
| * Fixed a byte ordering issue when using the raster graphicssystem.Trond Kjernåsen2009-06-021-7/+10
| | | | | | | | | | | | | | | | The R and B channels were swapped on little endian machines with BGR layout. Task-number: 254934 Reviewed-by: Samuel
* | Implemented QGLTextureGlyphCache to avoid wasting glyph cache memory.Samuel Rødal2009-06-032-29/+43
| | | | | | | | | | | | | | | | | | Now there's only a copy of the texture glyph cache in graphics memory, avoiding the system memory copy that we used earlier. In addition the texture will use the GL_ALPHA texture format when possible, making it consume less graphics memory as well. Reviewed-by: Tom
* | Merge branch '4.5'Denis Dzyubenko2009-06-021-12/+3
|\ \ | |/
| * Use a QVarLengthArray instead of some hacky self-made containerHarald Fernengel2009-06-021-12/+3
| | | | | | | | | | | | | | This won't leak on error case, and will work with arbitrary sizes. Also changed from int to short as instructed by Samuel. Reviewed-by: Samuel <qt-info@nokia.com>
* | Fixed bug in QClipData::fixup().Samuel Rødal2009-06-021-2/+0
| | | | | | | | | | | | | | The bounding rect computed in fixup() is one pixel too wide, causing potential memory corruption by painting outside device boundaries. Reviewed-by: Trond
* | Made GL2 engine default for QGLWidget, and added GL2 sync() functionSamuel Rødal2009-05-292-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | To allow mixing QPainter and raw OpenGL commands we need to have some way for the user to say that's he's about to use raw OpenGL so that we are free to do buffering optimizations in the paint engines and use either GL1 or GL2 paint engine. As there's already a syncState() function in QPaintEngine we've reused this and added QPaintEngineEx::sync() which takes care of syncing/flushing the paint engine. Reviewed-by: Trond
* | Further optimized fast scaling of ARGB8565 images onto RGB16 images.Michael Brasser2009-05-282-5/+11
| | | | | | | | | | | | This improves performance on embedded. Reviewed-by: Samuel
* | improved string operations all over the placeThierry Bastian2009-05-285-9/+9
| | | | | | | | | | used character operations whenever possible better usage of QLatin1String
* | Merge branch '4.5' of git@scm.dev.nokia.troll.no:qt/qtSimon Hausmann2009-05-274-10/+18
|\ \ | |/ | | | | | | Conflicts: tests/auto/qtreeview/tst_qtreeview.cpp
| * BT: Fixed GL textdrawing in the Boxes demo.Trond Kjernaasen2009-05-261-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | Reworked the 85f98acaa3a38079071bea711e43c9a86edec1f6 fix, since it broke glyph positioning in the GL engine under Windows. Instead of changing the glyph cache margin, which impacts where the glyph is positioned, we just make the image the glyph is drawn into 4 pixels bigger in width/heigth. The margin in QImageTextureGlyphCache needs to be reworked.. Task-number: 254450 Reviewed-by: Eskil
| * Doc: Miscellaneous documentation fixes for Qt 4.5.x and later.David Boddie2009-05-251-4/+4
| | | | | | | | Reviewed-by: Trust Me
| * Merge branch '4.5' of git@scm.dev.nokia.troll.no:qt/qt into 4.5David Boddie2009-05-253-18/+8
| |\
| | * qdoc: Added some missing qdoc comments.Martin Smith2009-05-253-10/+8
| | | | | | | | | | | | Task-number: 252491
| | * qdoc: Added some missing qdoc comments.Martin Smith2009-05-251-0/+6
| | | | | | | | | | | | Task-number: 252493
* | | Optimized fast scaling of ARGB8565 images onto RGB16 images.Samuel Rødal2009-05-271-1/+58
| | | | | | | | | | | | | | | | | | | | | There was an optimized blend function for this case but not an optimized scale function. Performance increase seems to be in the order of 5x. Reviewed-by: Trond
* | | some cleanups on private exported symbolsThierry Bastian2009-05-262-2/+2
| | |
* | | Fix a warning on MSVCThierry Bastian2009-05-251-1/+1
| | |
* | | Fixed 'crazy' warnings about using a string instead of a characterThierry Bastian2009-05-2512-46/+46
| | | | | | | | | | | | | | | | | | | | | Wherever I found that we were using a string instead of a single char I fixed the code. Reviewed-by: olivier
* | | Fixed bug in QPaintEngineEx::drawTiledPixmap fallback code.Samuel Rødal2009-05-251-1/+1
| | | | | | | | | | | | | | | | | | The brush transform needs to include the rect position. Reviewed-by: Trond
* | | Merge branch 'master' into graphics-masterTom Cooksey2009-05-252-18/+4
|\ \ \
| * \ \ Merge branch '4.5'Thiago Macieira2009-05-221-14/+0
| |\ \ \ | | | |/ | | |/|
| | * | Revert "Ignore GCC warning of unsafe floating point comparisons."Ariya Hidayat2009-05-221-14/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 30f7edc0aab629499b74263391ae529ad31b2ff8. There is no way to restore float-equal warning using the pragma trick. This means (as it was mentioned in the said commit log) anyone that includes qtransform.h will be forced to deal with float-equal. Reviewed-by: Samuel Rødal
| * | | Merge branch 'master' of git@scm.dev.nokia.troll.no:qt/qt into ↵Thierry Bastian2009-05-2233-6456/+1194
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | kinetic-animations Conflicts: src/corelib/kernel/kernel.pri src/corelib/kernel/qvariant_p.h src/corelib/tools/tools.pri src/gui/graphicsview/qgraphicsitem.cpp src/gui/graphicsview/qgraphicsitem.h src/gui/graphicsview/qgraphicswidget.h src/gui/gui.pro
| * \ \ \ Merge branch '4.5' of git@scm.dev.nokia.troll.no:qt/qt into kinetic-statemachineAlexis Menard2009-05-1236-627/+901
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/graphicsview/qgraphicsitem.cpp
| * | | | | Initial import of statemachine branch from the old kinetic repositoryAlexis Menard2009-04-17158-0/+110581
| / / / /
* | | | | Merge commit 'qt/master'Samuel Rødal2009-05-206-29/+42
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Merge commit 'origin/4.5'Samuel Rødal2009-05-201-1/+1
| |\ \ \ \ | | | |/ / | | |/| |
| | * | | Fix a wrong compiler define (was a typo).Ariya Hidayat2009-05-201-1/+1
| | | | | | | | | | | | | | | | | | | | The typo was in commit 30f7edc0aab629499b74263391ae529ad31b2ff8.
| * | | | Merge branch '4.5' of ../qt-45-documentationDavid Boddie2009-05-201-16/+16
| |\ \ \ \ | | | |_|/ | | |/| |
| | * | | Doc: Fixed the paper sizes again.David Boddie2009-05-201-16/+16
| | |/ / | | | | | | | | | | | | | | | | Task-number: 254179 Reviewed-by: Norwegian Rock Cat
| * | | Merge branch '4.5' of git@scm.dev.nokia.troll.no:qt/qtSimon Hausmann2009-05-192-1/+15
| |\ \ \ | | |/ /
| | * | Ignore GCC warning of unsafe floating point comparisons.Ariya Hidayat2009-05-191-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to optimizations, there are few cases where comparing with a constant is needed, e.g. in operator*=. G++ will give us a warning for this. Since we know what we are doing, surpress the warning. The only drawback for this workaround is if somebody includes qtransform.h in his code and disable the float-equal warning since the warning will be activated again. Reviewed-by: Samuel Rødal
| | * | Fix some typos in the documentation.Frederik Schwarzer2009-05-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Usually, "the the" is not proper English Reviewed-By: Thiago Macieira
| * | | Merge commit 'origin/4.5'Olivier Goffart2009-05-181-3/+5
| |\ \ \ | | |/ / | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/kernel/qobject.cpp src/corelib/kernel/qobject_p.h src/network/access/qhttpnetworkconnection.cpp
| | * | Fixed a bug which implicitly closed perspective transformed poly lines.Trond Kjernåsen2009-05-181-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the end point of a line in a path is clipped, only closed paths should have the closing line. Task-number: 253663 Reviewed-by: Samuel
| * | | Merge branch '4.5'Thiago Macieira2009-05-141-7/+4
| |\ \ \ | | |/ / | | | | | | | | | | | | Conflicts: tools/macdeployqt/shared/shared.cpp
| | * | QColor::toCmyk() does not convert the color if it is already in CMYKBenjamin Poulain2009-05-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QColor::toCmyk() converted the color to RGB and then to CMYK. If the color was already in CMYK, this conversion change it. The color is now returned directly if it is in CMYK Reviewed-by: Ariya Task-number: 253625
| | * | Fixed an issue with text drawing under Windows.Trond Kjernaasen2009-05-141-7/+4
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | Some text drawn with OpenType fonts where cut off by a pixel or two under certain circumstances. This adds an additional 2 pixel pad margin to the glyph cache entries. The padding behaves slightly different when ClearType is enabled/disabled, hence the general 2 pixel padding. Task-number: 246196 Reviewed-by: Samuel
| * | QColor::toCmyk() does not convert the color if it is already in CMYKBenjamin Poulain2009-05-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | QColor::toCmyk() converted the color to RGB and then to CMYK. If the color was already in CMYK, this conversion change it. The color is now returned directly if it is in CMYK Reviewed-by: Ariya Task-number: 253625
* | | Prevented QClipData related crashes.Samuel Rødal2009-05-151-2/+4
| | |
* | | Merge commit 'qt/master'Samuel Rødal2009-05-1318-283/+422
|\ \ \ | |/ /