Mypal/dom/interfaces/html/nsIDOMHTMLInputElement.idl

110 lines
4.3 KiB
Plaintext

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