deweese 2003/07/23 02:46:14 Modified: test-resources/org/apache/batik/test interactiveSamples.xml Added: samples/tests/spec/interactivity pointerEvents.svg test-references/samples/tests/spec/interactivity pointerEvents.png Log: New test of pointer events. Revision Changes Path 1.1 xml-batik/samples/tests/spec/interactivity/pointerEvents.svg Index: pointerEvents.svg =================================================================== <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> <!-- ====================================================================== --> <!-- Copyright (C) The Apache Software Foundation. All rights reserved. --> <!-- --> <!-- This software is published under the terms of the Apache Software --> <!-- License version 1.1, a copy of which has been included with this --> <!-- distribution in the LICENSE file. --> <!-- ====================================================================== --> <!-- ====================================================================== --> <!-- Tests support for pointer-events. --> <!-- --> <!-- @author [EMAIL PROTECTED] --> <!-- @version $Id: pointerEvents.svg,v 1.1 2003/07/23 09:46:14 deweese Exp $ --> <!-- ====================================================================== --> <?xml-stylesheet type="text/css" href="../../resources/style/test.css" ?> <svg id="svg-root" width="450" height="500" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" > <title id="test-title">Test 'pointer-events' property</title> <text x="50%" y="30" class="title">Test 'pointer-events' property</text> <script type="text/ecmascript"><![CDATA[ function getFillFill(e) { var g = e.parentNode; var lc = g.lastChild; while (lc) { if (lc.nodeName == "rect") break; lc = lc.previousSibling; } return lc; } function getFillStroke(e) { var f = getFillFill(e); if (f) f = f.previousSibling; while (f) { if (f.nodeName == "rect") break; f = f.previousSibling; } return f; } function getStrokeFill(e) { var f = getFillStroke(e); if (f) f = f.previousSibling; while (f) { if (f.nodeName == "rect") break; f = f.previousSibling; } return f; } function getStrokeStroke(e) { var f = getStrokeFill(e); if (f) f = f.previousSibling; while (f) { if (f.nodeName == "rect") break; f = f.previousSibling; } return f; } function setFillFill(evt, color) { var f = getFillFill(evt.target); f.setAttribute("fill", color); evt.stopPropagation(); } function setFillStroke(evt, color) { var f = getFillStroke(evt.target); f.setAttribute("fill", color); evt.stopPropagation(); } function setStrokeStroke(evt, color) { var f = getStrokeStroke(evt.target); f.setAttribute("fill", color); evt.stopPropagation(); } function setStrokeFill(evt, color) { var f = getStrokeFill(evt.target); f.setAttribute("fill", color); evt.stopPropagation(); } function onDone() { try { regardTestInstance.scriptDone(); } catch (e) { alert("This button only works when run in the regard framework"); } } function regardStart () { document.getElementById("done").setAttribute("visibility", "visible"); } ]]></script> <g id="done" transform="translate(380, 10)" cursor="pointer" onclick="onDone()" visibility="hidden" > <rect rx="5" ry="5" width="60" height="25" fill="#EEE" stroke="#000" /> <text x="30" y="18" font-size="14" font-weight="bold" text-anchor="middle">Done</text> </g> <g id="content" transform="translate(-5,-5)"> <g id="painted" pointer-events="painted" transform="translate(0,50)"> <rect x="10" y="0" width="440" height="50" fill="#DDD" stroke="#000"/> <line x1="100" y1="0" x2="100" y2="50" stroke="#000" /> <line x1="170" y1="0" x2="170" y2="50" stroke="#000" /> <line x1="240" y1="0" x2="240" y2="50" stroke="#000" /> <line x1="310" y1="0" x2="310" y2="50" stroke="#000" /> <line x1="380" y1="0" x2="380" y2="50" stroke="#000" /> <text x="20" y="30">Painted</text> <g transform="translate(100,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(170,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(240,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(310,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(380,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> </g> <g id="fill" pointer-events="fill" transform="translate(0,100)"> <rect x="10" y="0" width="440" height="50" fill="#CCC" stroke="#000"/> <line x1="100" y1="0" x2="100" y2="50" stroke="#000" /> <line x1="170" y1="0" x2="170" y2="50" stroke="#000" /> <line x1="240" y1="0" x2="240" y2="50" stroke="#000" /> <line x1="310" y1="0" x2="310" y2="50" stroke="#000" /> <line x1="380" y1="0" x2="380" y2="50" stroke="#000" /> <text x="20" y="30">Fill</text> <g transform="translate(100,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(170,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(240,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(310,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(380,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> </g> <g id="stroke" pointer-events="stroke" transform="translate(0,150)"> <rect x="10" y="0" width="440" height="50" fill="#DDD" stroke="#000"/> <line x1="100" y1="0" x2="100" y2="50" stroke="#000" /> <line x1="170" y1="0" x2="170" y2="50" stroke="#000" /> <line x1="240" y1="0" x2="240" y2="50" stroke="#000" /> <line x1="310" y1="0" x2="310" y2="50" stroke="#000" /> <line x1="380" y1="0" x2="380" y2="50" stroke="#000" /> <text x="20" y="30">Stroke</text> <g transform="translate(100,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(170,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(240,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(310,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(380,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> </g> <g id="all" pointer-events="all" transform="translate(0,200)"> <rect x="10" y="0" width="440" height="50" fill="#CCC" stroke="#000"/> <line x1="100" y1="0" x2="100" y2="50" stroke="#000" /> <line x1="170" y1="0" x2="170" y2="50" stroke="#000" /> <line x1="240" y1="0" x2="240" y2="50" stroke="#000" /> <line x1="310" y1="0" x2="310" y2="50" stroke="#000" /> <line x1="380" y1="0" x2="380" y2="50" stroke="#000" /> <text x="20" y="30">All</text> <g transform="translate(100,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(170,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(240,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(310,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(380,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> </g> <g id="none" pointer-events="none" transform="translate(0,250)"> <rect x="10" y="0" width="440" height="50" fill="#DDD" stroke="#000"/> <line x1="100" y1="0" x2="100" y2="50" stroke="#000" /> <line x1="170" y1="0" x2="170" y2="50" stroke="#000" /> <line x1="240" y1="0" x2="240" y2="50" stroke="#000" /> <line x1="310" y1="0" x2="310" y2="50" stroke="#000" /> <line x1="380" y1="0" x2="380" y2="50" stroke="#000" /> <text x="20" y="30">None</text> <g transform="translate(100,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(170,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(240,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(310,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(380,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> </g> <g id="visible" pointer-events="visible" transform="translate(0,300)"> <rect x="10" y="0" width="440" height="50" fill="#CCC" stroke="#000"/> <line x1="100" y1="0" x2="100" y2="50" stroke="#000" /> <line x1="170" y1="0" x2="170" y2="50" stroke="#000" /> <line x1="240" y1="0" x2="240" y2="50" stroke="#000" /> <line x1="310" y1="0" x2="310" y2="50" stroke="#000" /> <line x1="380" y1="0" x2="380" y2="50" stroke="#000" /> <text x="20" y="30">Visible</text> <g transform="translate(100,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(170,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(240,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(310,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(380,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> </g> <g id="visiblePainted" pointer-events="visiblePainted" transform="translate(0,350)"> <rect x="10" y="0" width="440" height="50" fill="#DDD" stroke="#000"/> <line x1="100" y1="0" x2="100" y2="50" stroke="#000" /> <line x1="170" y1="0" x2="170" y2="50" stroke="#000" /> <line x1="240" y1="0" x2="240" y2="50" stroke="#000" /> <line x1="310" y1="0" x2="310" y2="50" stroke="#000" /> <line x1="380" y1="0" x2="380" y2="50" stroke="#000" /> <text x="20" y="30">VisiblePainted</text> <g transform="translate(100,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(170,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(240,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(310,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(380,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> </g> <g id="visibleFill" pointer-events="visibleFill" transform="translate(0,400)"> <rect x="10" y="0" width="440" height="50" fill="#CCC" stroke="#000"/> <line x1="100" y1="0" x2="100" y2="50" stroke="#000" /> <line x1="170" y1="0" x2="170" y2="50" stroke="#000" /> <line x1="240" y1="0" x2="240" y2="50" stroke="#000" /> <line x1="310" y1="0" x2="310" y2="50" stroke="#000" /> <line x1="380" y1="0" x2="380" y2="50" stroke="#000" /> <text x="20" y="30">VisibleFill</text> <g transform="translate(100,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(170,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(240,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(310,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(380,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> </g> <g id="visibleStroke" pointer-events="visibleStroke" transform="translate(0,450)"> <rect x="10" y="0" width="440" height="50" fill="#DDD" stroke="#000"/> <line x1="100" y1="0" x2="100" y2="50" stroke="#000" /> <line x1="170" y1="0" x2="170" y2="50" stroke="#000" /> <line x1="240" y1="0" x2="240" y2="50" stroke="#000" /> <line x1="310" y1="0" x2="310" y2="50" stroke="#000" /> <line x1="380" y1="0" x2="380" y2="50" stroke="#000" /> <text x="20" y="30">VisibleStroke</text> <g transform="translate(100,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(170,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(240,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="black" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(310,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> <g transform="translate(380,0)"> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setStrokeStroke(evt,'crimson')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setStrokeStroke(evt,'gold')"/> <ellipse cx="16" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setStrokeFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="0" fill="none" stroke="none" pointer-events="fill" onmouseover="setFillFill(evt,'crimson')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="white" stroke="black" visibility="hidden" onmouseover="setFillFill(evt,'gold')"/> <ellipse cx="44" cy="25" rx="10" ry="17.5" stroke-width="5" fill="none" stroke="none" pointer-events="stroke" onmouseover="setFillStroke(evt,'crimson')"/> <rect x="60" y="4" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="14" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="26" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> <rect x="60" y="36" width="10" height="10" stroke-width="1" stroke="#000" fill="#888"/> </g> </g> </g> </svg> 1.1 xml-batik/test-references/samples/tests/spec/interactivity/pointerEvents.png <<Binary file>> 1.6 +2 -1 xml-batik/test-resources/org/apache/batik/test/interactiveSamples.xml Index: interactiveSamples.xml =================================================================== RCS file: /home/cvs/xml-batik/test-resources/org/apache/batik/test/interactiveSamples.xml,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- interactiveSamples.xml 10 Jul 2003 14:25:49 -0000 1.5 +++ interactiveSamples.xml 23 Jul 2003 09:46:14 -0000 1.6 @@ -23,6 +23,7 @@ <test id="samples/tests/spec/interactivity/keyEvents.svg" > <property name="Validating" class="java.lang.Boolean" value="false" /> </test> + <test id="samples/tests/spec/interactivity/pointerEvents.svg" /> </testGroup> <testGroup id="tests.spec.scripting" name="Interactive Scripting Tests"
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]