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.
10 * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
11 */
13 package org.w3c.dom.stylesheets;
15 import org.w3c.dom.DOMException;
17 /**
18 * The <code>MediaList</code> interface provides the abstraction of an
19 * ordered collection of media, without defining or constraining how this
20 * collection is implemented. An empty list is the same as a list that
21 * contains the medium <code>"all"</code>.
22 * <p> The items in the <code>MediaList</code> are accessible via an integral
23 * index, starting from 0.
24 * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
25 * @since DOM Level 2
26 */
27 public interface MediaList {
28 /**
29 * The parsable textual representation of the media list. This is a
30 * comma-separated list of media.
31 * @exception DOMException
32 * SYNTAX_ERR: Raised if the specified string value has a syntax error
33 * and is unparsable.
34 * <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this media list is
35 * readonly.
36 */
37 public String getMediaText();
38 public void setMediaText(String mediaText)
39 throws DOMException;
41 /**
42 * The number of media in the list. The range of valid media is
43 * <code>0</code> to <code>length-1</code> inclusive.
44 */
45 public int getLength();
47 /**
48 * Returns the <code>index</code>th in the list. If <code>index</code> is
49 * greater than or equal to the number of media in the list, this
50 * returns <code>null</code>.
51 * @param index Index into the collection.
52 * @return The medium at the <code>index</code>th position in the
53 * <code>MediaList</code>, or <code>null</code> if that is not a valid
54 * index.
55 */
56 public String item(int index);
58 /**
59 * Deletes the medium indicated by <code>oldMedium</code> from the list.
60 * @param oldMediumThe medium to delete in the media list.
61 * @exception DOMException
62 * NO_MODIFICATION_ALLOWED_ERR: Raised if this list is readonly.
63 * <br> NOT_FOUND_ERR: Raised if <code>oldMedium</code> is not in the
64 * list.
65 */
66 public void deleteMedium(String oldMedium)
67 throws DOMException;
69 /**
70 * Adds the medium <code>newMedium</code> to the end of the list. If the
71 * <code>newMedium</code> is already used, it is first removed.
72 * @param newMediumThe new medium to add.
73 * @exception DOMException
74 * INVALID_CHARACTER_ERR: If the medium contains characters that are
75 * invalid in the underlying style language.
76 * <br> NO_MODIFICATION_ALLOWED_ERR: Raised if this list is readonly.
77 */
78 public void appendMedium(String newMedium)
79 throws DOMException;
81 }