/* -*- 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" interface nsIControllers; interface nsIDOMFileList; interface nsIDOMValidityState; /** * The nsIDOMHTMLInputElement interface is the interface to a [X]HTML * input element. * * 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/ */ [uuid(64aeda0b-e9b5-4868-a4f9-e4776e32e733)] interface nsIDOMHTMLInputElement : nsISupports { attribute DOMString accept; attribute DOMString alt; attribute DOMString autocomplete; attribute boolean autofocus; attribute boolean defaultChecked; attribute boolean checked; attribute boolean disabled; readonly attribute nsIDOMHTMLFormElement form; attribute DOMString formAction; attribute DOMString formEnctype; attribute DOMString formMethod; attribute boolean formNoValidate; attribute DOMString formTarget; readonly attribute nsIDOMFileList files; attribute unsigned long height; attribute boolean indeterminate; attribute DOMString inputMode; readonly attribute nsIDOMHTMLElement list; attribute DOMString max; attribute long maxLength; attribute DOMString min; attribute boolean multiple; attribute DOMString name; attribute DOMString pattern; attribute DOMString placeholder; attribute boolean readOnly; attribute boolean required; attribute DOMString step; attribute DOMString align; attribute unsigned long size; attribute unsigned long width; attribute DOMString src; attribute DOMString type; attribute DOMString defaultValue; attribute DOMString value; attribute double valueAsNumber; // valustAsDate is only supported via WebIDL, because it's intimately // tied to JS Date objects and xpidl support for that sort of thing is // terrible. [optional_argc] void stepDown([optional] in long n); [optional_argc] void stepUp([optional] in long n); // The following lines are part of the constraint validation API, see: // http://www.whatwg.org/specs/web-apps/current-work/#the-constraint-validation-api readonly attribute boolean willValidate; readonly attribute nsIDOMValidityState validity; readonly attribute DOMString validationMessage; boolean checkValidity(); void setCustomValidity(in DOMString error); void select(); attribute long selectionStart; attribute long selectionEnd; void setSelectionRange(in long selectionStart, in long selectionEnd, [optional] in DOMString direction); attribute DOMString selectionDirection; attribute DOMString useMap; readonly attribute nsIControllers controllers; readonly attribute long textLength; void mozGetFileNameArray([optional] out unsigned long aLength, [array,size_is(aLength), retval] out wstring aFileNames); void mozSetFileNameArray([array,size_is(aLength)] in wstring aFileNames, in unsigned long aLength); /** * This non-standard method prevents to check types manually to know if the * element is a text field. */ boolean mozIsTextField(in boolean aExcludePassword); };