#

API Docs for: 3.10.3
Show: Inherited Protected Private Deprecated

# File: graphics/js/VMLEllipse.js

    /**
     * <a href="http://www.w3.org/TR/NOTE-VML">VML</a> implementation of the <a href="Ellipse.html">`Ellipse`</a> class.
     * `VMLEllipse` is not intended to be used directly. Instead, use the <a href="Ellipse.html">`Ellipse`</a> class.
     * If the browser lacks <a href="http://www.w3.org/TR/SVG/">SVG</a> and <a href="http://www.w3.org/TR/html5/the-canvas-element.html">Canvas</a>
     * capabilities, the <a href="Ellipse.html">`Ellipse`</a> class will point to the `VMLEllipse` class.
     *
     * @module graphics
     * @class VMLEllipse
     * @constructor
     */
    VMLEllipse = function()
    {
    	VMLEllipse.superclass.constructor.apply(this, arguments);
    };

    VMLEllipse.NAME = "ellipse";

    Y.extend(VMLEllipse, Y.VMLShape, {
    	/**
    	 * Indicates the type of shape
    	 *
    	 * @property _type
    	 * @type String
         * @private
    	 */
    	_type: "oval"
    });
    VMLEllipse.ATTRS = Y.merge(Y.VMLShape.ATTRS, {
    	/**
    	 * Horizontal radius for the ellipse.
    	 *
    	 * @config xRadius
    	 * @type Number
    	 */
    	xRadius: {
    		lazyAdd: false,

    		getter: function()
    		{
    			var val = this.get("width");
    			val = Math.round((val/2) * 100)/100;
    			return val;
    		},

    		setter: function(val)
    		{
    			var w = val * 2;
    			this.set("width", w);
    			return val;
    		}
    	},

    	/**
    	 * Vertical radius for the ellipse.
    	 *
    	 * @config yRadius
    	 * @type Number
    	 * @readOnly
    	 */
    	yRadius: {
    		lazyAdd: false,

    		getter: function()
    		{
    			var val = this.get("height");
    			val = Math.round((val/2) * 100)/100;
    			return val;
    		},

    		setter: function(val)
    		{
    			var h = val * 2;
    			this.set("height", h);
    			return val;
    		}
    	}
    });
    Y.VMLEllipse = VMLEllipse;