summaryrefslogtreecommitdiffstats
path: root/src/gui/painting
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch '4.5'Bill King2009-08-052-0/+3
|\ | | | | | | | | | | Conflicts: src/gui/graphicsview/qgraphicsitem.cpp
| * Preserved fill rule for perspective mapped strokes in raster engine.Samuel Rødal2009-08-032-0/+3
| | | | | | | | | | Task-number: 254407 Reviewed-by: Gunnar
* | Merge branch 'master' of git@scm.dev.nokia.troll.no:qt/qtGunnar Sletta2009-08-046-158/+84
|\ \
| * | fix warnings on mingw (gcc4.4)Thierry Bastian2009-08-041-2/+2
| | | | | | | | | | | | | | | | | | | | | basically reordering members initialization in constructors or fixing singed/unsigned checks. Reviewed-by: Trustme
| * | Mac: Remove debug work outputRichard Moe Gustavsen2009-08-041-1/+0
| | |
| * | Fixed some perspective transform rendering bugs.Samuel Rødal2009-08-034-155/+82
| | | | | | | | | | | | | | | | | | | | | | | | The bugs were caused by not clipping to the near plane (w = 0) when mapping primitives with perspective tranfsorms. Task-id: 258961 Reviewed-by: Gunnar
* | | have QPainter::begin() return false on null paint engineGunnar Sletta2009-08-041-1/+1
|/ / | | | | | | Reviewed-by: Samuel
* | fixed broken integration of qwindowsurface_raster.cppGunnar Sletta2009-08-031-1/+1
| |
* | Merge branch '4.5'Thiago Macieira2009-08-032-6/+6
|\ \ | |/ | | | | | | | | | | | | | | | | Conflicts: src/corelib/tools/qsharedpointer.cpp src/corelib/tools/qsharedpointer_impl.h src/gui/dialogs/qcolordialog.cpp src/gui/painting/qwindowsurface_raster.cpp src/network/access/qnetworkaccessmanager.cpp tests/auto/qsharedpointer/externaltests.cpp
| * Fixed drawImage() so that it doesn't sample outside the source image.Kim Motoyoshi Kalland2009-07-281-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In qt_scale_image_16bit() and qt_scale_image_32bit(), when a sample point was located on the border between two pixels in the source image, the sample point was rounded up instead of down. If a sample point was exactly on the bottom or right edge of the source image, the function would therefore sample a pixel outside the image. Because of how the target rectangle is rounded, a sample point will never be exactly on the top or left edge of the source image, so we will not get a similar problem there. I extended the lance test pixmap_scaling.qps. Task-number: 258533 Reviewed-by: Samuel
| * Don't use layered windows for non-translucent windowsGunnar Sletta2009-07-281-2/+2
| | | | | | | | Reviewed-by: Samuel
* | Ensure that the dash offset is reset when using drawLines()Andy Shaw2009-08-031-2/+4
| | | | | | | | | | | | | | | | When using drawLines() then the dash offset was remembering where it was on the previous line. This is not what the behaviour should be as it should be starting with the same offset for each line. Reviewed-by: Samuel
* | When there is no alpha channel significantly improve the speed of blendTiled.Benjamin C Meyer2009-07-301-21/+51
| | | | | | | | | | | | | | | | | | | | Copy the first line from the texture to the destination and from then on reference that copy reducing cache misses. Also progressively copy larger sizes, reducing the amount of time spend figuring out what to copy. Merge-request: 371 Reviewed-by: Samuel Rødal <sroedal@trolltech.com>
* | Merge branch 'master' of git@scm.dev.nokia.troll.no:qt/qtMorten Sørvig2009-07-306-615/+62
|\ \
| * | Reviewed-by: Thomas H.Gunnar Sletta2009-07-305-613/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Squashed commit of the following: commit fcf7e8cab339d0cf9f3f2a9756d7754c54c4d934 Author: Gunnar Sletta <gunnar@trolltech.com> Date: Thu Jul 30 13:15:13 2009 +0200 note in the changes file... commit 2c9c3880215988e6609c290a8e738b228736e601 Author: Gunnar Sletta <gunnar@trolltech.com> Date: Thu Jul 30 12:51:42 2009 +0200 Don't leak native window HRGN handles commit 6bb30d2075dd1d71a8a600d25f413a38af7f2f2c Author: Gunnar Sletta <gunnar@trolltech.com> Date: Thu Jul 30 11:09:22 2009 +0200 Moved qregion_wince.cpp -> qregion_win.cpp, platforms are identical now commit 173fcc5baec73a198167985c6f777987e6015a71 Author: Gunnar Sletta <gunnar@trolltech.com> Date: Thu Jul 30 09:42:06 2009 +0200 win32 calls on QRegion.handle() is no longer supported, use from HRGN commit d7ddcce4ba29b70ed81f85274208b388a2bb9d4d Author: Gunnar Sletta <gunnar@trolltech.com> Date: Thu Jul 30 09:41:37 2009 +0200 Added convenience function to convert from HRGN to QRegion commit 2fc53ac3d59a9c42bb4154fff7557610092b7946 Author: Gunnar Sletta <gunnar@trolltech.com> Date: Wed Jul 29 09:28:10 2009 +0200 Kill qregion_win.cpp and use the unix code instead
| * | Merge branch 'texture_from_pixmap'Tom Cooksey2009-07-301-2/+2
| |\ \
| | * | Move uninit & readonly into a flags member of QX11PixmapDataTom Cooksey2009-07-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Also add 2 new flags and a new member to store any GL bound pixmap surface (GLXPixmap or EGLPixmapSurface). Reviewed-By: Samuel
* | | | Mac/Carbon: Fix issue causing update(QRegion) to fail on large widgets.Morten Sørvig2009-07-302-0/+39
|/ / / | | | | | | | | | | | | | | | | | | | | | HIViewSetNeedsDisplayInRegion fails on large regions with large coordinates, fall back on updating the entire region in this case. The task mentions coordinates outside the range of signed short, but the provided example demonstrates failures in the 10-20K range as well.
* | | Port of Qt to VxWorksRobert Griebl2009-07-295-1/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes Qt work on VxWorks 6.6+ in native (kernel) mode. * compiles with the WindRiver GNU toolchain (Linux only) * works with QWS (tested with the VNC driver only) * tested on PPC hardware and the x86 VxWorks simulator * no q3support, no phonon, no webkit * no QSharedMemory, no QSystemSemaphore, no QProcess * only one QApplication instance (flat address space) * filesystem support depends heavily on the quality of the native driver * QLibrary is just a dummy to make plugins work at all * qmake transparently creates VxWorks munching rules for static ctors * made auto-test cope with missing OS features A special note regarding the Q_FOREACH patch for dcc: when calling foreach(a,c) with c being a function returning a container, the compiler would generate 5 references to some labels (.LXXXX), which are not there (so the linker complains in the end). Seems like dcc doesn't really like the 'true ? 0 : <function call to get type>' statement Reviewed-By: Harald Fernengel
* | | Merge branch 'master' of git@scm.dev.nokia.troll.no:qt/qtGunnar Sletta2009-07-291-15/+21
|\ \ \
| * | | Doc: Some final QMatrix cleanups.Volker Hilsheimer2009-07-281-3/+6
| | | |
| * | | Doc: Cleaning up.Volker Hilsheimer2009-07-281-12/+15
| |/ / | | | | | | | | | This closes task 235801.
* | | QPainterPath's vectorpath cache wasn't cleared on detach()Gunnar Sletta2009-07-281-0/+2
| | | | | | | | | | | | Reviewed-by: Samuel
* | | Implement perspective filling support in the raster engine...Gunnar Sletta2009-07-282-20/+56
| | | | | | | | | | | | Reviewed-by: Samuel
* | | Implement perspective stroking support in QPaintEngineEx::stroke()Gunnar Sletta2009-07-281-6/+28
| | | | | | | | | | | | Reviewed-by: Samuel
* | | Kill QRasterPaintEngine::drawPath() to benefit from QPaintEngEx optimsGunnar Sletta2009-07-282-91/+0
| | |
* | | Added QVectorPath::convertToPainterPath() for future convenienceGunnar Sletta2009-07-282-0/+36
|/ /
* | Doc: Remove reference to QMatrixVolker Hilsheimer2009-07-271-5/+3
| | | | | | | | | | As pointed out on IRC, setTransform is used most frequently in code and in an ideal world would be the only such function.
* | "MAP" is a too common name to use it without #undef'ing it firstRobert Griebl2009-07-271-1/+3
| | | | | | | | Reviewed-by: TrustMe
* | Doc: Obsolete QMatrix and QPainter APIs using it.Volker Hilsheimer2009-07-272-36/+55
| | | | | | | | | | | | | | | | | | QTransform and respective APIs should be used. Still some changes required - Some references to QMatrix left in documentation - Qt code uses QMatrix APIs (ie translationX) Reviewed-by: Samuel
* | Doc: Replace QMatrix with QTransform and respective functions in various places.Volker Hilsheimer2009-07-252-3/+6
| |
* | Doc: Replace links to obsolete APIs.Volker Hilsheimer2009-07-252-3/+3
| |
* | Remove all the last vestiges of QuickDraw in Qt/Mac.Norwegian Rock Cat2009-07-241-105/+0
| | | | | | | | | | | | | | Panther was the last reason for having this around. We don't touch this code anywhere else in Qt. As a result it's orphaned and can be safely removed. It truly is the end of an era, but it's definitely worth celebrating. Quartz4Life!
* | Merge branch 'master' of scm.dev.nokia.troll.no:qt/qtSimon Hausmann2009-07-241-1/+1
|\ \
| * | Once enabled, the emulation engine never got switched back offGunnar Sletta2009-07-241-1/+1
| | | | | | | | | | | | | | | | | | The check in QPainter::checkEmulation was just plain wrong. Reviewed-By: Eskil
* | | Merge branch '4.5' of scm.dev.nokia.troll.no:qt/qtSimon Hausmann2009-07-244-12/+39
|\ \ \ | |/ / |/| / | |/ | | | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty/webkit/VERSION src/3rdparty/webkit/WebCore/ChangeLog src/3rdparty/webkit/WebCore/bridge/qt/qt_instance.cpp src/3rdparty/webkit/WebCore/bridge/qt/qt_instance.h src/3rdparty/webkit/WebCore/page/DragController.cpp src/3rdparty/webkit/WebKit/qt/Api/qwebframe.cpp src/3rdparty/webkit/WebKit/qt/ChangeLog src/3rdparty/webkit/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp src/gui/painting/qpaintengineex_p.h tools/linguist/lupdate/main.cpp
| * Fixed crash when vectorpath was polygonal only in raster::stroke()Gunnar Sletta2009-07-241-9/+16
| | | | | | | | | | | | | | Polygonal vector paths may have types==null, in which case this would have crashed. Reviewed-by: Eskil
| * QPainter::stroke() on raster engine would draw moveto's as linesGunnar Sletta2009-07-231-5/+17
| | | | | | | | | | | | | | | | | | The reason being that there was an assumption that any non-curved path was a continous polyline. For paths with multiple subpaths in it we need to split this up into multiple strokePolygonCosmetic calls. Task-number: 257621 Reviewed-by: Kim Motoyoshi Kalland
| * Diagonal dashes are moving when touching the clip boundary.Gunnar Sletta2009-07-231-1/+4
| | | | | | | | | | | | | | | | | | We normally pad the clip rect with the size of the pen and miterlimit to avoid this, but this didn't handle the case where there was a long diagonal dash. We also need to multiply the padding with the longest dash. Reviewed-By: Tom Cooksey
| * Implement clipping in the QPaintEngineEx::stroke() function.Gunnar Sletta2009-07-233-6/+11
| | | | | | | | | | | | | | This is a huge impact on performance whenever this path is taken. Reviewed-By: Tom Cooksey
* | Merge branch '4.5'Thiago Macieira2009-07-221-2/+7
|\ \ | |/
| * Fix table borders in multiline tables when printing to PostScript.Gunnar Sletta2009-07-221-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | I'm not all to happy with this fix, but its the best that one can acheive given the current design. The problem is that QPdfBaseEngine sets a number of states as part of updateState(), but only when we are playing back through the alpha engine. These states are used in some draw functions, also when we are recording in the alpha engine. This leads to the states and their checks being out of sync. So to follow the existing pattern in the code we need to not touch d-> vars prior to a check to usesAlphaEngine. Reviewed-By: Eskil
* | Make "-graphicssystem openvg" select OpenVG as default graphics systemRhys Weatherley2009-07-221-0/+4
| | | | | | | | Reviewed-by: Lincoln Ramsay
* | Merge commit 'origin/4.5'Oswald Buddenhagen2009-07-201-1/+2
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty/webkit/VERSION src/3rdparty/webkit/WebCore/ChangeLog src/3rdparty/webkit/WebCore/generated/JSDOMWindow.cpp src/3rdparty/webkit/WebCore/page/DOMWindow.idl src/corelib/io/qdiriterator.cpp src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp src/plugins/gfxdrivers/directfb/qdirectfbpixmap.h tests/auto/qxmlquery/tst_qxmlquery.cpp tools/linguist/lconvert/main.cpp
| * Fix deadlock in the QWS server when destroying lots of windowsTom Cooksey2009-07-171-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | First, don't call QWSWindowSurface::winId() in the destructor, as it will actually request a new id if there isn't already one around - which is a bit silly and highlighted the "real" bug. Second, make sure QWSDisplay::Data::takeId() asks for 1 new id before waiting for more ids to arrive. This is because waitForCreation() calls QWSServer::processEventQueue(). If the events in the queue cause takeId() to be called, QWSDisplay::Data::takeId() gets called recursively. Even though there will be a create 15 ids command in the queue, that will only allow 15 QWSDisplay::Data::takeId() calls to return. The 16th call to QWSDisplay::Data::takeId() on the stack will not be able to return because all the IDs have been taken and (because it has been called recursively) no new create id commands have been generated. So the 16th call to takeId() spins in waitForCreate(). Reviewed-by: Paul
* | Doc: A few cleanups, fixes and improvements.Volker Hilsheimer2009-07-191-1/+2
| |
* | fix warnings with mingwThierry Bastian2009-07-151-1/+1
| |
* | Fix warnings for mingwThierry Bastian2009-07-153-108/+4
| | | | | | | | | | did a small refactor and used QStyleHelper::uniqueName in plastique and windows styles
* | Build fix for mingwThierry Bastian2009-07-141-1/+1
| | | | | | | | | | we should include qt_windows.h and not windows.h because we have to define WINVER to 0x500.
* | Use the safe versions in these system calls I've just introduced.Thiago Macieira2009-07-021-8/+12
| | | | | | | | Reviewed-By: ossi