blob: 04592656f461941d8c3190e0a3292dacea4ead99 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "nsIDOMHTMLElement.idl"
#include "nsIDOMHTMLCollection.idl"
interface nsIDOMHTMLOptionElement;
interface nsIDOMHTMLSelectElement;
/**
* The nsIDOMHTMLOptionsCollection interface is the interface to a
* collection of [X]HTML option elements.
*
* This interface is trying to follow the DOM Level 2 HTML specification:
* http://www.w3.org/TR/DOM-Level-2-HTML/
*
* with changes from the work-in-progress WHATWG HTML specification:
* http://www.whatwg.org/specs/web-apps/current-work/
*/
// Introduced in DOM Level 2:
[uuid(4173cc53-30f6-4d12-a770-981ba53164e2)]
interface nsIDOMHTMLOptionsCollection : nsISupports
{
attribute unsigned long length;
// raises(DOMException) on setting
// FIXME item should just be inherited from nsIDOMHTMLCollection
nsIDOMNode item(in unsigned long index);
// FIXME namedItem (and getNamedItem) should return a NodeList if there are
// multiple matching items
nsIDOMNode namedItem(in DOMString name);
attribute long selectedIndex;
[noscript] void setOption(in unsigned long index,
in nsIDOMHTMLOptionElement option);
[noscript] readonly attribute nsIDOMHTMLSelectElement select;
// This add method implementation means the following
// since IDL doesn't support overloading.
// void add(in nsIDOMHTMLOptionElement,
// [optional] in nsIDOMHTMLOptionElement)
// void add(in nsIDOMHTMLOptionElement, in long)
void add(in nsIDOMHTMLOptionElement option,
[optional] in nsIVariant before);
void remove(in long index);
};
|