View Javadoc

1   /**********************************************
2    * Copyright (C) 2010 Lukas Laag
3    * This file is part of lib-gwt-svg.
4    * 
5    * libgwtsvg is free software: you can redistribute it and/or modify
6    * it under the terms of the GNU Lesser General Public License as published by
7    * the Free Software Foundation, either version 3 of the License, or
8    * (at your option) any later version.
9    * 
10   * libgwtsvg is distributed in the hope that it will be useful,
11   * but WITHOUT ANY WARRANTY; without even the implied warranty of
12   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13   * GNU Lesser General Public License for more details.
14   * 
15   * You should have received a copy of the GNU Lesser General Public License
16   * along with libgwtsvg.  If not, see http://www.gnu.org/licenses/
17   **********************************************/
18  /*
19   * Copyright (c) 2004 World Wide Web Consortium,
20   *
21   * (Massachusetts Institute of Technology, European Research Consortium for
22   * Informatics and Mathematics, Keio University). All Rights Reserved. This
23   * work is distributed under the W3C(r) Software License [1] in the hope that
24   * it will be useful, but WITHOUT ANY WARRANTY; without even the implied
25   * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
26   *
27   * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
28   */
29  
30  package org.vectomatic.dom.svg;
31  
32  import com.google.gwt.core.client.JavaScriptObject;
33  
34  /**
35   * The {@link org.vectomatic.dom.svg.OMSVGPathSeg} interface is a base interface
36   * that corresponds to a single command within a path data specification.
37   */
38  public class OMSVGPathSeg extends JavaScriptObject {
39  /**
40   * The unit type is not one of predefined types. It is invalid to attempt
41   * to define a new value of this type or to attempt to switch an existingvalue
42   * to this type.
43   */
44    public static final short PATHSEG_UNKNOWN = 0;
45  /**
46   * Corresponds to a "closepath" (z) path data command.
47   */
48    public static final short PATHSEG_CLOSEPATH = 1;
49  /**
50   * Corresponds to a "absolute moveto" (M) path data command.
51   */
52    public static final short PATHSEG_MOVETO_ABS = 2;
53  /**
54   * Corresponds to a "relative moveto" (m) path data command.
55   */
56    public static final short PATHSEG_MOVETO_REL = 3;
57  /**
58   * Corresponds to a "absolute lineto" (L) path data command.
59   */
60    public static final short PATHSEG_LINETO_ABS = 4;
61  /**
62   * Corresponds to a "relative lineto" (l) path data command.
63   */
64    public static final short PATHSEG_LINETO_REL = 5;
65  /**
66   * Corresponds to a "absolute cubic Bézier curveto" (C) path data command.
67   */
68    public static final short PATHSEG_CURVETO_CUBIC_ABS = 6;
69  /**
70   * Corresponds to a "relative cubic Bézier curveto" (c) path data command.
71   */
72    public static final short PATHSEG_CURVETO_CUBIC_REL = 7;
73  /**
74   * Corresponds to a "absolute quadratic Bézier curveto" (Q) path data command.
75   */
76    public static final short PATHSEG_CURVETO_QUADRATIC_ABS = 8;
77  /**
78   * Corresponds to a "relative quadratic Bézier curveto" (q) path data command.
79   */
80    public static final short PATHSEG_CURVETO_QUADRATIC_REL = 9;
81  /**
82   * Corresponds to a "absolute arcto" (A) path data command.
83   */
84    public static final short PATHSEG_ARC_ABS = 10;
85  /**
86   * Corresponds to a "relative arcto" (a) path data command.
87   */
88    public static final short PATHSEG_ARC_REL = 11;
89  /**
90   * Corresponds to a "absolute horizontal lineto" (H) path data command.
91   */
92    public static final short PATHSEG_LINETO_HORIZONTAL_ABS = 12;
93  /**
94   * Corresponds to a "relative horizontal lineto" (h) path data command.
95   */
96    public static final short PATHSEG_LINETO_HORIZONTAL_REL = 13;
97  /**
98   * Corresponds to a "absolute vertical lineto" (V) path data command.
99   */
100   public static final short PATHSEG_LINETO_VERTICAL_ABS = 14;
101 /**
102  * Corresponds to a "relative vertical lineto" (v) path data command.
103  */
104   public static final short PATHSEG_LINETO_VERTICAL_REL = 15;
105 /**
106  * Corresponds to a "absolute smooth cubic curveto" (S) path data command.
107  */
108   public static final short PATHSEG_CURVETO_CUBIC_SMOOTH_ABS = 16;
109 /**
110  * Corresponds to a "relative smooth cubic curveto" (s) path data command.
111  */
112   public static final short PATHSEG_CURVETO_CUBIC_SMOOTH_REL = 17;
113 /**
114  * Corresponds to a "absolute smooth quadratic curveto" (T) path data command.
115  */
116   public static final short PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS = 18;
117 /**
118  * Corresponds to a "relative smooth quadratic curveto" (t) path data command.
119  */
120   public static final short PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL = 19;
121   protected OMSVGPathSeg() {
122   }
123 
124   // Implementation of the svg::SVGPathSeg W3C IDL interface
125   /**
126    * The type of the path segment as specified by one of the constants defined
127    * on this interface.
128    */
129   public final native short getPathSegType() /*-{
130     return this.pathSegType;
131   }-*/;
132   /**
133    * The type of the path segment, specified by the corresponding one character
134    * command name.
135    */
136   public final native String getPathSegTypeAsLetter() /*-{
137     return this.pathSegTypeAsLetter;
138   }-*/;
139 
140 }