dom/interfaces/html/nsIDOMHTMLOptionsCollection.idl

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/dom/interfaces/html/nsIDOMHTMLOptionsCollection.idl	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,52 @@
     1.4 +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
     1.5 +/* This Source Code Form is subject to the terms of the Mozilla Public
     1.6 + * License, v. 2.0. If a copy of the MPL was not distributed with this
     1.7 + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
     1.8 +
     1.9 +#include "nsIDOMHTMLElement.idl"
    1.10 +#include "nsIDOMHTMLCollection.idl"
    1.11 +
    1.12 +interface nsIDOMHTMLOptionElement;
    1.13 +interface nsIDOMHTMLSelectElement;
    1.14 +
    1.15 +/**
    1.16 + * The nsIDOMHTMLOptionsCollection interface is the interface to a
    1.17 + * collection of [X]HTML option elements.
    1.18 + *
    1.19 + * This interface is trying to follow the DOM Level 2 HTML specification:
    1.20 + * http://www.w3.org/TR/DOM-Level-2-HTML/
    1.21 + *
    1.22 + * with changes from the work-in-progress WHATWG HTML specification:
    1.23 + * http://www.whatwg.org/specs/web-apps/current-work/
    1.24 + */
    1.25 +
    1.26 +// Introduced in DOM Level 2:
    1.27 +[scriptable, uuid(4173cc53-30f6-4d12-a770-981ba53164e2)]
    1.28 +interface nsIDOMHTMLOptionsCollection : nsISupports
    1.29 +{
    1.30 +           attribute unsigned long   length;
    1.31 +                                        // raises(DOMException) on setting
    1.32 +
    1.33 +  // FIXME item should just be inherited from nsIDOMHTMLCollection
    1.34 +  nsIDOMNode         item(in unsigned long index);
    1.35 +
    1.36 +  // FIXME namedItem (and getNamedItem) should return a NodeList if there are
    1.37 +  //       multiple matching items
    1.38 +  nsIDOMNode namedItem(in DOMString name);
    1.39 +
    1.40 +           attribute long             selectedIndex;
    1.41 +
    1.42 +  [noscript] void    setOption(in unsigned long index,
    1.43 +                               in nsIDOMHTMLOptionElement option);
    1.44 +
    1.45 +  [noscript] readonly attribute nsIDOMHTMLSelectElement select;
    1.46 +
    1.47 +  // This add method implementation means the following
    1.48 +  // since IDL doesn't support overloading.
    1.49 +  //   void add(in nsIDOMHTMLOptionElement,
    1.50 +  //            [optional] in nsIDOMHTMLOptionElement)
    1.51 +  //   void add(in nsIDOMHTMLOptionElement, in long)
    1.52 +  void                      add(in nsIDOMHTMLOptionElement option,
    1.53 +                                [optional] in nsIVariant before);
    1.54 +  void                      remove(in long index);
    1.55 +};

mercurial