/* -*- 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(ef83c335-b71d-4b86-9519-451ee78db033)]
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);
};

