summaryrefslogtreecommitdiffstats
path: root/src/gui/painting
Commit message (Collapse)AuthorAgeFilesLines
* Clean up some QT_HAVE_xxx macros in qcompilerdetection.hThiago Macieira2012-05-181-3/+3
| | | | | | | | | | | | | | We no longer have code doing MMX or 3dNow! on Qt 5, so nothing defines those macros. If nothing defines them, we don't need to undef them. Note that the SSE case is a mislabel: the old "SSE" code on Qt 4 wasn't real SSE, it was MMX with some instructions added at the same time as SSE was added. It's MMX that Windows 64 doesn't support. As for QT_HAVE_ARMV6, this macro is replaced by the sub-arch detection in qprocessordetection.h. Change-Id: Ic3b00e1533e6b4cea32ba7824233de0a5c0fb32b Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* MIPS DSPR2 optimization of routine fetchUntransformedRGB16Damir Tatalovic2012-05-163-0/+92
| | | | | | | Change-Id: I109deb969009214c4d81677e127f50120443acd2 Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Fix QPA files inclusion headersGirish Ramakrishnan2012-05-151-3/+3
| | | | | | | find . -name "*.h" | xargs sed "s/^#\(.*\)_QPA_H/#\1_H/" -i Change-Id: Ifa96f8cfcb67070a961c7e5f05719b82653a1174 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Fix font engine dependent text transformationJiang Jiang2012-05-111-1/+4
| | | | | | | | | The font engine used in supportsTransformation() should be the same as the one used in drawCachedGlyphs. If it's a multi font engine we should check the primary font engine inside it. Change-Id: I384aab3c58edfe2e7ae6fe7fe96bef766053d3ef Reviewed-by: Yoann Lopes <yoann.lopes@nokia.com>
* Doc: Fix \sa usageMarius Storm-Olsen2012-05-118-91/+57
| | | | | | | | | Ensure comma between elements (757 missing), single space and curly- braces around title elements, etc. Change-Id: Id16c3fda7fc47a12a0682f8720214f4990609a97 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Merge branch 'docs-refactoring' into masterMarius Storm-Olsen2012-05-109-61/+61
|\ | | | | | | Change-Id: Iebd1966abace3cdf7f9428dcfc1ded5b124ab113
| * Doc: Modularize QtGui documentation.Casper van Donderen2012-05-099-61/+61
| | | | | | | | | | | | | | | | This change moves the snippets and images to the modularized directories. Change-Id: I5f86f598fbe7c47d632c613b85d94ced89ba2c29 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* | Revert "QtPrintSupport: Remove remaining LPR specific code"Rohan McGovern2012-05-081-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This doesn't compile with a typical cross-compilation setup, which generally won't include cups headers. The commit should have been rejected, but wasn't, due to a bug in the Qt Project CI. Since it now causes all other modules depending on qtbase to fail their CI, it must be reverted to minimize disruption while the commit can be amended and/or the test toolchain updated to include cups headers. This reverts commit 80f7a388906f94f58bf765a32b9abbb16f967db2. Change-Id: I315ae275b37de358a74af28ab7bd691c9849acba Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com> Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
* | QtPrintSupport: Remove remaining LPR specific codeJohn Layt2012-05-071-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CUPS is the only supported print system on UNIX, LPR/PS support has already been dropped but some LPR specific code still remains. * Move qt_getCupsPrinterPaperSizes from qprinterinfo_unix to QCUPSSupport * Remove qprinterinfo_unix as no longer used * Remove LPR related code from QPdfPrintEngine * Remove all QT_NO_LPR uses * Remove most QT_NO_CUPS uses, use QT_NO_PRINTER where necessary Some QT_NO_CUPS uses remain in QPdfPrintEngine, these will be removed in a following change implementing a CUPS plugin. Change-Id: I439b6fad9cf88c3d24aa48e49475f49ad310dbad Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* | Expose QPA API under qpa/*Girish Ramakrishnan2012-05-074-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The main reasons for doing this are: 1. _qpa.h end up in the master QtGui include file. QtGui is meant for userland applications. qpa code is neither binary nor source compatible. Inadvertant use of QPA api makes the user code binary-incompatible. 2. syncqt creates forwarding headers for non-private header files. This gives people the impression that this is public API. As discussed on the mailing list, even though QPA api is internal and subject to change, it needs to treated differently from private headers since they will be used by in-qtbase and out-of-qtbase plugins. This commit does the following: 1. The _qpa in QPA header files is dropped. 2. syncqt now treats any file with qplatform prefix as a special file and moves it to qpa/ directory. The recommended way of using QPA API in plugins is: #include <qpa/qplatformfoo.h>. This allows the user include QPA API from multiple modules (for example, qplatformfoo might be in QtPrintSupport) 3. The user needs to explicitly add QT += <module>-private to get access to the qpa api. 4. Creates compat headers for the olden style qplatformfoo_qpa.h and QPlatformFoo includes. This commit does not change the cpp filenames. This requires a more careful merging of existing non qpa cpp files and existing cpp files on a case by case basis. This can be done at anytime. The following files are not renamed as part of this changed but will be fixed as part of a future change: src/gui/kernel/qgenericpluginfactory_qpa.h src/gui/kernel/qgenericplugin_qpa.h src/gui/kernel/qwindowsysteminterface_qpa.h files were renamed using for x in `find . -name "qplatform*_qpa.h"`; do git mv $x "${x/_qpa.h/.h}"; done for x in `find . -name "qplatform*_qpa_p.h"`; do git mv $x "${x/_qpa_p.h/_p.h}"; done includes were renamed using script for file in `find . -name "*.h" -or -name "*.cpp" -or -name "*.mm"`; do sed -i -e 's,.*#.*include.*<\(Qt.*/\)\?\(QPlatform.*\)>,#include <qpa/\L\2.h>,g' \ -e 's,.*#.*include.*"\(Qt.*/\)\?\(QPlatform.*\)",#include <qpa/\L\2.h>,g' \ -e 's,.*#.*include.* "\(qplatform.*\)_qpa.h",#include <qpa/\L\1.h>,g' \ -e 's,.*#.*include.*"\(qplatform.*\)_qpa_p.h",#include <qpa/\L\1_p.h>,g' \ -e 's,.*#.*include.*<\(Qt.*/\|Qt.*/private/\|private/\)\?\(qplatform.*\)_qpa\(.*\)>,#include <qpa/\2\3>,g' \ -e 's,.*#.*include.*"\(Qt.*/\|Qt.*/private/\|private/\)\?\(qplatform.*\)_qpa\(.*\)",#include <qpa/\2\3>,g' \ $file done Change-Id: I04a350314a45746e3911f54b3b21ad03315afb67 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* | Remove definitions of INV_EPS and M_SQRT2.Robin Burchell2012-05-071-11/+0
|/ | | | | | | | The use of these went away in Qt 4 commit f7d61dab69308f0993c8a5f2232226d1713ac4a7. Change-Id: I0bcd52cf59f653e5b699fa7cfaf4be510bac6b88 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Compile.Morten Johan Sorvig2012-05-041-2/+2
| | | | | | | | | | Clang is picky about the missing QT_FASTCALL and cant't find the base fetchPixel/storePixel template function. Change-Id: I7c0c14835b3d428f8f95961dc603d809511d7165 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Make cupsTempFile member unconditianol.Christoph Schleifenbaum2012-05-041-2/+0
| | | | | | | | | | | | QPdfEngine has to have the same member everywhere. Otherwise QPdfEngine and QPdfPrintEngine are compiled with different flags (-DQT_NO_CUPS) -> QString cupsTempFile is only in QPdfEnginePrivate in one lib -> crash. Task-number: QTBUG-25553 Change-Id: I1d23bd14b8e68c212225ac773675a3b1bd2ca6cb Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Remove some remnants of Symbian code in src/gui/paintingThiago Macieira2012-05-031-9/+1
| | | | | | | | | Those files don't exist anymore. They were removed in d1a2b53aaf76f48e195260a415ca406fa1ef01a2. Change-Id: Id20203c5671eec8bff74fb76b8baf6b2fecb7c5b Reviewed-by: Shane Kearns <shane.kearns@accenture.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Fix compiler warning in qdrawhelper.cppOlivier Goffart2012-05-011-12/+8
| | | | | | | | | | warning: always_inline function might not be inlinable [-Wattributes] Those function are only used in array of function pointers. They cannot be inlined. Change-Id: I82b10d82ac8915129dc8921b1a74d42d8547bc40 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* get rid of Q_*_EXPORT_INLINE macrosKonstantin Ritt2012-04-263-29/+29
| | | | | | | | | | | | > Girish: > We should be able to remove the macro completely today, > just mark all those functions as plain inline. > With Qt5, we don't have to worry about bc yet. this fixes "import attribute ignored" warnings on mingw with -fno-keep-inline-dllexport Change-Id: I616e5de7c8d59953ce03a316b941a439fae56298 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Using QLatin1String instead of QLatin1LiteralDebao Zhang2012-04-252-2/+2
| | | | | | | | QLatin1Literal is just a typedef of QLatin1String. Change-Id: If20ca225e57a7fb45a7775f0fc81aedb6da88c96 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Use the C99 keyword "restrict" in compilers that support itThiago Macieira2012-04-242-59/+61
| | | | | | | | | | This allows the compiler to produce better / smaller code due to not being required to deal with two pointers possibly aliasing each other. This also enables vectorisation where otherwise the compiler wouldn't be able to do. Change-Id: Ie7db3a54a1ba22f87ac5283d5c43905707957549 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Mark some functions as always_inline with GCC and ICC.Thiago Macieira2012-04-241-0/+3
| | | | | | | | These functions are too critical to be called. They should always be inlined. Change-Id: I698dc6d83e02c323759c6d066f17993340bd53a5 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Merge remote-tracking branch 'origin/api_changes'Lars Knoll2012-04-1723-1848/+90
|\ | | | | | | Change-Id: I964b0a6f5c38351fdfafb8a2a128a349ff8c89d1
| * Merge remote-tracking branch 'origin/master' into api_changesLars Knoll2012-04-1611-134/+83
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure src/corelib/io/qurl.cpp src/gui/kernel/qwindow.cpp src/tools/moc/generator.cpp src/widgets/kernel/qwidget_qpa.cpp src/widgets/styles/qstyle.h src/widgets/widgets/qtabbar.cpp tests/auto/corelib/codecs/utf8/tst_utf8.cpp Change-Id: Ia457228d6f684ec8184e13e8fcc9d25857b1751e
| * | Remove QPaintBufferSignalProxy and QPaintBufferResource.Robin Burchell2012-04-122-89/+0
| | | | | | | | | | | | | | | | | | | | | Nothing seems to use these... Change-Id: I58b3e5f8536e43b3076da0a86d9093a6e11b947a Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * | Remove 'using' of QPaintEngineEx methods from QRasterPaintEngine.Robin Burchell2012-04-121-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | drawEllipse() and the drawPolygon() overloads are all reimplemented, so there is no point having this here. Change-Id: I343cea0dd0fff2ed6a27be2a19459056e929f9d8 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * | Remove unused QIntRect.Robin Burchell2012-04-121-13/+0
| | | | | | | | | | | | | | | | | | | | | I can't find any uses of this anywhere, in either Qt 4 or Qt 5. Change-Id: Ibf747b57b4afdd81e11631e87a80dcab5ac12f69 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * | Move QVectorPath::polygonFlags to its own class.Robin Burchell2012-04-112-11/+10
| | | | | | | | | | | | | | | | | | | | | | | | Who can say why it was put in QPaintEngineEx's header, but it certainly doesn't belong there. Change-Id: Ieb3b977affcf4b240f621d13b72bdc0e8f8138b9 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * | Move QRectVectorPath into the .cpp of the only file actually using it.Robin Burchell2012-04-112-48/+48
| | | | | | | | | | | | | | | Change-Id: I2778b5142ee574f44a9f9489a2752265c6a6c170 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * | Deprecate qMemCopy/qMemSet in favour of their stdlib equivilents.Robin Burchell2012-04-111-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Just like qMalloc/qRealloc/qFree, there is absolutely no reason to wrap these functions just to avoid an include, except to pay for it with worse runtime performance. On OS X, on byte sizes from 50 up to 1000, calling memset directly is 28-15% faster(!) than adding an additional call to qMemSet. The advantage on sizes above that is unmeasurable. For qMemCopy, the benefits are a little more modest: 16-7%. Change-Id: I98aa92bb765aea0448e3f20af42a039b369af0b3 Reviewed-by: Giuseppe D'Angelo <dangelog@gmail.com> Reviewed-by: John Brooks <john.brooks@dereferenced.net> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
| * | Merge remote-tracking branch 'origin/master' into api_changesOswald Buddenhagen2012-04-108-53/+99
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure src/widgets/styles/qwindowsxpstyle.cpp tests/auto/gui/kernel/qwindow/qwindow.pro tests/auto/gui/kernel/qwindow/tst_qwindow.cpp Change-Id: I624b6d26abce9874c610c04954c1c45bc074bef3
| * | | Remove all calls to, and deprecate qMalloc, qRealloc and qFree.Robin Burchell2012-03-311-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Callers should just call the standard allocation functions directly. Adding an extra function call onto all basic memory management for the sake of making it instrumentable in rare cases isn't really fair to everyone else. What's more, this wasn't completely reliable, as not everything was using them in a number of places. Memory management can still be overridden using tricks like LD_PRELOAD if needed. Their aligned equivilents cannot be deprecated, as no standard equivilents exist, although investigation into posix_memalign(3) is a possibility for the future. Change-Id: Ic5f74b14be33f8bc188fe7236c55e15c36a23fc7 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
| * | | Remove the old code using MMX registers.Thiago Macieira2012-03-289-1639/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are only 8 MMX registers, each 64-bit wide, and they alias the x87 registers. The access to the MMX register cannot use the new VEX-prefix instructions either. All of the functions being replaced are either present in the qdrawhelper_sse2.cpp and qdrawhelper_ssse3.cpp files, or the plain C++ function in qdrawhelper.cpp is vectorised when compiled with -ftree-vectorize (enabled in -O3), if SSE2 support is enabled. All x86-64 processors have SSE2, so this is a net improvement for 64-bit builds. For 32-bit builds, without further support this will cause the code to use non-vector or x87 instructions, which aren't the best. The solution will come in another commit. Change-Id: I4a22d8a2516b79172867510202d0fd627db54807 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * | | Remove WA_PaintOutsidePaintEventDebao Zhang2012-03-281-23/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | WA_PaintOutsidePaintEvent is only suggested to be used when porting Qt3 code to Qt 4 under X11 platform. and it has been broken now. Change-Id: Ie4297b2a449f1055ca10ada9efb930e6018b1efb Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
| * | | Merge master into api_changesKent Hansen2012-03-275-11/+2
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qisenum.h src/dbus/qdbusconnection_p.h src/widgets/kernel/qwidget.cpp tests/auto/other/qaccessibility/tst_qaccessibility.cpp Change-Id: I85102515d5fec835832cc20ffdc5c1ba578bd01d
| * \ \ \ Merge "Merge master into api_changes" into refs/staging/api_changesKent Hansen2012-03-2312-15/+918
| |\ \ \ \
| | * \ \ \ Merge master into api_changesKent Hansen2012-03-2312-15/+918
| | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | Change-Id: I93551e4d13a1b0815b359b9415060e9089477db1
| * | | | | | Cleanup Q3* itemsDebao Zhang2012-03-231-1/+0
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cleanup Q3* items from QtCore and QtGui modules. Change-Id: Id214a077a50e99d820c84e96e34866492a0130d8 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
| * | | | | Got rid of Map / Unmap events in favor of Expose event.Samuel Rødal2012-03-221-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since change 2e4d8f67a871f2033 the need for Map and Unmap events has gone away, as now the Expose event is used to notify the application about when it can start rendering. The Map and Unmap events weren't really used except by QWidget to set the WA_Mapped flag, which we now set based on the expose / unexpose. Also guarantee that a Resize event is always sent before the first Expose, by re-introducing an asynchronous expose event handler. Since an expose is required before rendering to a QWindow, show a warning if QOpenGLContext::swapBuffers() or QBackingStore::flush() if called on a window that has not received its first expose. Change-Id: Ia6b609aa275d5b463b5011a96f2fd9bbe52e9bc4 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
| * | | | | QtGui: make some constructors explicitMarc Mutz2012-03-144-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a semi-automatic search, so I'm reasonably sure that all the exported ones have been caught. Change-Id: I5b122db2498dbb2aee50c7ad95c67e708aade45b Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* | | | | | Add 'we mean it' header to qpa headersGirish Ramakrishnan2012-04-161-0/+11
| |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The QPA api is internal and not meant to be used by app users. Change-Id: I37245e9635bf22f2454e763699dd58eca6565b63 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* | | | | widgets: Fix painting to a fully transparent top level widgetHolger Hans Peter Freyther2012-04-151-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QWS used to have a line to change the composite mode from SourceOver to Source for the top level widget. This wasn't used with QPA and I removed the internal DontSetCompositionMode in qtbase. It turns out that the QWS way is the most efficient one to initialize the background of the widget. The alternative is to have the QPlatformBackingStore::beginPaint always clear the entire to be painted area and then paint the background of the widget. The difference of painting each pixel once or twice is noticable on embedded platforms and in the range of one to two fps. Reproduce the issue with: echo "QWidget {background: transparent}" > style.css ./examples/widgets/wiggly/wiggly -stylesheet style.css Task-number: QTBUG-24526 Change-Id: Ica4c980bb3bf6eb87ddb5b510ac7493292d01543 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com> Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* | | | | Fold qpaintdevice_qpa.cpp into qpaintdevice.cppGirish Ramakrishnan2012-04-153-66/+16
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I274508826b9be4eb00f67fccae5a18ecbdf41a36 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* | | | | Move QPainterPathPrivate to the private header files.Gunnar Sletta2012-04-135-63/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was made inline for the sake of performance, but has in hindsight proven to be not really worth it. It also prevents us from aligning the internal datastructure of QPainterPath with that of QPolygonF and the internal QVectorPath class which would make mapping between the two inside QPainter a lot faster. Making all this out-of-line now as discussed in the task https://bugreports.qt-project.org/browse/QTBUG-19998 so we can adress this in a binary compatible fashion during Qt 5.x Change-Id: I61058171ed31f8a845fa45517248367c85ce52cd Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* | | | | Fix unsigned comparison warning.Stephen Kelly2012-04-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I8544f47177b68cf29ce9fbebb152ca73db6e219d Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
* | | | | Removed Qt5 todo comment in qpaintengineex_p.hSamuel Rødal2012-04-101-1/+0
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | This won't get done for Qt 5, and QtOpenGL still implements this API. Task-number: QTBUG-25069 Change-Id: Ia8437d2a4a5a0e750afdf67764c53d75ee8065f6 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* | | | Fix release mode warnings about unused variables.Friedemann Kleint2012-04-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Variables that are only used in asserts. Change-Id: I0984b676ad9b67f5ae72266b8540e8054163918f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* | | | Rename clip() to clipData() to avoid confusion and warningJiang Jiang2012-04-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are already a bunch of clip() functions in this class. Rename the one for returning clip data to clipData() to make it clearer. It also eliminate a warning when compiling with clang. Change-Id: I1f890ad6bf1c0274a0b38b3116a3ec3d2957d44a Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* | | | QTBUG-24936: Ensure alpha cache is cleared when printing to PDF.Tarja Sundqvist2012-04-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added 'd->alphaCache.clear();' to qtbase/src/gui/painting/qpdf.cpp since also the alpha cache needs to cleared when printing to PDF. Task-number: QTBUG-24936 Change-Id: I12c41a98f4bd54c154fa47acebe0421e9a38a3ec Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* | | | The scaling should not effect the width of a cosmetic penAndy Shaw2012-03-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the scaling effects the pen width so that it is less than 1 pixel in width then it would use the QCosmeticStroker to draw, however this should not be the case for cosmetic pens that are not less than 1 pixel in width as the scaling does not change their width. Task-number: QTBUG-25006 Change-Id: I142db0f3a7ee02aa87171495d5a7a7011100814e Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* | | | Ensure that qdrawhelper.cpp is compiled with vectorisation activeThiago Macieira2012-03-281-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The GCC option -ftree-vectorize is enabled only at level -O3, so force -O3 if this is an optimised build. Also, ensure that we're using SSE for floating point math if we're in x86 (32-bit) builds. No change is necessary for the Intel compiler, since it enables vectorisation by default at any non-zero -O level. These options are not possible with MSVC. Change-Id: If1169a73cd8a3e8b34d9e21f281b78897b9aec3e Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* | | | Introduce FontSmoothingGamma as a platform style hint.Friedemann Kleint2012-03-274-50/+85
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | - Allocate gamma tables on the heap in a thread-safe way, use font smoothing returned by the style hints of the platform to calculate them. - Improve font rendering on Windows. Change-Id: I8cd39b51cf03cbd642474c02b9076814baecd597 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* | | Remove the Q_STATIC_TEMPLATE_SPECIALIZATION macroThiago Macieira2012-03-263-9/+0
| | | | | | | | | | | | | | | | | | | | | | | | This was necessary only for older MS Visual Studio versions, which are no longer supported anyway. Change-Id: I6c96fb2340296c34b480716303c93b892419229b Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>