summaryrefslogtreecommitdiffstats
path: root/src/svg
Commit message (Collapse)AuthorAgeFilesLines
* 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>
* Fix the smallFont test failure for Mac and LinuxAndy Shaw2010-07-221-1/+1
| | | | Reviewed-by: Kim
* Ensure that font sizes that are > 0 and < 1 are still respectedAndy Shaw2010-07-211-1/+1
| | | | | | | | | | What was happening was that when a font size of 0.5 was used then it would end up being set to be point size 0. This now respects the setting used. Autotest is included in this patch for this case. Reviewed-by: Kim
* Consolidate zlib configuration redundancyMark Brand2010-07-021-8/+1
| | | | | Merge-request: 715 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Updated leading whitespace to make indentation more consistentConstantin Makshin2010-06-101-1/+1
| | | | | Merge-request: 2411 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Updated project files so it is now possible to use "-system-zlib" ↵Constantin Makshin2010-06-101-1/+3
| | | | | | | | | configuration option on Windows and Symbian platforms. Improved support of "-system-jpeg" "-system-mng" "-system-png" and "-system-tiff" configuration options on Windows (thanks to Mark Brand <mabrand@mabrand.nl>) Merge-request: 2411 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* doc: Fixed reference to setSize(), which is in QRectF.Martin Smith2010-05-311-2/+4
| | | | Task-number: QTBUG-10903
* 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
* | Fixed bounds calculation in QtSvg.Kim Motoyoshi Kalland2010-03-0810-226/+173
| | | | | | | | | | | | | | | | | | This commit fixes an auto-test failure after fixing QTBUG-8733. The calculated element bounds should now be much tighter and respect the width of non-cosmetic pens. Task-number: QTBUG-8733 Reviewed-by: Trond
* | Fixed vector-effect property output from QSvgGenerator.Kim Motoyoshi Kalland2010-03-081-16/+11
|/ | | | | | | | | The vector-effect property is not inherited by default, so it must be set on each item with a stroke. It is not sufficient to set it on G nodes. Task-number: QTBUG-8733 Reviewed-by: Trond
* doc: Added \since 4.6 to the properties.Martin Smith2010-02-231-1/+3
| | | | Task: QTBUG-8333
* Update copyright year to 2010Jason McDonald2010-01-0622-22/+22
| | | | 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-0822-88/+88
| | | | | | | | 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-152-6/+6
| | | | | | | | | | | | | | | | | | 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 handling of stroke-dashoffset in the SVG module.Kim Motoyoshi Kalland2009-11-091-1/+4
| | | | | | | | | | | | | | | | | | | | | | When stroke-dashoffset was set on a solid stroke (stroke-dasharray="none"), the path was not painted. QPen::setDashOffset() automatically sets the pen's style to CustomDashLine, so if there is no dash array, nothing is drawn. The fix is to avoid calling QPen::setDashOffset() when the pen is solid. Task-number: QTBUG-5609 Reviewed-by: Tor Arne
* | Fixed the SVG paint engine to preserve whitespace when drawing text.Kim Motoyoshi Kalland2009-10-201-0/+1
| | | | | | | | | | | | | | | | Added xml:space="preserve" to the output text tag. This attribute tells the SVG user agent not to strip away excess whitespace in the text element. Reviewed-by: Trond
* | 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
* | doc: Fixed some qdoc errors.Martin Smith2009-09-151-3/+14
| |
* | Fixed gradient referencing in SVGs.Kim Motoyoshi Kalland2009-09-149-159/+135
| | | | | | | | | | | | | | | | 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-102-14/+31
| | | | | | | | | | | | | | The 'color' attribute is now explicitly parsed for gradient nodes. Task-number: 260921 Reviewed-by: Trond
* | Make QGraphicsSvgItem a QGraphicsObject.Alexis Menard2009-09-092-15/+11
| | | | | | | | | | | | | | | | | | | | This item was inheriting from QObject and QGraphicsItem so there is no point to not make it a QGraphicsObject. I have added some properties that was specific to this class, i.e. elementId. Reviewed-by: ogoffart Reviewed-by: andreas Reviewed-by: bnilsen
* | Fixed text positioning in SVGs when using SVG fonts.Kim Motoyoshi Kalland2009-09-091-1/+1
| | | | | | | | | | Task-number: 260920 Reviewed-by: Trustme
* | Merge branch '4.6' of git@scm.dev.troll.no:qt/qt into 4.6Janne Anttila2009-09-0922-88/+88
|\ \
| * | Update license headers again.Jason McDonald2009-09-0922-88/+88
| | | | | | | | | | | | Reviewed-by: Trust Me
* | | Fixes for compiler warnings reported by RVCTJanne Anttila2009-09-092-22/+9
|/ / | | | | | | | | 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).
* | fix warnings on mingwThierry Bastian2009-09-021-0/+1
| |
* | 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