summaryrefslogtreecommitdiffstats
path: root/src/gui/painting
Commit message (Collapse)AuthorAgeFilesLines
* Make S60 integration optional.Jason Barron2009-07-155-12/+12
| | | | | | | | | | | | | | This is more a cleanup of the usage of Q_WS_S60 vs. Q_OS_SYMBIAN than anything else. One of the side effects of this work was that it was relatively little work to get QtGui compiling when Q_WS_S60 is not defined. Based on this we introduce two new configure options that control S60 integration. Currently the -no-s60 option will not work entirely because the 's60main' module has not yet been refactored and still has a dependancy on the S60 libraries. Reviewed-by: axis <qt-info@nokia.com>
* Fixed a consistency problem in the backing store.axis2009-07-141-0/+4
| | | | | | | | | | | | | | | | | | Widgets maintain an internal state (inDirtyList) which says whether that widget is in the backing store's list of dirty widgets. Naturally this list has to be kept in sync with the actual list contents. This did not happen if the backing store was destroyed and recreated; if the list had any contents it would be destroyed without resetting the widget flags. Destroying and recreating the backing store is common on S60 where we try to save memory. Fixed by making sure those flags are reset during backing store destruction. Done together with Jason. RevBy: Jason Barron RevBy: bnilsen AutoTest: Included
* Merge commit 'origin/master' into 4.6-mergedJason Barron2009-07-095-9/+11
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/kernel/qcoreevent.cpp src/corelib/tools/qdumper.cpp src/gui/kernel/qwidget.cpp src/gui/kernel/qwidget_p.h src/gui/kernel/qwidget_s60.cpp src/gui/text/qfontdatabase.cpp src/network/access/qnetworkreplyimpl.cpp src/sql/drivers/ibase/qsql_ibase.cpp src/testlib/qtestcase.cpp src/testlib/testlib.pro tests/auto/network-settings.h tests/auto/q3sqlcursor/tst_q3sqlcursor.cpp tests/auto/qobjectrace/tst_qobjectrace.cpp tests/auto/qsqldatabase/tst_qsqldatabase.cpp tools/configure/configureapp.cpp translations/qt_ru.ts
| * Merge branch '4.5' of git@scm.dev.nokia.troll.no:qt/qtaxis2009-07-071-3/+3
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure.exe src/network/access/qhttpnetworkconnection_p.h tests/auto/qstyle/qstyle.pro tests/auto/qstyle/tst_qstyle.cpp tools/configure/configureapp.cpp configure.exe will be recompiled in next commit. Took ours.
| | * Fix crash/artifacts on SuperHTom Cooksey2009-06-291-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add SuperH to the ever growing list of architectures which can't correctly dereference a short* which is not 16-bit aligned. Turning this into a white-list rather than a black list might make sense at some point, but as QT_ARCH_I386 isn't defined on windows, the white list looks even uglier at the moment. :-) Task-number: 257077 Reviewed-by: TrustMe
| * | Removed unused static data from Qt.axis2009-07-061-3/+0
| | | | | | | | | | | | This saves memory and prevents warnings from RVCT.
| * | Removed pointless variables to silence warnings from RVCT.axis2009-07-061-1/+0
| | |
| * | Merge branch '4.5' of git@scm.dev.nokia.troll.no:qt/qtaxis2009-06-29152-357/+397
| |\ \ | | |/ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .gitignore src/gui/dialogs/qfiledialog_p.h src/gui/painting/qpaintengine_raster.cpp src/gui/text/qfontdatabase.cpp tests/auto/network-settings.h tests/auto/qitemdelegate/tst_qitemdelegate.cpp
| * | Fix warnings because of unused variables.axis2009-06-293-2/+8
| | |
* | | Use OpenVG graphics system by default if Qt is configured to do so.Jason Barron2009-07-091-0/+4
| | | | | | | | | | | | | | | | | | Add the same behavior as the other graphics systems such that if Qt is configured with -graphicssystem openvg, the OpenVG graphics system will be used by default.
* | | Change the inclusion method here to use system includes.Jason Barron2009-07-083-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is a workaround for a bug in the Symbian toolchain where user includes are included relative to the source file instead of to the header that actually included it. Making them system includes seems to work around the issue without introducing problems on other platforms (so far?). These particular files cause problems because they are included by modules other than QtGui such as QtOpenVG and QtSVG.
* | | Fix crash in QClipData::initialize.Jason Barron2009-07-071-0/+1
| | | | | | | | | | | | | | | This line was lost during the merge of Qt 4.6. The rest of this file was manually verified to be sure nothing else was missed.
* | | Merge commit 'qt/master-stable' into 4.6-mergedJason Barron2009-06-30148-497/+497
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .gitignore configure.exe src/corelib/concurrent/qtconcurrentthreadengine.h src/corelib/global/qnamespace.h src/gui/graphicsview/qgraphicssceneevent.h src/gui/kernel/qapplication.cpp src/gui/kernel/qapplication.h src/gui/kernel/qapplication_p.h src/gui/kernel/qapplication_qws.cpp src/gui/kernel/qwidget.h src/gui/painting/qpaintengine_raster.cpp src/gui/text/qfontdatabase.cpp src/network/access/qnetworkaccesshttpbackend.cpp tests/auto/network-settings.h tests/auto/qscriptjstestsuite/qscriptjstestsuite.pro tests/auto/qvariant/tst_qvariant.cpp
| * \ \ Merge branch '4.5'Thiago Macieira2009-06-281-1/+19
| |\ \ \ | | | |/ | | |/|
| | * | Fixed cap and join styles when printing to native Windows printers.Trond Kjernaasen2009-06-261-1/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Line and polygon strokes did not respect the join/cap styles set on a painter. Task-number: 256914 Reviewed-by: Samuel
| * | | Silence trivial warningsThiago Macieira2009-06-261-0/+2
| | | |
| * | | Improved support for DPI on Mac and Vista/7Jens Bache-Wiig2009-06-251-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This significantly improves the support for higher DPI-values on these platforms by ensuring that common pixelmetrics are scaled accordingly. In addition we mark all Qt apps as DPI-aware on Windows 7 by calling SetProcessDPIAware. We also changed the way we draw pixmaps on the mac paintengine when using dpi scaling > 1 to ensure smooth pixmap scaling. Reviewed-by: nrc Task-id: 242417
| * | | More culling of Panther Code.Norwegian Rock Cat2009-06-234-121/+18
| | | | | | | | | | | | | | | | | | | | | | | | Removed lots of places where we check for Tiger. Now we can assume it. Reviewed-by: Morten Sørvig
| * | | Merge branch '4.5' of scm.dev.nokia.troll.no:qt/qtSimon Hausmann2009-06-231-2/+2
| |\ \ \ | | |/ / | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty/webkit/VERSION src/3rdparty/webkit/WebCore/ChangeLog src/3rdparty/webkit/WebKit/qt/ChangeLog tests/auto/qgraphicsitem/tst_qgraphicsitem.cpp
| | * | Added QPen warning when setting dash pattern with non-positive entries.Samuel Rødal2009-06-231-2/+2
| | | | | | | | | | | | | | | | | | | | Task-number: 256720 Reviewed-by: Trond
| * | | Merge commit 'origin/4.5'Oswald Buddenhagen2009-06-233-12/+18
| |\ \ \ | | |/ / | | | | | | | | | | | | Conflicts: src/sql/drivers/psql/qsql_psql.cpp
| | * | Moving a child widget right after show() does not work as expected.Bjørn Erik Nilsen2009-06-221-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem was that we did an accelerated move, i.e. scrolled the widget's contents in the backing store and repainted the old area. We cannot do this trick when the widget has been invalidated (show(), resize()). In this case the widget had never been painted, so we basically scrolled the content of its parent and the widget itself appeared as invisible. Auto-test included. Task-number: 255117 Reviewed-by: Paul
| | * | Fixed wrong painting when doing IntersectClip after setClipping(false).Samuel Rødal2009-06-222-11/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The documentation is a bit ambiguous on what the expected behavior here is, but the behavior was consistent across paint engines before 4.5. QPaintEngineEx introduced inconsistencies in the raster and OpenGL paint engines, so this patch reverts the behavior back to what it was in 4.4. Task-number: 256549 Reviewed-by: Trond
| * | | Fixed rounding bug in raster paint engine rect / image drawing.Samuel Rødal2009-06-221-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change 855aa89e0ba99f8a0f75d7b31930bab2cefb93f8 incorrectly changed toNormalizedFillRect to use int truncation instead of qRound. This fixes the autotest failure in tst_QPainter::drawRect2 as well. Reviewed-by: Trond
| * | | QStroker needs to be exported.Anders Bakken2009-06-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's a member in QRasterPaintEngine which is subclassed by QDirectFBPaintEngine which lives in a plugin. Partial revert of 48257d751a76699e548e59b76fc79303ef328375 Reviewed-by: TrustMe
| * | | Changed enum Qt::Uninitialized to enum Qt::InitializationMartin Smith2009-06-194-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | enum Qt::Uninitialized contains one value, which is also called Uninitialized. Because the type and the value used the same name, wherever the type Qt::Uninitialized was used in a function signature, you had to include the enum keyword. But qdoc's preprocessor doesn't like that, so you have to take the enum keyword out of the signatures. But then the compiler complains because the type and the value look the same. So I had to change the enum type name to Initialization, so the compiler can distinguish it from the value name. And qdoc likes that too.
| * | | Use QTransform more efficiently.Bjørn Erik Nilsen2009-06-184-10/+5
| | | | | | | | | | | | | | | | Reviewed-by: Samuel
| * | | Merge branch '4.5' of scm.dev.nokia.troll.no:qt/qtSimon Hausmann2009-06-183-29/+44
| |\ \ \ | | |/ / | | | | | | | | | | | | | | | | | | | | Conflicts: configure.exe tests/auto/qpainter/tst_qpainter.cpp translations/qt_ru.ts
| | * | Fixed bugs in QPainterPath::united().Samuel Rødal2009-06-171-27/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change from a relative to an absolute fuzzy compare as was the case pre-4.4. With a relative fuzzy compare points that have an x or y coordinate of 0 will never be merged with points that are very close to 0, for example (1e-15, 0). Task-number: 251909 Reviewed-by: Trond
| | * | Fixed segmentation fault caused by empty clip.Samuel Rødal2009-06-172-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure not to use the broken QRect constructor, and do an early check on whether the clip rect is empty in QRasterizer::rasterizeLine(). Task-number: 254105 Reviewed-by: Trond
| * | | Make construction of unitialized QTransform/QMatrix a no-op.Bjørn Erik Nilsen2009-06-184-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These constructors are useful when you have to create a temporary uninitialized QTransform/QMatrix and later initialize it to something else. Done with Lars. Reviewed-by: samuel
| * | | Merge license header changes from 4.5Volker Hilsheimer2009-06-16148-295/+295
| |\ \ \ | | |/ /
| | * | Update license headers as requested by the marketing department.Jason McDonald2009-06-16152-303/+303
| | | | | | | | | | | | | | | | Reviewed-by: Trust Me
| * | | smaller optimisation in ::fromTransform() and fromScale()Lars Knoll2009-06-161-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We know the type of the transformation in these methods, so there is no point in setting a dirty flag for the type. Reviewed-by: Samuel
| * | | greatly speed up QTransform::mapRect() for projective transformsLars Knoll2009-06-161-11/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. Fix the MAP macro to be more correct for degenerated projective transformations. Reviewed-By: Samuel
| * | | Early exit from QRegion::intersects() if there is only one rect.Andreas Aardal Hanssen2009-06-161-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't waste cycles with constructing a vector with rectangles if there is only one rectangle in the source region. Same as 36ff1b507bf2d509019ae8ddd638922b09755c6b, but for QRegion::intersects(QRect). Reviewed-by: bnilsen
| * | | Early exit from QRegion::intersects() if there is only one rect.Andreas Aardal Hanssen2009-06-161-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't waste cycles with constructing two vectors with rectangles if there is only one rectangle in each of the two regions. Reviewed-by: Lars Reviewed-by: bnilsen
| * | | implement equality operator in a more sane wayLars Knoll2009-06-154-5/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. Added qFuzzyCompare overloads for QMatrix and QTransform to still allow for fuzzy comparisons. Reviewed-By: Samuel Rødal
* | | | Work around crash with RVCT 2.2.Jason Barron2009-06-291-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | RVCT does not like this line of code for some reason, but doesn't seem to mind if it is expanded into multiple lines and the function pointer is initialized with an assignment operator.
* | | | Manually fix bad merges and make sure everything compiles with 4.6.Harald Fernengel2009-06-291-4/+2
| | | |
* | | | Merge commit 'qt/master-stable' into 4.6-stableJason Barron2009-06-2560-6735/+1689
|\ \ \ \ | |/ / / | | | / | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bring Qt 4.6 into the Qt-S60 repo. Conflicts: configure.exe mkspecs/features/qttest_p4.prf qmake/generators/makefile.cpp src/corelib/io/qdir.cpp src/corelib/io/qprocess.h src/corelib/kernel/qcoreevent.h src/corelib/kernel/qobject.cpp src/corelib/kernel/qsharedmemory_unix.cpp src/corelib/thread/qthread_p.h src/corelib/tools/qvector.h src/gui/dialogs/qdialog.cpp src/gui/dialogs/qfiledialog.cpp src/gui/dialogs/qfiledialog_p.h src/gui/dialogs/qmessagebox.cpp src/gui/graphicsview/qgraphicsitem.cpp src/gui/graphicsview/qgraphicsview.cpp src/gui/image/qpixmapcache.cpp src/gui/kernel/qapplication.cpp src/gui/kernel/qapplication_p.h src/gui/kernel/qwidget.cpp src/gui/kernel/qwidget_p.h src/gui/painting/qdrawhelper.cpp src/gui/painting/qpaintengine_raster.cpp src/gui/text/qfontengine_qpf.cpp src/gui/widgets/qmenubar.cpp src/network/socket/qlocalserver.cpp src/testlib/qtestcase.cpp src/testlib/testlib.pro tests/auto/qimagereader/tst_qimagereader.cpp tests/auto/qitemdelegate/tst_qitemdelegate.cpp tests/auto/qnetworkreply/tst_qnetworkreply.cpp tests/auto/qpixmap/qpixmap.pro
| * | Fixed compile of QtGui with MSVC.Rohan McGovern2009-06-121-1/+1
| | | | | | | | | | | | | | | MSVC requires the same linkage specifiers to be provided at both the declaration and definition.
| * | Fixed bitmap drawing in GL 2 engine when not using GL pixmap backend.Samuel Rødal2009-06-121-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | QPixmap shouldn't return true in hasAlphaChannel() for bitmaps, instead the paint engine should check whether the pixmap is a bitmap or not. In addition, QBrush::isOpaque() returned true for bitmap brushes, which is wrong according to the documentation. Reviewed-by: Trond
| * | QTransform::shear cut-off.Bjørn Erik Nilsen2009-06-121-0/+3
| | | | | | | | | | | | | | | | | | Do nothing if both sh and sv is 0. Reviewed-by: Samuel
| * | Merge branch 'master' of git@scm.dev.nokia.troll.no:qt/qtBjørn Erik Nilsen2009-06-122-5/+13
| |\ \
| | * | Fixed incorrect rendering of bitmap/pattern brushes in GL 2 engine.Samuel Rødal2009-06-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The pen color should be used when drawPixmap is called with a bitmap, and the brush color should be used for texture patterns that are bitmaps. Task-number: 245802 Reviewed-by: Trond
| | * | doc: Fixed several qdoc warnings.Martin Smith2009-06-121-4/+12
| | | |
| * | | Merge commit 'origin/4.5'Bjørn Erik Nilsen2009-06-122-10/+11
| |\ \ \ | | |/ / | |/| / | | |/ | | | | | | | | | | | | | | | | | | Conflicts: demos/boxes/glshaders.cpp src/gui/graphicsview/qgraphicsitem.cpp tests/auto/qgraphicsitem/tst_qgraphicsitem.cpp tools/linguist/shared/cpp.cpp translations/linguist_ja.qm translations/qt_ru.qm
| | * Fixed the pen dash patterns for Mac.Trond Kjernåsen2009-06-111-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | The predefined dash patterns for Mac have always been off, compared to the ones in the raster engine and the GL engine. Task-number: 255292 Reviewed-by: Kim
| | * Initialize xform_scale in constructorAnders Bakken2009-06-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Though this variable always will be initialized in QX11PaintEngine::begin() valgrind complains about conditional jump or move depends on uninitialised value(s). Reviewed-by: Donald <qt-info@nokia.com>