1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- /* -*- 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);
- };
|