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.JavaScriptException;
33  import com.google.gwt.core.client.JavaScriptObject;
34  
35  /**
36   * Used for attributes whose value must be a constant from a particular enumeration
37   * and which can be animated.
38   */
39  public class OMSVGAnimatedEnumeration extends JavaScriptObject {
40    /**
41     * The type is not one of predefined types. It is invalid to attempt to
42     * define a new value of this type or to attempt to switch an existing
43     * value to this type.
44     */
45    public static final short SVG_UNIT_TYPE_UNKNOWN = 0;
46  
47    /**
48     * Corresponds to value <span class='attr-value'>'userSpaceOnUse'</span>.
49     */
50    public static final short SVG_UNIT_TYPE_USERSPACEONUSE = 1;
51  
52    /**
53     * Corresponds to value <span class='attr-value'>'objectBoundingBox'</span>.
54     */
55    public static final short SVG_UNIT_TYPE_OBJECTBOUNDINGBOX = 2;
56    
57    protected OMSVGAnimatedEnumeration() {
58    }
59  
60    // Implementation of the svg::SVGAnimatedEnumeration W3C IDL interface
61    /**
62     * The base value of the given attribute before applying any animations.
63     */
64    public final native short getBaseVal() /*-{
65      return this.baseVal;
66    }-*/;
67    /**
68     * The base value of the given attribute before applying any animations.
69     * @throws DOMException(NO_MODIFICATION_ALLOWED_ERR) Raised on an   attempt
70     * to change the value of a <a href="svgdom.html#ReadOnlyNodes">read only
71     * attribute</a>.
72     */
73    public final native void setBaseVal(short value) throws JavaScriptException /*-{
74      this.baseVal = value;
75    }-*/;
76    /**
77     * If the given attribute or property is being animated, contains the current
78     * animated value of the attribute or property. If the given attribute or
79     * property is not currently being animated, contains the same value as {@link
80     * org.vectomatic.dom.svg.OMSVGAnimatedEnumeration#getBaseVal()}.
81     */
82    public final native short getAnimVal() /*-{
83      return this.animVal;
84    }-*/;
85  
86  }