/* -*- 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 "nsIDOMXULControlElement.idl"
interface nsIDOMXULSelectControlItemElement;

[scriptable, uuid(9bf188a7-d6f9-431b-b5c7-118013998e8b)]
interface nsIDOMXULSelectControlElement : nsIDOMXULControlElement {
  attribute nsIDOMXULSelectControlItemElement selectedItem;
  attribute long selectedIndex;

  attribute DOMString value;
  
  nsIDOMXULSelectControlItemElement appendItem(in DOMString label, in DOMString value);
  nsIDOMXULSelectControlItemElement insertItemAt(in long index, in DOMString label, in DOMString value);
  nsIDOMXULSelectControlItemElement removeItemAt(in long index);

  readonly attribute unsigned long itemCount;
  long getIndexOfItem(in nsIDOMXULSelectControlItemElement item);
  nsIDOMXULSelectControlItemElement getItemAtIndex(in long index);
};