Add document.defineCustomElement
[WebKit.git] / Source / WebCore / html / HTMLElement.idl
1 /*
2  * Copyright (C) 2006, 2007, 2009 Apple Inc. All rights reserved.
3  * Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com>
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Library General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Library General Public License for more details.
14  *
15  * You should have received a copy of the GNU Library General Public License
16  * along with this library; see the file COPYING.LIB.  If not, write to
17  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18  * Boston, MA 02110-1301, USA.
19  */
20
21 [
22 #if defined(ENABLE_CUSTOM_ELEMENTS) && ENABLE_CUSTOM_ELEMENTS
23     CustomConstructor(optional DOMString localName),
24 #endif
25     JSGenerateToNativeObject,
26     JSCustomPushEventHandlerScope,
27 ] interface HTMLElement : Element {
28 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
29              // FIXME: id should be moved to Element for ObjC as well.
30              [Reflect] attribute DOMString id;
31 #endif
32              [Reflect] attribute DOMString title;
33              [Reflect] attribute DOMString lang;
34              attribute boolean             translate;
35              attribute DOMString dir;
36
37              attribute long              tabIndex;
38              attribute boolean           draggable;
39
40              [Reflect] attribute DOMString webkitdropzone;
41              // FIXME: Support the standard HTML equivalent.
42              // [PutForwards=value] readonly attribute DOMSettableTokenList dropzone;
43
44              [Reflect] attribute boolean hidden;
45              [Reflect] attribute DOMString accessKey;
46
47     // Extensions
48     [TreatNullAs=NullString, SetterRaisesException] attribute DOMString innerText;
49     [TreatNullAs=NullString, SetterRaisesException] attribute DOMString outerText;
50              
51     [RaisesException] Element insertAdjacentElement([Default=Undefined] optional DOMString where,
52                                   [Default=Undefined] optional Element element);
53     [RaisesException] void insertAdjacentHTML([Default=Undefined] optional DOMString where,
54                             [Default=Undefined] optional DOMString html);
55     [RaisesException] void insertAdjacentText([Default=Undefined] optional DOMString where,
56                             [Default=Undefined] optional DOMString text);
57
58 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
59     readonly attribute HTMLCollection children;
60 #endif
61
62              [TreatNullAs=NullString, SetterRaisesException] attribute DOMString contentEditable;
63     readonly attribute boolean isContentEditable;
64
65              attribute boolean spellcheck;
66
67 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
68     readonly attribute DOMString titleDisplayString;
69 #endif
70
71     void click();
72 };
73