summaryrefslogtreecommitdiffstats
path: root/src/gui/painting
Commit message (Collapse)AuthorAgeFilesLines
* Fixed build on S60 and WinCEThorbjørn Lindeijer2009-11-301-1/+1
| | | | | Since qreal is a float on these targets, it was having trouble picking the right version of qMax.
* Merge remote branch 'staging/4.6' into 4.6Oswald Buddenhagen2009-11-271-32/+60
|\
| * Improved and optimized the WaveUnderlineThorbjørn Lindeijer2009-11-261-32/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The WaveUnderline used to be a series of 180 degree arcs, that didn't always align very well between different text items and that could be clipped at the bottom since the font height got reduced. Now it uses quad beziers so that it is more like a sinus curve, and the alignment and clipping issues have been fixed. The painting of the WaveUnderline has been optimized using QPixmapCache. A 100 pixels wide sample of the wave is now cached as a pixmap and repeated to draw the WaveUnderline. This is an order of magnitude faster than rasterizing a QPainterPath. The QPlainTextEdit needs to set the brush origin since it draws the text items in local widget coordinates, rather than relying on a painter translation like the QTextEdit. Done with mae.
* | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt-s60-public into ↵axis2009-11-261-0/+2
|\ \ | | | | | | | | | 4.6-staging2
| * | Fixed crash when scrolling with deleted backingstoreJanne Koskinen2009-11-251-0/+2
| |/ | | | | | | | | | | | | | | | | | | In Symbian we save memory by deleting widget backingstore from non-visible windows. 12-key FEP is fullscreen and causes the backing store to be deleted but still continues to scroll the view to show current caret position in focused lineedit control. Task-number: QTBUG-5922 Reviewed-by: Jason Barron
* | Fixes rendering issues when rendering a QWidget to PDF with WindowsXP Style.Yoann Lopes2009-11-241-1/+1
|/ | | | | | | The problem was that the images added to the PDF were not clipped to the expected area. Task-number: QTBUG-3412 Reviewed-by: Trond Kjernaasen
* Ran the script utils/normalizeOlivier Goffart2009-11-181-1/+1
| | | | Over src/ tools/ examples/ and demos/
* Merge upstream/4.6 into oslo-staging-2Olivier Goffart2009-11-171-9/+9
|\
| * Merge oslo-staging-2/4.6 into upstream/4.6Olivier Goffart2009-11-172-6/+3
| |\
| * \ Merge remote branch 'staging/4.6' into 4.6Simon Hausmann2009-11-171-9/+9
| |\ \
| | * \ Merge commit 'upstream/4.6' into 4.6Bradley T. Hughes2009-11-131-1/+1
| | |\ \
| | * | | doc: Removed duplicate qdoc.Martin Smith2009-11-131-10/+1
| | | | |
| | * | | doc: Fixed typo.Martin Smith2009-11-131-4/+0
| | | | |
| | * | | doc: Changed numColors() to colorCount() in the doc.Martin Smith2009-11-131-5/+18
| | | | |
* | | | | Warning FixesOlivier Goffart2009-11-171-4/+0
| | | | |
* | | | | Fix pixel alignment of glyphs when using raster engine on Mac CocoaEskil Abrahamsen Blomfeldt2009-11-171-1/+1
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The left bearing of the glyph has to be rounded before truncated, otherwise the subpixel positioning of the glyph will be lost. The visible consequence of this was on Mac Cocoa where certain pairs of glyphs would get an extra pixel of space between them when running with graphics system raster. With small fonts it would look pretty bad. Task-number: QTBUG-5430 Reviewed-by: Trond
* | | | Fixing merger errors.Aleksandar Sasha Babic2009-11-161-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Removing some unreferenced variables that were left overs after revert&merge operation. Reviewed-by: Kim Motoyoshi Kalland
* | | | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.6Gunnar Sletta2009-11-161-1/+1
|\ \ \ \ | |/ / /
| * | | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt-s60-public into ↵axis2009-11-131-1/+1
| |\ \ \ | | | | | | | | | | | | | | | 4.6-staging2
| | * | | Fix MWC warningShane Kearns2009-11-121-1/+1
| | | | | | | | | | | | | | | | | | | | Reviewed-by: Trust Me
* | | | | Fixed double precision problems in pdf printingGunnar Sletta2009-11-161-3/+3
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | Increased the precision of the output to 9 decimals. Not ideal but better than just 6. Reviewed-by: Trond
* | | | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.6Gunnar Sletta2009-11-133-10/+17
|\ \ \ \
| * \ \ \ Merge commit upstream/4.6 into oslo-staging-2/4.6Olivier Goffart2009-11-135-4/+16
| |\ \ \ \ | | |/ / / | |/| | / | | | |/ | | |/|
| | * | Merge oslo-staging-2/4.6 into upstream/4.6Olivier Goffart2009-11-131-1/+1
| | |\ \ | | | |/ | | |/|
| * | | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt-s60-public into ↵axis2009-11-122-9/+16
| |\ \ \ | | |_|/ | |/| | | | | | 4.6-staging2
| | * | Revert "Using qreal more consistently in code (prevent misuse of double)"Aleksandar Sasha Babic2009-11-1119-334/+317
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 676780d515cedca85829ae962e4f501c5e5b6581. Conflicts: src/gui/painting/qblendfunctions.cpp
| | * | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Shane Kearns2009-11-1012-20/+47
| | |\ \
| | * \ \ Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6-s60axis2009-11-099-98/+159
| | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/painting/qblendfunctions.cpp
| | * | | | Using qreal more consistently in code (prevent misuse of double)Aleksandar Sasha Babic2009-11-0619-313/+338
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We want to force use of qreal where possible. This can lead to better performance on platforms where qreal -> float (i.e. ARM). To achieve this we: 1. changed from 'double' to 'qreal', where justified 2. using qreal() to intialize constants, where justified 3. adding helper functions that are overloaded for qreal like qAtan2(), qAcos(), qFabs() ... 4. defining QT_USE_MATH_H_FLOATS for Symbian platform In addtion we used opportunity to improve code with some small things 5. converting divisions to multiplications (i.e. '/ 2.0' -> '* qreal(0.5)') 6. defining new constants (i.e. 'Q_PI / 180.0' -> 'Q_PI180') 7. declaring variables as 'const', where justified Reviewed-by: Andreas Aardal Hanssen Reviewed-by: Gunnar Sletta Reviewed-by: Jan-Arve Reviewed-by: Kim Motoyoshi Kalland Reviewed-by: Alessandro Portale Reviewed-by: Janne Koskinen
| | * | | | Binary compatibility of Symbian ARMv5 and ARMv6 buildsShane Kearns2009-11-061-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use ARMv6 atomics where available Use OS atomics otherwise Integrate ARMV6 atomics to Symbian builds Use compiler defined macros to detect if ARMv6 instructions are available This defines the QT_HAVE_ARMV6 macro, replacing the way it was defined by the Symbian build system previously in qpainting.pri. qatomic_symbian now uses qatomic_arm or qatomic_armv6 automatically Port armv6 atomics to implement generic atomics interface The inline atomics are not inlined when we build for thumb using RVCT. So there is no performance improvement of using the "inline" versions vs a shared version called through a function call. The generic atomics interface is good for binary compatibility, as the same symbols are exported in all versions now. Changed the fallback generic atomics implementation from the unix one to a symbian specific one using RFastLock (identical code to the windows generic atomics, except for RFastLock replaces Win32 CRITICAL_SECTION) Note: GCCE atomics still need porting Tell git to ignore .lst listing files (produced by sbs/abld listing) ARMv6 support for GCCE compiler and fallback implementation using OS When building corelib with GCCE and -march=armv6, QT_HAVE_ARMV6 will be defined. This patch adds copies of the asm functions in GCC syntax. When building for the Symbian emulator, or ARMv5, then Symbian OS atomic functions are used as a fallback - these are more efficient than the unix atomics, and don't require data import (which the ARMv5 atomics use, but the OS loader doesn't support fully) Symbian OS functions are always used for QBasicAtomicInt::ref / deref, because these are faster than the generic function in all cases. They are machine coded for ARMv6, and are used internally by RFastLock. Reviewed-By: axis Reviewed-By: Brad
| * | | | | Fix warningsThierry Bastian2009-11-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Reviewed-by: Trust Me
* | | | | | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Gunnar Sletta2009-11-1317-24/+63
|\ \ \ \ \ \ | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | Conflicts: dist/changes-4.6.0
| * | | | | Fix typo in license headerAlessandro Portale2009-11-123-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The word 'module' was missing. Reviewed-By: TrustMe
| * | | | | Fixed searching and copy/paste from PDF documents.axis2009-11-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously copy and paste from PDFs made by Qt would paste garbage into the target document, and searching was not possible. The bug happened because the internal buffer would open its data stream in truncate mode rather than append mode, thereby losing content, and producing a slightly corrupted PDF. Task: QTBUG-4912 Task: QTBUG-3661 RevBy: Trond Kjernåsen
| * | | | | Doc: Fix warnings caused by deprecations.David Boddie2009-11-091-0/+12
| | |_|_|/ | |/| | | | | | | | | | | | | Reviewed-by: Trust Me
| * | | | Merge branch '4.6-platform' into 4.6Denis Dzyubenko2009-11-091-1/+1
| |\ \ \ \ | | |/ / / | |/| | |
| | * | | Fixes compilation warning in qbrushDenis Dzyubenko2009-11-061-1/+1
| | | |/ | | |/| | | | | | | | | Reviewed-by: Andreas
| * | | API review: Rename numRects() -> rectCount()Marius Storm-Olsen2009-11-096-11/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | QRegion::numRects() is marked obsolete. Removed all usage of the old function inside Qt and test-cases. Reviewed-by: Andreas Aardal Hanssen
| * | | API review: Rename numCols() -> colorCount()Marius Storm-Olsen2009-11-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The name numCols is ambiguous, as sometimes it's refering to the number of columns, and sometimes the number of colors. It also does not match the typical Qt naming convention *Count(). Reviewed-by: Tom Cooksey Reviewed-by: Andreas Aardal Hanssen
| * | | API review: Rename functions numColors(), setNumColors() and numBytes()Marius Storm-Olsen2009-11-062-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QPaintDevice and QImage used the functions numColors(), setNumColors(), and numBytes(). However, this is not consistent with the rest of the Qt API which uses *Count() and set*Count(). Removed all usage of these functions inside Qt and test-cases. Reviewed-by: Andreas Aardal Hanssen
| * | | API review: QMatrix::det() -> QMatrix::determinant(), matching math3dMarius Storm-Olsen2009-11-062-5/+16
| |/ / | | | | | | | | | | | | | | | | | | | | | After an API review of the new math3d classes, the full name was considered better than the short version. Therefore we obsolete the short function, and introduce the longer version. Reviewed-by: Andreas Aardal Hanssen
* | | Fixed a crash which could occur when perspective transforming QRegions.Trond Kjernåsen2009-11-121-8/+13
| | | | | | | | | | | | | | | | | | | | | This made the padnavigator example crash. Task-number: QTBUG-5674 Reviewed-by: Gunnar
* | | Fixed compilation on AIX 6.1 with xlC 10.1Samuel Rødal2009-11-111-1/+1
|/ / | | | | | | | | Task-number: QTBUG-3368 Reviewed-by: Thiago Macieira
* | Fixed g++ compiler warnings in qpen.cpp.Samuel Rødal2009-11-061-1/+1
| |
* | Fix QPainter::setPen(pen with color but no style) on non-extended.David Faure2009-11-061-15/+2
| | | | | | | | | | | | | | | | | | | | | | It was working with a QImage but not with a QPixmap, which is obviously a bug. In addition, it broke WebCore::GraphicsContext::setPlatformStrokeColor which does exactly what I put in the unittest: get pen, set color, set pen. This commit fixes the wrong color in the underline of the links in http://www.davidfaure.fr/kde/link_underline_color.html in QtWebkit. Merge-request: 1995 Reviewed-by: Samuel Rødal <sroedal@trolltech.com>
* | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt-graphics-team into 4.6Gunnar Sletta2009-11-061-8/+32
|\ \
| * | Fixed crash in qt_scale_image_16/32bit() when target is flipped.Kim Motoyoshi Kalland2009-11-061-8/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | If the target rectangle had negative width or height and the target rectangle's border passed through pixel centres, qt_scale_image_16/32bit() could crash because of incorrect rounding. Task-number: 5493 Reviewed-by: Gunnar
* | | don't do unessesary brush comparrisonsGunnar Sletta2009-11-061-8/+0
| | | | | | | | | | | | Reviewed-by: Samuel
* | | Revert micro optimization where NoPen == NoBrush as SVG relies on thisGunnar Sletta2009-11-061-3/+1
|/ / | | | | | | Reviewed-by: Samuel
* | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Gunnar Sletta2009-11-062-0/+10
|\ \ | |/