1 /* 2 * Copyright (c) 2000 World Wide Web Consortium, 3 * (Massachusetts Institute of Technology, Institut National de 4 * Recherche en Informatique et en Automatique, Keio University). All 5 * Rights Reserved. This program is distributed under the W3C's Software 6 * Intellectual Property License. This program is distributed in the 7 * hope that it will be useful, but WITHOUT ANY WARRANTY; without even 8 * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 9 * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more 10 * details. 11 * 12 * Difference to the original copy of this file: 13 * 1) ADD public static final short FILL_AUTO = 2; 14 * 2) ADD public short getFillDefault(); 15 * 3) AND public void setFillDefault(short fillDefault) 16 * throws DOMException; 17 */ 18 19 package org.w3c.dom.smil; 20 21 import org.w3c.dom.DOMException; 22 23 /** 24 * This interface defines the set of timing attributes that are common to all 25 * timed elements. 26 */ 27 public interface ElementTime { 28 /** 29 * The desired value (as a list of times) of the begin instant of this 30 * node. 31 * @exception DOMException 32 * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. 33 */ 34 public TimeList getBegin(); 35 public void setBegin(TimeList begin) 36 throws DOMException; 37 38 /** 39 * The list of active ends for this node. 40 * @exception DOMException 41 * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. 42 */ 43 public TimeList getEnd(); 44 public void setEnd(TimeList end) 45 throws DOMException; 46 47 /** 48 * The desired simple duration value of this node in seconds. Negative 49 * value means "indefinite". 50 * @exception DOMException 51 * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. 52 */ 53 public float getDur(); 54 public void setDur(float dur) 55 throws DOMException; 56 57 // restartTypes 58 public static final short RESTART_ALWAYS = 0; 59 public static final short RESTART_NEVER = 1; 60 public static final short RESTART_WHEN_NOT_ACTIVE = 2; 61 62 /** 63 * A code representing the value of the restart attribute, as defined 64 * above. Default value is <code>RESTART_ALWAYS</code> . 65 * @exception DOMException 66 * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. 67 */ 68 public short getRestart(); 69 public void setRestart(short restart) 70 throws DOMException; 71 72 // fillTypes 73 public static final short FILL_REMOVE = 0; 74 public static final short FILL_FREEZE = 1; 75 public static final short FILL_AUTO = 2; 76 77 /** 78 * A code representing the value of the fill attribute, as defined 79 * above. Default value is <code>FILL_REMOVE</code> . 80 * @exception DOMException 81 * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. 82 */ 83 public short getFill(); 84 public void setFill(short fill) 85 throws DOMException; 86 87 /** 88 * The repeatCount attribute causes the element to play repeatedly 89 * (loop) for the specified number of times. A negative value repeat the 90 * element indefinitely. Default value is 0 (unspecified). 91 * @exception DOMException 92 * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. 93 */ 94 public float getRepeatCount(); 95 public void setRepeatCount(float repeatCount) 96 throws DOMException; 97 98 /** 99 * The repeatDur causes the element to play repeatedly (loop) for the 100 * specified duration in milliseconds. Negative means "indefinite". 101 * @exception DOMException 102 * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. 103 */ 104 public float getRepeatDur(); 105 public void setRepeatDur(float repeatDur) 106 throws DOMException; 107 108 /** 109 * Causes this element to begin the local timeline (subject to sync 110 * constraints). 111 * @return <code>true</code> if the method call was successful and the 112 * element was begun. <code>false</code> if the method call failed. 113 * Possible reasons for failure include: The element doesn't support 114 * the <code>beginElement</code> method. (the <code>beginEvent</code> 115 * attribute is not set to <code>"undefinite"</code> ) The element is 116 * already active and can't be restart when it is active. (the 117 * <code>restart</code> attribute is set to <code>"whenNotActive"</code> 118 * ) The element is active or has been active and can't be restart. 119 * (the <code>restart</code> attribute is set to <code>"never"</code> ). 120 * 121 */ 122 public boolean beginElement(); 123 124 /** 125 * Causes this element to end the local timeline (subject to sync 126 * constraints). 127 * @return <code>true</code> if the method call was successful and the 128 * element was endeed. <code>false</code> if method call failed. 129 * Possible reasons for failure include: The element doesn't support 130 * the <code>endElement</code> method. (the <code>endEvent</code> 131 * attribute is not set to <code>"undefinite"</code> ) The element is 132 * not active. 133 */ 134 public boolean endElement(); 135 136 /** 137 * Causes this element to pause the local timeline (subject to sync 138 * constraints). 139 */ 140 public void pauseElement(); 141 142 /** 143 * Causes this element to resume a paused local timeline. 144 */ 145 public void resumeElement(); 146 147 /** 148 * Seeks this element to the specified point on the local timeline 149 * (subject to sync constraints). If this is a timeline, this must seek 150 * the entire timeline (i.e. propagate to all timeChildren). 151 * @param seekTo The desired position on the local timeline in 152 * milliseconds. 153 */ 154 public void seekElement(float seekTo); 155 156 public short getFillDefault(); 157 public void setFillDefault(short fillDefault) 158 throws DOMException; 159 160 } 161 162