summaryrefslogtreecommitdiffstats
path: root/src/gui/painting
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch '4.7-upstream' into 4.7-docA-Team2010-10-131-4/+2
|\
| * Remove unnecessary calls to GetHorizBounds() + boundingBox()Alessandro Portale2010-10-121-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QFontEngineS60::boundingBox_const(): The metrics that CFont::getCharacterData() returns is equivalent to what TOpenFontCharMetrics::GetHorizBounds() returns. So, remove the use of TRect glyphBounds, and TOpenFontCharMetrics::GetHorizBounds(). Implementation of TOpenFontCharMetrics::GetHorizBounds(): http://developer.symbian.org/oss/API_REF/Public_API/file/837f303aceeb/epoc32/include/openfont.h#l1352 QRasterPaintEngine::drawGlyphsS60(): The metrics that QFontEngineS60::getCharacterData() returns are equivalent to what QFontEngineS60::boundingBox() returns. So, remove the use of glyph_metrics_t metrics, and QFontEngineS60::boundingBox(). These changes increase the Fps in qt\tests\manual\textrendering\textperformance "Latin" from 16.2 to 16.5 Fps on an XM5800. And they do that by removing code :) Task-number: QTBUG-14378 Reviewed-by: Jason Barron
* | Merge branch '4.7-upstream' into 4.7-docA-Team2010-10-121-3/+5
|\ \ | |/
| * Crash fix when using the runtime graphics system on Symbian.Jason Barron2010-10-121-3/+5
| | | | | | | | | | | | | | | | | | | | If QWidget::destroy() is called (perhaps by setParent) then the window surface is deleted by the destructor of QSymbianControl instead of in the "normal" place which is ~QWidget(). This means that we should not attempt to use the RWindow in the window surface because it is in the process of being destroyed. Reviewed-by: Jani Hautakangas
* | Merge branch '4.7-upstream' into 4.7-docA-Team2010-10-081-0/+1
|\ \ | |/
| * Merge branch 'qt-4.7-from-4.6' of scm.dev.nokia.troll.no:qt/qt-integration ↵Qt Continuous Integration System2010-10-081-0/+1
| |\ | | | | | | | | | | | | | | | | | | into 4.7-integration * 'qt-4.7-from-4.6' of scm.dev.nokia.troll.no:qt/qt-integration: Fix build with cups 1.5 snapshots
| | * Merge branch 4.6 into qt-4.7-from-4.6Qt Continuous Integration System2010-10-071-0/+1
| | |\
| | | * Fix build with cups 1.5 snapshotsBernhard Rosenkraenzer2010-10-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without this patch, Qt CUPS support fails to build with current CUPS snapshots: In file included from ../../include/QtGui/private/qcups_p.h:1:0, from painting/qpdf.cpp:47: .../qcups_p.h:78:11: error: 'ppd_file_t' does not name a type .../qcups_p.h:80:11: error: 'ppd_file_t' does not name a type .../qcups_p.h:81:11: error: 'ppd_option_t' does not name a type .../qcups_p.h:84:11: error: 'ppd_option_t' does not name a type .../qcups_p.h:87:34: error: ISO C++ forbids declaration of 'type name' with no type .../qcups_p.h:87:47: error: template argument 1 is invalid .../qcups_p.h:103:56: error: 'ppd_group_t' does not name a type .../qcups_p.h:103:77: error: ISO C++ forbids declaration of 'group' with no type .../qcups_p.h:104:62: error: 'ppd_group_t' does not name a type .../qcups_p.h:104:75: error: ISO C++ forbids declaration of 'group' with no type .../qcups_p.h:108:11: error: 'ppd_option_t' does not name a type .../qcups_p.h:110:5: error: 'ppd_file_t' does not name a type Merge-request: 835 Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
* | | | Merge branch '4.7-upstream' into 4.7-docA-Team2010-10-071-22/+41
|\ \ \ \ | |/ / /
| * | | Make sure the QS60PaintEngine can draw other classes of pixmap dataJason Barron2010-10-071-22/+41
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | The QS60PaintEngine should not assume that the pixmap is always of type 'Raster'. It should check the classId and if it is not 'Raster' it should forward the call to QRasterPaintEngine which already handles this scenario by converting the pixmap to a QImage and drawing that instead. Reviewed-by: Jani Hautakangas
* | | Merge branch '4.7-upstream' into 4.7-docA-Team2010-10-049-31/+15
|\ \ \ | |/ /
| * | Fixed antialiased rendering error in raster engine due to wrong merge.Samuel Rødal2010-10-011-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | We should only add to rendered_spans once, before freeing the rasterizer memory pool. This fixes the tst_qpathclipper:clip2() auto-test failure on 32-bit linux. Reviewed-by: Kim
| * | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-09-309-29/+15
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: (24 commits) Stabilize tst_QGraphicsWidget::QT_BUG_13865_doublePaintWhenAddingASubItem Fixed accessing freed memory in raster engine. Build fix for -qtnamespace. Fixed parsing of SVGs with absolute font sizes. Moving QPdf::stripSpecialCharacter to fontengine Revert "Fix (implement!) hfw/wfh in QGridLayoutEngine" Fixed a layout issue where you could get NaN as dimensions QTextCodec: Fix valgrind warning when using QTextCodec in destructions functions Fix double painting when adding an item into a linear layout Fixed antialiased rasterization bug in raster engine. Fixed potential crash when loading corrupt GIFs. Work around an ATI driver problem with mutli-sampled pbuffers. tst_qstatemachine.cpp: fix compilation with Sun Studio Fixed regression in clipping.qps autotest on 64-bit. Fixed crash when using Qt::WA_DeleteOnClose on a QPrintDialog on Mac. Fixed performance regression in curve stroking. Don't disable texture_from_pixmap on GLX/X11 by default. Avoid creating copy of an image in memory when storing as png Doc update for the support of MSVC 2010 64-bit fix documentation of drawText(int, int, int, int, ... ...
| | * | Fixed accessing freed memory in raster engine.Kim Motoyoshi Kalland2010-09-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The bug was discovered when running the svgviewer example on 64-bit Windows. Reviewed-by: Samuel
| | * | Moving QPdf::stripSpecialCharacter to fontengineJørgen Lind2010-09-302-20/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It is only used by the fontengines. This is one of the steps to make it easier to make fontengines build outside of QtGui. Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
| | * | Fixed antialiased rasterization bug in raster engine.Samuel Rødal2010-09-293-7/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When rasterization in the gray raster fails due to out of memory there might already have been a number of spans flushed. To avoid flushing these spans multiple times and thus getting overdraw artifacts we need to keep track of how many spans to skip when we redo the rasterization. This fixes the rendering error in arthur test paths_aa.qps Reviewed-by: Yoann Lopes
| | * | Fixed regression in clipping.qps autotest on 64-bit.Samuel Rødal2010-09-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TPos needs to be 32-bit, not 64-bit. QT_FT_Pos being 64-bit caused sizeof(TWorker) + sizeof(TCell) in qgrayraster.c to exceed 4096, which is the MINIMUM_POOL_SIZE, leading to rendering errors in certain cases. Reviewed-by: Yoann Lopes
| | * | Fixed performance regression in curve stroking.Samuel Rødal2010-09-273-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change c46688b8a88da made us use m_curve_threshold for both QBezier::shifted and QBezier::toPolygon, and adjusted the threshold dynamically based on the painter scale. Since the threshold in shifted was already relative to the pen width, it is independent from the painter scale. Instead, we need to set a separate threshold for dashing. Also, in several places we were calling setCurveThresholdForTransform with the painter matrix even though we were transforming the points into device coordinate space before stroking. Task-number: QTBUG-13894 Reviewed-by: Gunnar Sletta
| | * | fix documentation of drawText(int, int, int, int, ...Gunnar Sletta2010-09-271-1/+1
| | | |
| | * | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.7Yoann Lopes2010-09-241-84/+96
| | |\ \
| | * | | Fixes gray_raster incorrectly reporting out of memory error.Yoann Lopes2010-09-231-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The bug caused a useless realloction everytime a path was rasterized with gray_raster. Task-number: QTBUG-13871 Reviewed-by: Samuel
* | | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-doc-team into 4.7David Boddie2010-10-044-15/+49
|\ \ \ \ \ | |/ / / /
| * | | | Fixed performance issue in QML clipping with OpenGL 2.0 paint engine.Samuel Rødal2010-09-281-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change 4c515ceb fixed Intersect and Unite-clipping after doing setClipping(false), but also introduced a performance problem. If there was no pre-existing clip we'd convert IntersectClips to ReplaceClips, which is unnecessary since the paint engines already handle this correctly. IntersectClips can be handled much more efficiently in the OpenGL 2 paint engine for example. We only need to convert to ReplaceClip when someone has used setClipEnabled(false) which is anyways expensive and not recommended. Reviewed-by: Trond
| * | | | Fixed antialiased rasterization bug in raster engine.Samuel Rødal2010-09-283-7/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When rasterization in the gray raster fails due to out of memory there might already have been a number of spans flushed. To avoid flushing these spans multiple times and thus getting overdraw artifacts we need to keep track of how many spans to skip when we redo the rasterization. This fixes the rendering error in arthur test paths_aa.qps Reviewed-by: Yoann Lopes
| * | | | Small optimizations the gray raster for 64-bit.Samuel Rødal2010-09-281-4/+4
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The gray raster uses long to ensure having 32-bit integers since it was originally designed to work on 16-bit platforms as well. On 64-bit platforms switching to use int instead of long gives a performance boost of ~10 % or so depending on the use case. Reviewed-by: Yoann Lopes
* | | | Doc: Fixed the in-repository licenses for the documentation.David Boddie2010-10-043-15/+15
|/ / / | | | | | | | | | | | | | | | In the repository, we should always use the No Commercial license alongside the GNU Free Documentation License for documentation files.
* | | Fixed floating point overflow issues in QRasterizer::rasterizeLineSamuel Rødal2010-09-231-60/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change 7c673a4cf64ba04 introduced some autotest failures in the fpe_steepSlopes test in QPainter. Since the other rasterizers all deal in a 26.6 fixed point coordinate space we should snap the line vertices to this to prevent floating point overflows due to very steep slopes. This also necessitates keeping track of four different slope / inverse slope increments for each of the four edges. This also fixes a previously QEXPECT_FAIL'ed test case. Task-number: QTBUG-13429 Reviewed-by: Trond
* | | Fixed scaled point drawing with square cap in raster paint engine.Samuel Rødal2010-09-231-24/+17
|/ / | | | | | | | | | | | | | | | | | | | | With a large pen width and a small scale, due to the hacky way we draw points (stroking a line from (x, y) to (x + tiny_amount, y)), we some times end up snapping these two points to the same in rasterizeLine(). If we instead apply the SquareCap before we do clipping / snapping we don't get this problem. Task-number: QTBUG-13429 Reviewed-by: Trond
* | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-09-221-1/+0
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: apply msvc flags to wince too fix qt static build on wince fix build with QT_NO_GESTURES qmake: fix quoting of moc calls Use regparm(3) for ICC too, otherwise it's an ABI mismatch in QChar Regenerate the Unicode tables after updates to the generator tool Compile in C++0x mode remove extra includes minor clean-ups minor improvements for data parsers tiny clean-up for generated data move QUnicodeTables:: script() and lineBreakClass() implementations make lupdate test less fragile Enable building Qt/Webkit with debug symbols Add breakpad support
| * | remove extra includesRitt Konstantin2010-09-211-1/+0
| | |
* | | Fixed drawing a large number of glyphs with the same font under GL.Trond Kjernåsen2010-09-212-8/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Our glyph caching system doesn't take GL texture size limitation into account, and assumes you can create an infinitely large texture. On top of that, the cache will never create a cache that is wider than 256, or QT_DEFAULT_TEXTURE_GLYPH_CACHE_WIDTH, which means we'll hit the texture size limit even faster. With this patch the entire texture is utilized. However, to fix in properly we need to support having multiple texture for each font engine. That will be fixed shortly (see task QTBUG-13784). Task-number: QT-3971 Reviewed-by: Eskil
* | | Fixes bezier curves not being drawn when it is a line.Yoann Lopes2010-09-211-41/+0
|/ / | | | | | | | | | | | | Some old work-around code is no longer needed... Task-number: QTBUG-13721 Reviewed-by: Samuel
* | Fixed color of cosmetic pens when printing under Windows.Trond Kjernåsen2010-09-201-1/+1
| | | | | | | | | | | | | | When the PS_COSMETIC style is used, the pen width has to be 1. Task-number: QTBUG-13065 Reviewed-by: Samuel
* | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-09-172-3/+3
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (45 commits) Doc: css fine tuning Doc: Fixed a non-compiling example. Doc: removing linebreak Doc: correcting html template Doc: Updated What's new in 4.7 page Doc: Updated What's new in 4.7 page Doc: Removing google analytics from offline docs Doc: fixing creator bug in page footer Doc: correcting html template - validating Doc: fixing issues with table indent - css Doc: Fixing style: line height, ol indent, coulmns (css3) Doc: correcting html template Doc: Updated the Mac requirements page. Doc: Cleaning up the known issues page. Pointing people to check the online resources. Added a QFormLayout snippet to the layout.qdoc and layouts.cpp Doc: Removing section about Multimedia - playback and declarative elements. This was descoped from Qt 4.7. Doc: Listed undoable operations in QTextDocument Revert "Doc: fixing page name bug caused by 07bbace404078dcfd82eff717daa97299b8ba52c changing qml elements page" Doc: Note on updating proxy models with dynamic sort filters qdoc: Fixed an html formatting error in the QML property list. ...
| * \ Merge branch '4.7-upstream' into 4.7-docA-Team2010-09-161-8/+7
| |\ \
| * \ \ git Merge branch '4.7-upstream' into 4.7-docJesper Thomschutz2010-09-153-4/+7
| |\ \ \ | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/kernel/qgesturemanager.cpp
| * \ \ \ Merge branch '4.7-upstream' into 4.7-docA-Team2010-09-132-76/+7
| |\ \ \ \
| * \ \ \ \ Merge branch '4.7-upstream' into 4.7-docA-Team2010-09-111-2/+4
| |\ \ \ \ \
| * \ \ \ \ \ Merge branch '4.7-upstream' into 4.7-docA-Team2010-09-101-0/+1
| |\ \ \ \ \ \
| * \ \ \ \ \ \ Merge branch '4.7-upstream' into 4.7-docA-Team2010-09-092-18/+122
| |\ \ \ \ \ \ \
| * \ \ \ \ \ \ \ Merge branch '4.7-oslo1' into 4.7-docA-Team2010-09-074-291/+240
| |\ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ Merge commit 'staging-1/4.7' into doc-4.7Morten Engvoldsen2010-09-038-155/+370
| |\ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ Merge branch '4.7' of git@scm.dev.nokia.troll.no:qt/qt-doc-team into doc-4.7Morten Engvoldsen2010-09-022-3/+3
| |\ \ \ \ \ \ \ \ \ \
| | * | | | | | | | | | Fixed spelling, broken links, and missing default values.Jerome Pasion2010-08-302-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tasks: QTBUG-13271, QTBUG-13212, QTBUG-12321 Reviewer: David Boddie
* | | | | | | | | | | | Fixed compilation of qdrawhelper.cpp with XLC 10Rohan McGovern2010-09-161-1/+1
| |_|_|_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With XLC 10, calls to static functions within a template function need to be fully qualified. Reviewed-by: Marius Storm-Olsen
* | | | | | | | | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.7David Boddie2010-09-158-100/+141
|\ \ \ \ \ \ \ \ \ \ \ | | |_|_|_|_|_|_|_|/ / | |/| | | | | | | | |
| * | | | | | | | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-09-141-1/+1
| |\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Fix top-left corner of rounded rects in QPaintEngineEx
| | * | | | | | | | | | Fix top-left corner of rounded rects in QPaintEngineExGunnar Sletta2010-09-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reviewed-by: Rhys Weatherley
| * | | | | | | | | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-09-141-1/+1
| |\ \ \ \ \ \ \ \ \ \ \ | | |/ / / / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (25 commits) run depend_command even if the binary has no absolute path fix scaleFactor/totalScaleFactor in QPinchGestureRecognizer Added velocity property to the QPanGesture. Changed the speed property on QSwipeGesture to velocity fix typos in comment unbreak test Don't add generic subdirs project twice. Remove debug, quiet warnings. Fix memory leaks and valgrind errors. QStroker: Fix erroneous SvgMiterJoin behavior for parallel lines Revert "Properly implement qobject_cast for const pointers." Bearer management: Fix compilation with namespace. fetch next token after class definition opening delay next token fetching when opening namespace don't let operator overloads confuse us don't try to show source when no locations are given Implement a private API for setting title widgets Fix the bug for QSettings on Windows, to store qint32/quint32, qint64/quint64 in Windows registry. fix CRLF Added private API to install an x11EventFilter ...
| | * | | | | | | | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-09-131-1/+1
| | |\ \ \ \ \ \ \ \ \ \ | | | |_|_|_|_|_|_|_|/ / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (25 commits) run depend_command even if the binary has no absolute path fix scaleFactor/totalScaleFactor in QPinchGestureRecognizer Added velocity property to the QPanGesture. Changed the speed property on QSwipeGesture to velocity fix typos in comment unbreak test Don't add generic subdirs project twice. Remove debug, quiet warnings. Fix memory leaks and valgrind errors. QStroker: Fix erroneous SvgMiterJoin behavior for parallel lines Revert "Properly implement qobject_cast for const pointers." Bearer management: Fix compilation with namespace. fetch next token after class definition opening delay next token fetching when opening namespace don't let operator overloads confuse us don't try to show source when no locations are given Implement a private API for setting title widgets Fix the bug for QSettings on Windows, to store qint32/quint32, qint64/quint64 in Windows registry. fix CRLF Added private API to install an x11EventFilter ...