/* * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. * Copyright (C) 2012, 2013 Adobe Systems Incorporated. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER "AS IS" AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ interface [ V8EnabledAtRuntime=canvasPath, Constructor, Constructor(in DOMPath path), #if defined(ENABLE_SVG) && ENABLE_SVG Constructor(in DOMString text), #endif Conditional=CANVAS_PATH, InterfaceName=Path ] DOMPath { // FIXME: These methods should be shared with CanvasRenderingContext2D in the CanvasPathMethods interface. void closePath(); void moveTo(in [Optional=DefaultIsUndefined] float x, in [Optional=DefaultIsUndefined] float y); void lineTo(in [Optional=DefaultIsUndefined] float x, in [Optional=DefaultIsUndefined] float y); void quadraticCurveTo(in [Optional=DefaultIsUndefined] float cpx, in [Optional=DefaultIsUndefined] float cpy, in [Optional=DefaultIsUndefined] float x, in [Optional=DefaultIsUndefined] float y); void bezierCurveTo(in [Optional=DefaultIsUndefined] float cp1x, in [Optional=DefaultIsUndefined] float cp1y, in [Optional=DefaultIsUndefined] float cp2x, in [Optional=DefaultIsUndefined] float cp2y, in [Optional=DefaultIsUndefined] float x, in [Optional=DefaultIsUndefined] float y); void arcTo(in [Optional=DefaultIsUndefined] float x1, in [Optional=DefaultIsUndefined] float y1, in [Optional=DefaultIsUndefined] float x2, in [Optional=DefaultIsUndefined] float y2, in [Optional=DefaultIsUndefined] float radius) raises (DOMException); void rect(in [Optional=DefaultIsUndefined] float x, in [Optional=DefaultIsUndefined] float y, in [Optional=DefaultIsUndefined] float width, in [Optional=DefaultIsUndefined] float height); void arc(in [Optional=DefaultIsUndefined] float x, in [Optional=DefaultIsUndefined] float y, in [Optional=DefaultIsUndefined] float radius, in [Optional=DefaultIsUndefined] float startAngle, in [Optional=DefaultIsUndefined] float endAngle, in [Optional=DefaultIsUndefined] boolean anticlockwise) raises (DOMException); };