1/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2/* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
4 * You can obtain one at http://mozilla.org/MPL/2.0/.
5 *
6 * The origin of this IDL file is
7 * http://www.whatwg.org/specs/web-apps/current-work/#the-object-element
8 * http://www.whatwg.org/specs/web-apps/current-work/#HTMLObjectElement-partial
9 *
10 * © Copyright 2004-2011 Apple Computer, Inc., Mozilla Foundation, and
11 * Opera Software ASA. You are granted a license to use, reproduce
12 * and create derivative works of this document.
13 */
14
15// http://www.whatwg.org/specs/web-apps/current-work/#the-object-element
16[HTMLConstructor, NeedResolve]
17interface HTMLObjectElement : HTMLElement {
18  [CEReactions, Pure, SetterThrows]
19           attribute DOMString data;
20  [CEReactions, Pure, SetterThrows]
21           attribute DOMString type;
22  [CEReactions, Pure, SetterThrows]
23           attribute boolean typeMustMatch;
24  [CEReactions, Pure, SetterThrows]
25           attribute DOMString name;
26  [CEReactions, Pure, SetterThrows]
27           attribute DOMString useMap;
28  [Pure]
29  readonly attribute HTMLFormElement? form;
30  [CEReactions, Pure, SetterThrows]
31           attribute DOMString width;
32  [CEReactions, Pure, SetterThrows]
33           attribute DOMString height;
34  // Not pure: can trigger about:blank instantiation
35  [NeedsSubjectPrincipal]
36  readonly attribute Document? contentDocument;
37  // Not pure: can trigger about:blank instantiation
38  [NeedsSubjectPrincipal]
39  readonly attribute WindowProxy? contentWindow;
40
41  readonly attribute boolean willValidate;
42  readonly attribute ValidityState validity;
43  [Throws]
44  readonly attribute DOMString validationMessage;
45  boolean checkValidity();
46  boolean reportValidity();
47  undefined setCustomValidity(DOMString error);
48};
49
50// http://www.whatwg.org/specs/web-apps/current-work/#HTMLObjectElement-partial
51partial interface HTMLObjectElement {
52  [CEReactions, Pure, SetterThrows]
53           attribute DOMString align;
54  [CEReactions, Pure, SetterThrows]
55           attribute DOMString archive;
56  [CEReactions, Pure, SetterThrows]
57           attribute DOMString code;
58  [CEReactions, Pure, SetterThrows]
59           attribute boolean declare;
60  [CEReactions, Pure, SetterThrows]
61           attribute unsigned long hspace;
62  [CEReactions, Pure, SetterThrows]
63           attribute DOMString standby;
64  [CEReactions, Pure, SetterThrows]
65           attribute unsigned long vspace;
66  [CEReactions, Pure, SetterThrows]
67           attribute DOMString codeBase;
68  [CEReactions, Pure, SetterThrows]
69           attribute DOMString codeType;
70
71  [CEReactions, TreatNullAs=EmptyString, Pure, SetterThrows]
72           attribute DOMString border;
73};
74
75partial interface HTMLObjectElement {
76  // GetSVGDocument
77  [NeedsSubjectPrincipal]
78  Document? getSVGDocument();
79};
80