12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- jvm.VMLShapeElement = function(name, config){
- jvm.VMLShapeElement.parentClass.call(this, name, config);
- this.fillElement = new jvm.VMLElement('fill');
- this.strokeElement = new jvm.VMLElement('stroke');
- this.node.appendChild(this.fillElement.node);
- this.node.appendChild(this.strokeElement.node);
- this.node.stroked = false;
- jvm.AbstractShapeElement.apply(this, arguments);
- };
- jvm.inherits(jvm.VMLShapeElement, jvm.VMLElement);
- jvm.mixin(jvm.VMLShapeElement, jvm.AbstractShapeElement);
- jvm.VMLShapeElement.prototype.applyAttr = function(attr, value){
- switch (attr) {
- case 'fill':
- this.node.fillcolor = value;
- break;
- case 'fill-opacity':
- this.fillElement.node.opacity = Math.round(value*100)+'%';
- break;
- case 'stroke':
- if (value === 'none') {
- this.node.stroked = false;
- } else {
- this.node.stroked = true;
- }
- this.node.strokecolor = value;
- break;
- case 'stroke-opacity':
- this.strokeElement.node.opacity = Math.round(value*100)+'%';
- break;
- case 'stroke-width':
- if (parseInt(value, 10) === 0) {
- this.node.stroked = false;
- } else {
- this.node.stroked = true;
- }
- this.node.strokeweight = value;
- break;
- case 'd':
- this.node.path = jvm.VMLPathElement.pathSvgToVml(value);
- break;
- default:
- jvm.VMLShapeElement.parentClass.prototype.applyAttr.apply(this, arguments);
- }
- };
|