summaryrefslogtreecommitdiffstats
path: root/src/svg/qsvghandler.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright headersAkseli Salovaara2015-03-311-13/+13
| | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I7e3e96183e073877b46bc8071b2ccae19e69426b Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
* Updated year in copyright headerKai Koehne2014-03-261-1/+1
| | | | | | | | | | | | | | | | | | find . -path '*/3rdparty/*' -prune -o -type f -print | xargs -L1 sed -i -E 's/Copyright(.*) 2013 Digia/Copyright\1 2014 Digia/g' Manually patched files: demos/spectrum/3rdparty/fftreal/fftreal_wrapper.h demos/spectrum/3rdparty/fftreal/fftreal_wrapper.cpp src/3rdparty/s60/eiksoftkeyimage.h tools/qdoc3/test/qt-project.qdocconf tests/auto/qsharedpointer/nontracked.h tests/auto/qsharedpointer/nontracked.cpp Change-Id: I3f9074923b4d6bd4666258ab04f01476cc6e901c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Sergio Ahumada <sahumada@blackberry.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-131-1/+1
| | | | | | Change-Id: I52bf8ef0447b701b4ebf7d7d240013a72adb9425 Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-291-24/+24
| | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: I280c0a575987d1770e354b4948f1d4d767d711ea Reviewed-by: Simo Fält <simo.falt@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Update contact information in license headers.Sergio Ahumada2012-08-011-2/+2
| | | | | | | | | | | | | - Replace Nokia contact email address with Qt Project website. - Remove "All rights reserved" line from license headers. As in the past, to avoid rewriting various autotests that contain line-number information, an extra blank line has been inserted at the end of the license text to ensure that this commit does not change the total number of lines in the license header. Change-Id: Ie7ba62011752fcb149b99b26317c54f2a0cfa931 Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
* Update year in Nokia copyright messages.Jason McDonald2012-01-111-1/+1
| | | | | | | | | Simple search and replace. This commit doesn't touch 3rd-party files, nor translations (where the change is not so simple and will be handled in a separate commit). Change-Id: I4e48513b8078a44a8cd272326685b25338890148 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update licenseheader text in source files for qt4.8Jyri Tahtela2011-05-131-17/+17
| | | | | | | Updated version of LGPL and FDL licenseheaders. Apply release phase licenseheaders for all source files. Reviewed-by: Trust Me
* Handle uppercase 'E' when parsing numbers in SVGs.Kim Motoyoshi Kalland2011-04-201-1/+1
| | | | | Task-number: QT-4881 Reviewed-by: Samuel
* Update copyright year to 2011.Jason McDonald2011-01-101-1/+1
| | | | Reviewed-by: Trust Me
* Fixed parsing of SVGs with absolute font sizes.Kim Motoyoshi Kalland2010-09-301-1/+32
| | | | | Task-number: QTBUG-14070 Reviewed-by: Gunnar
* Fix static build on Windows with MinGW.Mark Brand2010-08-301-1/+1
| | | | | | | Q_DECL_IMPORT is still __declspec(dllimport), which is unsuitable for static code. Reviewed-by: Thiago Macieira <thiago.macieira@nokia.com>
* Null pointer checkPaul Olav Tvete2010-04-281-1/+1
| | | | | | Fixes crash for certain SVGs Reviewed-by: Kim
* Fixed assert failure when trying to load invalid SVG file.Kim Motoyoshi Kalland2010-04-201-1/+8
| | | | | Task-number: QTBUG-10022 Reviewed-by: Trond
* Merge remote branch 'origin/4.6' into qt-4.7-from-4.6Olivier Goffart2010-04-161-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty/webkit/VERSION src/3rdparty/webkit/WebCore/ChangeLog src/3rdparty/webkit/WebCore/page/FrameView.cpp src/3rdparty/webkit/WebCore/rendering/RenderWidget.cpp src/3rdparty/webkit/WebKit/qt/symbian/eabi/QtWebKitu.def src/s60installs/bwins/QtCoreu.def src/s60installs/bwins/QtGuiu.def src/s60installs/bwins/QtNetworku.def src/s60installs/eabi/QtGuiu.def tests/auto/qscriptextqobject/tst_qscriptextqobject.cpp
| * Symbol visibility fixes for RVCT4 on SymbianIain2010-04-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | RVCT 4 is far more strict with regards to symbol visiblity that RVCT 2.2, and will hide symbols unless all references have default visibility in the object files. Update the various places in Qt code where the symbol visibility was set incorrectly for DLL-based platforms (those that use __declspec(dllimport) and (dllexport). Note: QtWebkit and QtScript are fixed in different commits. Task-number: QTBUG-9903 Reviewed-by: Jason Barron
* | Fixed rounded SVG rectangles when 'rx' or 'ry' is 0.Kim Motoyoshi Kalland2010-03-111-2/+2
|/ | | | | Task-number: QTBUG-8264 Reviewed-by: Trond
* Update copyright year to 2010Jason McDonald2010-01-061-1/+1
| | | | Reviewed-by: Trust Me
* Merge branch '4.5' into 4.6-stagingThiago Macieira2009-12-181-16/+4
|\
| * Fixed crash when parsing invalid polygons in svgs.Kim Motoyoshi Kalland2009-12-181-16/+4
| | | | | | | | | | | | | | | | | | | | Since a 2D point consists of two coordinates, it was assumed that polygons and polylines were described with an even number of coordinates. When the number of coordinates was odd, the program would read out of bounds and cause an assert failure. Task-number: QTBUG-6899 Reviewed-by: Gunnar
| * Update license headers again.Jason McDonald2009-09-081-4/+4
| | | | | | | | Reviewed-by: Trust Me
* | Fixed parsing of svg paths.Kim Motoyoshi Kalland2009-12-171-4/+4
| | | | | | | | | | | | | | | | Commit 928ee705 introduced a bug which affected paths with relative offsets. Task-number: QTBUG-6867 Reviewed-by: Trond
* | qreal-izationAleksandar Sasha Babic2009-12-151-4/+4
| | | | | | | | | | | | | | | | | | Using math wrapper functions instead direct call. This gives us top-level control to what (single/double) precision we are effectively using. Task-number: QTBUG-4894 Reviewed-by: janarve Reviewed-by: Kim Motoyoshi Kalland
* | Fixed inheritence of whitespace mode in QtSvg.Kim Motoyoshi Kalland2009-10-051-9/+5
| | | | | | | | | | Task-number: QTBUG-4587 Reviewed-by: Tor Arne
* | Fix warnings on mingwThierry Bastian2009-10-011-0/+2
| | | | | | | | Reviewed-by: trust me
* | Fixed gradient referencing in SVGs.Kim Motoyoshi Kalland2009-09-141-52/+42
| | | | | | | | | | | | | | | | An SVG element can now reference a gradient or solid-color defined anywhere in the same SVG file. Task-number: 245602 Reviewed-by: Trond
* | Fixed white-space handling in the SVG module.Kim Motoyoshi Kalland2009-09-101-10/+13
| | | | | | | | | | | | | | | | | | When parsing lists, only space characters were treated as white-space. Now, carrige returns, line feeds and tabs are also treated as white- space as described in the SVG Tiny 1.2 specification. Task-number: 260799 Reviewed-by: Tor Arne
* | Fixed handling of stop-color="currentColor" in the SVG module.Kim Motoyoshi Kalland2009-09-101-14/+29
| | | | | | | | | | | | | | The 'color' attribute is now explicitly parsed for gradient nodes. Task-number: 260921 Reviewed-by: Trond
* | Merge branch '4.6' of git@scm.dev.troll.no:qt/qt into 4.6Janne Anttila2009-09-091-4/+4
|\ \
| * | Update license headers again.Jason McDonald2009-09-091-4/+4
| | | | | | | | | | | | Reviewed-by: Trust Me
* | | Fixes for compiler warnings reported by RVCTJanne Anttila2009-09-091-2/+1
|/ / | | | | | | | | Task-number: 241223 Reviewed-by: Janne Koskinen
* | Fixed resolving colors of the form "rgb(r,g,b)" in SVGs.Kim Motoyoshi Kalland2009-09-071-10/+13
| | | | | | | | | | | | | | | | | | The bug was introduced by 13bcc92274d52fa6df2d636c78cf6ea457d670aa. Instead of comparing only the beginning of a string with "rgb(", a full string compare was used. I also added some error handling to avoid crashing on noncompliant SVG files. Reviewed-by: Trond
* | Unbreak static compile (due to symbol conflicts).Ariya Hidayat2009-09-031-21/+21
| | | | | | | | | | | | | | Rename the hex-to-RGB routines to avoid conflicts with the same functions in QtGui. We do not really want to export this function. Beside, we want to clean-up and simplify the case for #rrggbb only (the most common one for SVG).
* | Prospective build fix for SVG parsing.Ariya Hidayat2009-09-021-1/+71
| | | | | | | | | | Unfortunately, qt_get_hex_rgb() is in QtGui (qcolor_p to be exact). Hence, we need to duplicate the implementation for QtSvg.
* | Speed-up id look-up for SVG node.Ariya Hidayat2009-09-021-10/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | Since we are iterating all the XML attributes, we find and locate the id while we are inside the loop. Thus, no need to retrieve the id via QXmlStreamAttributes::value(). Also, get rid of someId(QSvgAttributes) function and use the 'id' member variable directly. Loading tiger.svg (tests/benchmarks/qsvgrenderer) enjoys 1.2% speed-up. Reviewed-by: Kim
* | Faster SVG color parsing by tackling the #rrggbb color early.Ariya Hidayat2009-09-021-31/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | If the color starts with '#', let's parse it ourselves rather than waiting for the (fall-back) QColor-from-QString which even requires us to create a QString out of the QStringRef. All widely used illustration programs output SVG with #rrggbb format to specify the color. Loading tiger.svg (tests/benchmarks/qsvgrenderer) enjoys 2.4% speed-up. Reviewed-by: Kim
* | Minor speed-up when parsing SVG color.Ariya Hidayat2009-09-021-20/+34
| | | | | | | | | | | | Loading tiger.svg (tests/benchmarks/qsvgrenderer) enjoys 1% speed-up. Reviewed-by: Kim
* | Optimize SVG color decoding.Ariya Hidayat2009-09-021-19/+22
| | | | | | | | | | | | | | We try to use QStringRef as much as possible. Loading tiger.svg (tests/benchmarks/qsvgrenderer) enjoys 1.2% speed-up. Reviewed-by: Kim
* | Use QStringRef when parsing SVG color opacity.Ariya Hidayat2009-09-021-7/+5
| | | | | | | | Reviewed-by: Kim
* | Simplify SVG color parsing when the color is opaque.Ariya Hidayat2009-09-021-3/+3
| | | | | | | | Reviewed-by: Kim
* | Speed-up parsing of SVG path data.Ariya Hidayat2009-09-011-117/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of using operations that shuffle the array of numbers, just use pointer to iterate the numbers. This reduced the amount of memory operations during the parsing. In addition, parse the numbers to QVarLengthArray instead of QVector. This works well because usually a path element is typically followed by a short list of numbers. Loading tiger.svg (tests/benchmarks/qsvgrenderer) is now 8% faster, mostly due to the time spent in parsePathDataFast is reduced from 26.1 millions instructions to just 20.5 millions (27% speed-up). Reviewed-by: Kim
* | Use QStringRef when parsing SVG transformation matrix.Ariya Hidayat2009-09-011-8/+31
| | | | | | | | | | | | | | | | There is really no need to use QString for parsing the matrix, hence use QStringRef. In a complex SVG, this cuts significantly the time spent in parseTransform(). Reviewed-by: Kim
* | Minor improvement when parsing matrix transformation in SVG.Ariya Hidayat2009-08-311-1/+24
| | | | | | | | | | | | | | Create a specialized version of numbers parsing that works on a short QVarLengthArray since a transformation matrix has at most 6 elements. Reviewed-by: Kim
* | Speed-up floating-point decoding for SVG parsing.Ariya Hidayat2009-08-311-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | Instead of comparing the character to '0' and '9', use bit fiddling to detect that the character is a digit between '0' and '9'. Loading tiger.svg (tests/benchmarks/qsvgrenderer) is now 10% faster, going down from 85.3 millions instructions to 77.2 millions. Mostly this is due 46% speed-up in parseNumbersList() function, from 26.9 millions instructions to just 18.4 millions. Reviewed-by: Kim
* | Faster cut-off when SVG "display" attribute is not explicitly set.Ariya Hidayat2009-08-311-2/+3
| | | | | | | | Reviewed-by: Kim
* | Speed-up parseCoreNode() for SVG parsing.Ariya Hidayat2009-08-311-15/+37
| | | | | | | | | | | | | | | | Instead of doing an attribute look-up via QXmlAttributes::value(), we just iterate by ourselves. Thus, we need to carry out the iteration and comparison only once, instead of every call to the said value(). Reviewed-by: Kim
* | Fix wrong checks in commit fd8ced2f.Ariya Hidayat2009-08-311-16/+16
| | | | | | | | | | We should use the newly create QStringRef, after all that is the idea of the optimization.
* | Faster cut-off when SVG composition op is not explicitly set.Ariya Hidayat2009-08-311-2/+3
| | | | | | | | Reviewed-by: Kim
* | Speed-up SVG font attributes parsingAriya Hidayat2009-08-311-33/+26
| | | | | | | | | | | | Use QStringRef operations as much as possible. Reviewed-by: Kim
* | Group the stroke attributes for 3.5% speed-up in QSvgAttributes.Ariya Hidayat2009-08-311-32/+38
| | | | | | | | Reviewed-by: Kim
* | Use QStringRef in parseVisibility for SVG parsing.Ariya Hidayat2009-08-311-3/+2
| | | | | | | | Reviewed-by: Kim