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

View File

@@ -309,23 +309,21 @@ OpenLayers.Renderer.VML = OpenLayers.Class(OpenLayers.Renderer.Elements, {
}
// stroke
if (options.isStroked) {
node.strokecolor = style.strokeColor;
node.strokeweight = style.strokeWidth + "px";
} else {
node.stroked = false;
}
var strokes = node.getElementsByTagName("stroke");
var stroke = (strokes.length == 0) ? null : strokes[0];
if (!options.isStroked) {
node.stroked = false;
if (stroke) {
node.removeChild(stroke);
stroke.on = false;
}
} else {
if (!stroke) {
stroke = this.createNode('olv:stroke', node.id + "_stroke");
node.appendChild(stroke);
}
stroke.on = true;
stroke.color = style.strokeColor;
stroke.weight = style.strokeWidth + "px";
stroke.opacity = style.strokeOpacity;
stroke.endcap = style.strokeLinecap == 'butt' ? 'flat' :
(style.strokeLinecap || 'round');