Make VML behave when removing previously added stroke symbolizers. r=tschaub (closes #2784)

git-svn-id: http://svn.openlayers.org/trunk/openlayers@10659 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
ahocevar
2010-08-20 23:56:34 +00:00
parent f37c9f8aef
commit 23137091fc
+5 -7
View File
@@ -309,23 +309,21 @@ OpenLayers.Renderer.VML = OpenLayers.Class(OpenLayers.Renderer.Elements, {
} }
// stroke // stroke
if (options.isStroked) {
node.strokecolor = style.strokeColor;
node.strokeweight = style.strokeWidth + "px";
} else {
node.stroked = false;
}
var strokes = node.getElementsByTagName("stroke"); var strokes = node.getElementsByTagName("stroke");
var stroke = (strokes.length == 0) ? null : strokes[0]; var stroke = (strokes.length == 0) ? null : strokes[0];
if (!options.isStroked) { if (!options.isStroked) {
node.stroked = false;
if (stroke) { if (stroke) {
node.removeChild(stroke); stroke.on = false;
} }
} else { } else {
if (!stroke) { if (!stroke) {
stroke = this.createNode('olv:stroke', node.id + "_stroke"); stroke = this.createNode('olv:stroke', node.id + "_stroke");
node.appendChild(stroke); node.appendChild(stroke);
} }
stroke.on = true;
stroke.color = style.strokeColor;
stroke.weight = style.strokeWidth + "px";
stroke.opacity = style.strokeOpacity; stroke.opacity = style.strokeOpacity;
stroke.endcap = style.strokeLinecap == 'butt' ? 'flat' : stroke.endcap = style.strokeLinecap == 'butt' ? 'flat' :
(style.strokeLinecap || 'round'); (style.strokeLinecap || 'round');