+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) --><svg viewBox="100 200 550 500" height="841.88976pt" id="svg1" inkscape:version="0.40+cvs" sodipodi:docbase="C:\Documents and Settings\Jon Phillips\My Documents\projects\clipart-project\submissions" sodipodi:docname="heart-left-highlight.svg" sodipodi:version="0.32" width="595.27559pt" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:svg="http://www.w3.org/2000/svg">
-<metadata>
-<rdf:RDF xmlns:cc="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
-<cc:Work rdf:about="">
-<dc:title>Heart Left-Highlight</dc:title>
-<dc:description>This is a normal valentines day heart.</dc:description>
-<dc:subject>
-<rdf:Bag>
-<rdf:li>holiday</rdf:li>
-<rdf:li>valentines</rdf:li>
-<rdf:li></rdf:li>
-<rdf:li>valentine</rdf:li>
-<rdf:li>hash(0x8a091c0)</rdf:li>
-<rdf:li>hash(0x8a0916c)</rdf:li>
-<rdf:li>signs_and_symbols</rdf:li>
-<rdf:li>hash(0x8a091f0)</rdf:li>
-<rdf:li>day</rdf:li>
-</rdf:Bag>
-</dc:subject>
-<dc:publisher>
-<cc:Agent rdf:about="http://www.openclipart.org">
-<dc:title>Jon Phillips</dc:title>
-</cc:Agent>
-</dc:publisher>
-<dc:creator>
-<cc:Agent>
-<dc:title>Jon Phillips</dc:title>
-</cc:Agent>
-</dc:creator>
-<dc:rights>
-<cc:Agent>
-<dc:title>Jon Phillips</dc:title>
-</cc:Agent>
-</dc:rights>
-<dc:date></dc:date>
-<dc:format>image/svg+xml</dc:format>
-<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
-<cc:license rdf:resource="http://web.resource.org/cc/PublicDomain"/>
-<dc:language>en</dc:language>
-</cc:Work>
-<cc:License rdf:about="http://web.resource.org/cc/PublicDomain">
-<cc:permits rdf:resource="http://web.resource.org/cc/Reproduction"/>
-<cc:permits rdf:resource="http://web.resource.org/cc/Distribution"/>
-<cc:permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/>
-</cc:License>
-</rdf:RDF>
-</metadata>
-<defs id="defs3"/>
-<sodipodi:namedview bordercolor="#666666" borderopacity="1.0" id="base" inkscape:current-layer="layer1" inkscape:cx="549.40674" inkscape:cy="596.00159" inkscape:document-units="px" inkscape:guide-bbox="true" inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:window-height="615" inkscape:window-width="866" inkscape:window-x="88" inkscape:window-y="116" inkscape:zoom="0.35000000" pagecolor="#ffffff" showguides="true"/>
-<g id="layer1" inkscape:groupmode="layer" inkscape:label="Layer 1">
-<path d="M 263.41570,235.14588 C 197.17570,235.14588 143.41575,288.90587 143.41575,355.14588 C 143.41575,489.90139 279.34890,525.23318 371.97820,658.45392 C 459.55244,526.05056 600.54070,485.59932 600.54070,355.14588 C 600.54070,288.90588 546.78080,235.14587 480.54070,235.14588 C 432.49280,235.14588 391.13910,263.51631 371.97820,304.33338 C 352.81740,263.51630 311.46370,235.14587 263.41570,235.14588 z " id="path7" sodipodi:nodetypes="ccccccc" style="fill:#e60000;fill-opacity:1.0000000;stroke:#000000;stroke-width:18.700001;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"/>
-<path d="M 265.00000,253.59375 C 207.04033,253.59375 160.00000,300.63407 160.00000,358.59375 C 160.00000,476.50415 278.91857,507.43251 359.96875,624.00000 C 366.52868,614.08205 220.00000,478.47309 220.00000,378.59375 C 220.00000,320.63407 267.04033,273.59375 325.00000,273.59375 C 325.50453,273.59375 325.99718,273.64912 326.50000,273.65625 C 309.22436,261.07286 288.00557,253.59374 265.00000,253.59375 z " id="path220" sodipodi:nodetypes="ccccccc" style="fill:#e6e6e6;fill-opacity:0.64556962;stroke:none;stroke-width:18.700001;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000"/>
-</g>
-</svg>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- version="1.0"
- width="40px"
- height="5px"
- id="svg2"
- sodipodi:version="0.32"
- inkscape:version="0.46"
- sodipodi:docname="test.svg"
- inkscape:output_extension="org.inkscape.output.svg.inkscape">
- <metadata
- id="metadata7">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <sodipodi:namedview
- inkscape:window-height="1005"
- inkscape:window-width="1280"
- inkscape:pageshadow="2"
- inkscape:pageopacity="0.0"
- guidetolerance="10.0"
- gridtolerance="10.0"
- objecttolerance="10.0"
- borderopacity="1.0"
- bordercolor="#666666"
- pagecolor="#ffffff"
- id="base"
- showgrid="false"
- inkscape:zoom="13.6"
- inkscape:cx="20"
- inkscape:cy="2.5"
- inkscape:window-x="-4"
- inkscape:window-y="-4"
- inkscape:current-layer="svg2" />
- <defs
- id="defs4">
- <inkscape:perspective
- sodipodi:type="inkscape:persp3d"
- inkscape:vp_x="0 : 2.5 : 1"
- inkscape:vp_y="0 : 1000 : 0"
- inkscape:vp_z="40 : 2.5 : 1"
- inkscape:persp3d-origin="20 : 1.6666667 : 1"
- id="perspective9" />
- </defs>
- <g
- id="layer1">
- <rect
- width="40px"
- height="5px"
- x="0px"
- y="0px"
- id="rect2393"
- style="fill:#ff0000" />
- </g>
- <rect
- style="fill:#000000"
- id="rect2382"
- width="2"
- height="2"
- x="19"
- y="1.5" />
-</svg>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 10, SVG Export Plug-In . SVG Version: 3.0.0 Build 76) --><svg enable-background="new 0 0 347 348" height="348" i:pageBounds="0 792 612 0" i:rulerOrigin="0 0" i:viewOrigin="131 567" overflow="visible" space="preserve" viewBox="-20 -20 387 388" width="347" xmlns="http://www.w3.org/2000/svg" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/" xmlns:graph="http://ns.adobe.com/Graphs/1.0/" xmlns:i="http://ns.adobe.com/AdobeIllustrator/10.0/" xmlns:x="http://ns.adobe.com/Extensibility/1.0/" xmlns:xlink="http://www.w3.org/1999/xlink">
-<metadata>
-<rdf:RDF xmlns:cc="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
-<cc:Work rdf:about="">
-<dc:title>Keep Tidy Inside</dc:title>
-<dc:description></dc:description>
-<dc:subject>
-<rdf:Bag>
-<rdf:li></rdf:li>
-<rdf:li>symbol</rdf:li>
-<rdf:li>bin</rdf:li>
-<rdf:li>signs_and_symbols</rdf:li>
-<rdf:li>clean</rdf:li>
-<rdf:li>rubish</rdf:li>
-<rdf:li>trash</rdf:li>
-<rdf:li>inside</rdf:li>
-<rdf:li>garbage</rdf:li>
-<rdf:li>sign</rdf:li>
-</rdf:Bag>
-</dc:subject>
-<dc:publisher>
-<cc:Agent rdf:about="http://www.openclipart.org">
-<dc:title>Martin Owens</dc:title>
-</cc:Agent>
-</dc:publisher>
-<dc:creator>
-<cc:Agent>
-<dc:title>Martin Owens</dc:title>
-</cc:Agent>
-</dc:creator>
-<dc:rights>
-<cc:Agent>
-<dc:title>Martin Owens</dc:title>
-</cc:Agent>
-</dc:rights>
-<dc:date></dc:date>
-<dc:format>image/svg+xml</dc:format>
-<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
-<cc:license rdf:resource="http://web.resource.org/cc/PublicDomain"/>
-<dc:language>en</dc:language>
-</cc:Work>
-<cc:License rdf:about="http://web.resource.org/cc/PublicDomain">
-<cc:permits rdf:resource="http://web.resource.org/cc/Reproduction"/>
-<cc:permits rdf:resource="http://web.resource.org/cc/Distribution"/>
-<cc:permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/>
-</cc:License>
-</rdf:RDF>
-</metadata>
-<g i:dimmedPercent="50" i:knockout="Off" i:layer="yes" i:rgbTrio="#4F008000FFFF" id="Layer_1">
-<path d="M347,174c0,96.098-77.679,174-173.5,174C77.679,348,0,270.098,0,174 C0,77.902,77.679,0,173.5,0C269.321,0,347,77.902,347,174z" fill="#10A040" i:knockout="Off"/>
-<path d="M238,53c0,13.807-11.864,25-26.5,25S185,66.807,185,53s11.864-25,26.5-25 S238,39.193,238,53z" fill="#FFFFFF" i:knockout="Off"/>
-<path d="M66,175c1.055,6.355,19.333,126.417,19.333,126.417h68.333 c0,0,14.105-122.524,14.333-126.417c6.224-0.622,6.667-13-2-13c-12.164,0-89.205-0.059-98,0S61.167,174.487,66,175z" fill="#FFFFFF" i:knockout="Off"/>
-<path d="M78,141c17.292-5.325,24.179-23.532,27-31c14.513,6.596,40.333,12.265,59,8 c3.683,19.419-28.043,19.31-23,37C132.577,145.705,89.404,167.292,78,141z" fill="#FFFFFF" i:knockout="Off"/>
-<path d="M103,82l139-1c-0.6,3.421,33.633,57.497,29,67c-4.089,0.418-67,5-67,5 c6.109-9.379-13-43-13-43L103,82z" fill="#FFFFFF" i:knockout="Off"/>
-<path d="M270,156l-66-3c0,0-23.565,143.355-24,145s1.855,2.536,3,1s51-82,51-82 s19.754,80.701,20,82s3.721,1.209,4,0S270,156,270,156z" fill="#FFFFFF" i:knockout="Off"/>
-</g>
-</svg>
void actualSize();
void actualSize2_data(); // test with 2 pixmaps with different aspect ratio
void actualSize2();
- void svgActualSize();
void isNull();
void swap();
void bestMatch();
void cacheKey();
void detach();
- void svg();
void addFile();
void availableSizes();
void name();
QCOMPARE(icon.pixmap(argument).size(), result);
}
-void tst_QIcon::svgActualSize()
-{
- if (!haveImageFormat("svg")) {
- QSKIP("SVG support is not available");
- }
-
- const QString prefix = QFileInfo(QFINDTESTDATA("icons")).absolutePath() + "/";
- QIcon icon(prefix + "rect.svg");
- QCOMPARE(icon.actualSize(QSize(16, 16)), QSize(16, 2));
- QCOMPARE(icon.pixmap(QSize(16, 16)).size(), QSize(16, 2));
-
- QPixmap p(16, 16);
- p.fill(Qt::cyan);
- icon.addPixmap(p);
-
- QCOMPARE(icon.actualSize(QSize(16, 16)), QSize(16, 16));
- QCOMPARE(icon.pixmap(QSize(16, 16)).size(), QSize(16, 16));
-
- QCOMPARE(icon.actualSize(QSize(16, 14)), QSize(16, 2));
- QCOMPARE(icon.pixmap(QSize(16, 14)).size(), QSize(16, 2));
-}
-
void tst_QIcon::isNull() {
// test default constructor
QIcon defaultConstructor;
QVERIFY(img1 == img2);
}
-void tst_QIcon::svg()
-{
- if (!haveImageFormat("svg")) {
- QSKIP("SVG support is not available");
- }
- QIcon icon1("heart.svg");
-
- QVERIFY(!icon1.pixmap(32).isNull());
- QImage img1 = icon1.pixmap(32).toImage();
- QVERIFY(!icon1.pixmap(32, QIcon::Disabled).isNull());
- QImage img2 = icon1.pixmap(32, QIcon::Disabled).toImage();
-
- icon1.addFile("trash.svg", QSize(), QIcon::Disabled);
- QVERIFY(!icon1.pixmap(32, QIcon::Disabled).isNull());
- QImage img3 = icon1.pixmap(32, QIcon::Disabled).toImage();
- QVERIFY(img3 != img2);
- QVERIFY(img3 != img1);
-
- QPixmap pm("image.png");
- icon1.addPixmap(pm, QIcon::Normal, QIcon::On);
- QVERIFY(!icon1.pixmap(128, QIcon::Normal, QIcon::On).isNull());
- QImage img4 = icon1.pixmap(128, QIcon::Normal, QIcon::On).toImage();
- QVERIFY(img4 != img3);
- QVERIFY(img4 != img2);
- QVERIFY(img4 != img1);
-
- QIcon icon2;
- icon2.addFile("heart.svg");
- QVERIFY(icon2.pixmap(57).toImage() == icon1.pixmap(57).toImage());
-
- QIcon icon3("trash.svg");
- icon3.addFile("heart.svg");
- QVERIFY(icon3.pixmap(57).toImage() == icon1.pixmap(57).toImage());
-
- QIcon icon4("heart.svg");
- icon4.addFile("image.png", QSize(), QIcon::Active);
- QVERIFY(!icon4.pixmap(32).isNull());
- QVERIFY(!icon4.pixmap(32, QIcon::Active).isNull());
- QVERIFY(icon4.pixmap(32).toImage() == img1);
- QIcon pmIcon(pm);
- QVERIFY(icon4.pixmap(pm.size(), QIcon::Active).toImage() == pmIcon.pixmap(pm.size(), QIcon::Active).toImage());
-
-#ifndef QT_NO_COMPRESS
- QIcon icon5("heart.svgz");
- QVERIFY(!icon5.pixmap(32).isNull());
-#endif
-}
-
void tst_QIcon::addFile()
{
QIcon icon;
QCOMPARE(availableSizes.at(0), QSize(16,16));
}
- if (haveImageFormat("svg")) {
- // checks that there are no availableSizes for scalable images.
- QIcon icon("heart.svg");
- QList<QSize> availableSizes = icon.availableSizes();
- QVERIFY(availableSizes.isEmpty());
- }
-
- if (haveImageFormat("svg")) {
- // even if an a scalable image contain added pixmaps,
- // availableSizes still should be empty.
- QIcon icon("heart.svg");
- icon.addFile("image.png", QSize(32,32));
- QList<QSize> availableSizes = icon.availableSizes();
- QVERIFY(availableSizes.isEmpty());
- }
-
{
// we try to load an icon from resources
QIcon icon(QLatin1String(":/trolltech/styles/commonstyle/images/standardbutton-open-16.png"));