Generate bindings for HTMLFrameElement.

This commit is contained in:
Josh Matthews 2013-08-26 16:25:02 -04:00
parent 540993f196
commit e552cfd4ce
8 changed files with 141 additions and 6 deletions

View file

@ -564,7 +564,9 @@ addHTMLElement('HTMLDListElement')
addHTMLElement('HTMLElement') addHTMLElement('HTMLElement')
addHTMLElement('HTMLEmbedElement') addHTMLElement('HTMLEmbedElement')
addHTMLElement('HTMLFieldSetElement') addHTMLElement('HTMLFieldSetElement')
addHTMLElement('HTMLFontElement')
addHTMLElement('HTMLFormElement') addHTMLElement('HTMLFormElement')
addHTMLElement('HTMLFrameElement')
addHTMLElement('HTMLHeadElement') addHTMLElement('HTMLHeadElement')
addHTMLElement('HTMLHtmlElement') addHTMLElement('HTMLHtmlElement')
addHTMLElement('HTMLHRElement') addHTMLElement('HTMLHRElement')

View file

@ -4632,6 +4632,8 @@ class CGBindingRoot(CGThing):
'dom::htmlelement::HTMLElement', #XXXjdm 'dom::htmlelement::HTMLElement', #XXXjdm
'dom::htmlembedelement::HTMLEmbedElement', #XXXjdm 'dom::htmlembedelement::HTMLEmbedElement', #XXXjdm
'dom::htmlfieldsetelement::HTMLFieldSetElement', #XXXjdm 'dom::htmlfieldsetelement::HTMLFieldSetElement', #XXXjdm
'dom::htmlfontelement::HTMLFontElement', #XXXjdm
'dom::htmlframeelement::HTMLFrameElement', #XXXjdm
'dom::htmldocument::HTMLDocument', #XXXjdm 'dom::htmldocument::HTMLDocument', #XXXjdm
'dom::htmlhrelement::HTMLHRElement', 'dom::htmlhrelement::HTMLHRElement',
'dom::htmliframeelement::HTMLIFrameElement', #XXXjdm 'dom::htmliframeelement::HTMLIFrameElement', #XXXjdm

View file

@ -0,0 +1,34 @@
/* -*- 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/.
*
* The origin of this IDL file is
* http://www.whatwg.org/specs/web-apps/current-work/#htmlframeelement
* © Copyright 2004-2011 Apple Computer, Inc., Mozilla Foundation, and
* Opera Software ASA. You are granted a license to use, reproduce
* and create derivative works of this document.
*/
// http://www.whatwg.org/specs/web-apps/current-work/#htmlframeelement
interface HTMLFrameElement : HTMLElement {
[SetterThrows]
attribute DOMString name;
[SetterThrows]
attribute DOMString scrolling;
[SetterThrows]
attribute DOMString src;
[SetterThrows]
attribute DOMString frameBorder;
[SetterThrows]
attribute DOMString longDesc;
[SetterThrows]
attribute boolean noResize;
readonly attribute Document? contentDocument;
readonly attribute WindowProxy? contentWindow;
[TreatNullAs=EmptyString, SetterThrows] attribute DOMString marginHeight;
[TreatNullAs=EmptyString, SetterThrows] attribute DOMString marginWidth;
};
//HTMLFrameElement implements MozFrameLoaderOwner;

View file

@ -12,7 +12,8 @@ use dom::element::{HTMLElementTypeId,
HTMLBodyElementTypeId, HTMLBRElementTypeId, HTMLButtonElementTypeId, HTMLBodyElementTypeId, HTMLBRElementTypeId, HTMLButtonElementTypeId,
HTMLCanvasElementTypeId, HTMLDataElementTypeId, HTMLDataListElementTypeId, HTMLCanvasElementTypeId, HTMLDataElementTypeId, HTMLDataListElementTypeId,
HTMLDirectoryElementTypeId, HTMLDivElementTypeId, HTMLEmbedElementTypeId, HTMLDirectoryElementTypeId, HTMLDivElementTypeId, HTMLEmbedElementTypeId,
HTMLFieldSetElementTypeId, HTMLHeadElementTypeId, HTMLFieldSetElementTypeId, HTMLFontElementTypeId, HTMLFrameElementTypeId,
HTMLHeadElementTypeId,
HTMLHRElementTypeId, HTMLHtmlElementTypeId, HTMLIframeElementTypeId, HTMLHRElementTypeId, HTMLHtmlElementTypeId, HTMLIframeElementTypeId,
HTMLImageElementTypeId, HTMLInputElementTypeId, HTMLLIElementTypeId, HTMLImageElementTypeId, HTMLInputElementTypeId, HTMLLIElementTypeId,
HTMLLinkElementTypeId, HTMLMetaElementTypeId, HTMLOListElementTypeId, HTMLLinkElementTypeId, HTMLMetaElementTypeId, HTMLOListElementTypeId,
@ -41,6 +42,8 @@ use dom::htmldirectoryelement::HTMLDirectoryElement;
use dom::htmldlistelement::HTMLDListElement; use dom::htmldlistelement::HTMLDListElement;
use dom::htmlembedelement::HTMLEmbedElement; use dom::htmlembedelement::HTMLEmbedElement;
use dom::htmlfieldsetelement::HTMLFieldSetElement; use dom::htmlfieldsetelement::HTMLFieldSetElement;
use dom::htmlfontelement::HTMLFontElement;
use dom::htmlframeelement::HTMLFrameElement;
use dom::htmliframeelement::HTMLIFrameElement; use dom::htmliframeelement::HTMLIFrameElement;
use dom::htmlimageelement::HTMLImageElement; use dom::htmlimageelement::HTMLImageElement;
use dom::htmlinputelement::HTMLInputElement; use dom::htmlinputelement::HTMLInputElement;
@ -143,6 +146,8 @@ pub fn create(cx: *JSContext, node: &mut AbstractNode<ScriptView>) -> *JSObject
ElementNodeTypeId(HTMLDivElementTypeId) => generate_element!(HTMLDivElement), ElementNodeTypeId(HTMLDivElementTypeId) => generate_element!(HTMLDivElement),
ElementNodeTypeId(HTMLEmbedElementTypeId) => generate_element!(HTMLEmbedElement), ElementNodeTypeId(HTMLEmbedElementTypeId) => generate_element!(HTMLEmbedElement),
ElementNodeTypeId(HTMLFieldSetElementTypeId) => generate_element!(HTMLFieldSetElement), ElementNodeTypeId(HTMLFieldSetElementTypeId) => generate_element!(HTMLFieldSetElement),
ElementNodeTypeId(HTMLFontElementTypeId) => generate_element!(HTMLFontElement),
ElementNodeTypeId(HTMLFrameElementTypeId) => generate_element!(HTMLFrameElement),
ElementNodeTypeId(HTMLHeadElementTypeId) => generate_element!(HTMLHeadElement), ElementNodeTypeId(HTMLHeadElementTypeId) => generate_element!(HTMLHeadElement),
ElementNodeTypeId(HTMLHRElementTypeId) => generate_element!(HTMLHRElement), ElementNodeTypeId(HTMLHRElementTypeId) => generate_element!(HTMLHRElement),
ElementNodeTypeId(HTMLHtmlElementTypeId) => generate_element!(HTMLHtmlElement), ElementNodeTypeId(HTMLHtmlElementTypeId) => generate_element!(HTMLHtmlElement),

View file

@ -11,7 +11,8 @@ use dom::bindings::codegen::{HTMLAnchorElementBinding, HTMLAppletElementBinding,
HTMLDataElementBinding, HTMLDataListElementBinding, HTMLDataElementBinding, HTMLDataListElementBinding,
HTMLDirectoryElementBinding, HTMLDListElementBinding, HTMLDirectoryElementBinding, HTMLDListElementBinding,
HTMLDivElementBinding, HTMLEmbedElementBinding, HTMLDivElementBinding, HTMLEmbedElementBinding,
HTMLFieldSetElementBinding, HTMLHeadElementBinding, HTMLFieldSetElementBinding, HTMLFontElementBinding,
HTMLFrameElementBinding, HTMLHeadElementBinding,
HTMLHRElementBinding, HTMLHtmlElementBinding, HTMLHRElementBinding, HTMLHtmlElementBinding,
HTMLIFrameElementBinding, HTMLImageElementBinding, HTMLIFrameElementBinding, HTMLImageElementBinding,
HTMLInputElementBinding, HTMLLIElementBinding, HTMLInputElementBinding, HTMLLIElementBinding,
@ -44,6 +45,8 @@ use dom::htmldlistelement::HTMLDListElement;
use dom::htmlelement::HTMLElement; use dom::htmlelement::HTMLElement;
use dom::htmlembedelement::HTMLEmbedElement; use dom::htmlembedelement::HTMLEmbedElement;
use dom::htmlfieldsetelement::HTMLFieldSetElement; use dom::htmlfieldsetelement::HTMLFieldSetElement;
use dom::htmlfontelement::HTMLFontElement;
use dom::htmlframeelement::HTMLFrameElement;
use dom::htmlhrelement::HTMLHRElement; use dom::htmlhrelement::HTMLHRElement;
use dom::htmliframeelement::HTMLIFrameElement; use dom::htmliframeelement::HTMLIFrameElement;
use dom::htmlimageelement::HTMLImageElement; use dom::htmlimageelement::HTMLImageElement;
@ -122,6 +125,7 @@ pub enum ElementTypeId {
HTMLFieldSetElementTypeId, HTMLFieldSetElementTypeId,
HTMLFontElementTypeId, HTMLFontElementTypeId,
HTMLFormElementTypeId, HTMLFormElementTypeId,
HTMLFrameElementTypeId,
HTMLHRElementTypeId, HTMLHRElementTypeId,
HTMLHeadElementTypeId, HTMLHeadElementTypeId,
HTMLHeadingElementTypeId, HTMLHeadingElementTypeId,
@ -161,7 +165,6 @@ pub enum ElementTypeId {
// //
pub struct HTMLDivElement { parent: HTMLElement } pub struct HTMLDivElement { parent: HTMLElement }
pub struct HTMLFontElement { parent: HTMLElement }
pub struct HTMLFormElement { parent: HTMLElement } pub struct HTMLFormElement { parent: HTMLElement }
pub struct HTMLHeadElement { parent: HTMLElement } pub struct HTMLHeadElement { parent: HTMLElement }
pub struct HTMLHtmlElement { parent: HTMLElement } pub struct HTMLHtmlElement { parent: HTMLElement }
@ -244,6 +247,8 @@ generate_cacheable_wrapper!(HTMLDataListElement, HTMLDataListElementBinding::Wra
generate_binding_object!(HTMLDataListElement) generate_binding_object!(HTMLDataListElement)
generate_cacheable_wrapper!(HTMLDListElement, HTMLDListElementBinding::Wrap) generate_cacheable_wrapper!(HTMLDListElement, HTMLDListElementBinding::Wrap)
generate_binding_object!(HTMLDListElement) generate_binding_object!(HTMLDListElement)
generate_cacheable_wrapper!(HTMLFrameElement, HTMLFrameElementBinding::Wrap)
generate_binding_object!(HTMLFrameElement)
generate_cacheable_wrapper!(HTMLBRElement, HTMLBRElementBinding::Wrap) generate_cacheable_wrapper!(HTMLBRElement, HTMLBRElementBinding::Wrap)
generate_binding_object!(HTMLBRElement) generate_binding_object!(HTMLBRElement)
generate_cacheable_wrapper!(HTMLHRElement, HTMLHRElementBinding::Wrap) generate_cacheable_wrapper!(HTMLHRElement, HTMLHRElementBinding::Wrap)
@ -260,6 +265,8 @@ generate_cacheable_wrapper!(HTMLEmbedElement, HTMLEmbedElementBinding::Wrap)
generate_binding_object!(HTMLEmbedElement) generate_binding_object!(HTMLEmbedElement)
generate_cacheable_wrapper!(HTMLFieldSetElement, HTMLFieldSetElementBinding::Wrap) generate_cacheable_wrapper!(HTMLFieldSetElement, HTMLFieldSetElementBinding::Wrap)
generate_binding_object!(HTMLFieldSetElement) generate_binding_object!(HTMLFieldSetElement)
generate_cacheable_wrapper!(HTMLFontElement, HTMLFontElementBinding::Wrap)
generate_binding_object!(HTMLFontElement)
generate_cacheable_wrapper!(HTMLIFrameElement, HTMLIFrameElementBinding::Wrap) generate_cacheable_wrapper!(HTMLIFrameElement, HTMLIFrameElementBinding::Wrap)
generate_binding_object!(HTMLIFrameElement) generate_binding_object!(HTMLIFrameElement)
generate_cacheable_wrapper!(HTMLImageElement, HTMLImageElementBinding::Wrap) generate_cacheable_wrapper!(HTMLImageElement, HTMLImageElementBinding::Wrap)

View file

@ -0,0 +1,78 @@
/* 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/. */
use dom::bindings::utils::{DOMString, null_string, ErrorResult};
use dom::document::AbstractDocument;
use dom::htmlelement::HTMLElement;
use dom::windowproxy::WindowProxy;
pub struct HTMLFrameElement {
parent: HTMLElement
}
impl HTMLFrameElement {
pub fn Name(&self) -> DOMString {
null_string
}
pub fn SetName(&mut self, _name: &DOMString, _rv: &mut ErrorResult) {
}
pub fn Scrolling(&self) -> DOMString {
null_string
}
pub fn SetScrolling(&mut self, _scrolling: &DOMString, _rv: &mut ErrorResult) {
}
pub fn Src(&self) -> DOMString {
null_string
}
pub fn SetSrc(&mut self, _src: &DOMString, _rv: &mut ErrorResult) {
}
pub fn FrameBorder(&self) -> DOMString {
null_string
}
pub fn SetFrameBorder(&mut self, _frameborder: &DOMString, _rv: &mut ErrorResult) {
}
pub fn LongDesc(&self) -> DOMString {
null_string
}
pub fn SetLongDesc(&mut self, _longdesc: &DOMString, _rv: &mut ErrorResult) {
}
pub fn NoResize(&self) -> bool {
false
}
pub fn SetNoResize(&mut self, _no_resize: bool, _rv: &mut ErrorResult) {
}
pub fn GetContentDocument(&self) -> Option<AbstractDocument> {
None
}
pub fn GetContentWindow(&self) -> Option<@mut WindowProxy> {
None
}
pub fn MarginHeight(&self) -> DOMString {
null_string
}
pub fn SetMarginHeight(&mut self, _height: &DOMString, _rv: &mut ErrorResult) {
}
pub fn MarginWidth(&self) -> DOMString {
null_string
}
pub fn SetMarginWidth(&mut self, _height: &DOMString, _rv: &mut ErrorResult) {
}
}

View file

@ -8,8 +8,8 @@ use dom::element::{HTMLElementTypeId,
HTMLBRElementTypeId, HTMLButtonElementTypeId, HTMLCanvasElementTypeId, HTMLBRElementTypeId, HTMLButtonElementTypeId, HTMLCanvasElementTypeId,
HTMLDataElementTypeId, HTMLDataListElementTypeId, HTMLDivElementTypeId, HTMLDataElementTypeId, HTMLDataListElementTypeId, HTMLDivElementTypeId,
HTMLDirectoryElementTypeId, HTMLDListElementTypeId, HTMLEmbedElementTypeId, HTMLDirectoryElementTypeId, HTMLDListElementTypeId, HTMLEmbedElementTypeId,
HTMLFieldSetElementTypeId, HTMLFontElementTypeId, HTMLFieldSetElementTypeId, HTMLFontElementTypeId, HTMLFormElementTypeId,
HTMLFormElementTypeId, HTMLHRElementTypeId, HTMLHeadElementTypeId, HTMLFrameElementTypeId, HTMLHRElementTypeId, HTMLHeadElementTypeId,
HTMLHtmlElementTypeId, HTMLImageElementTypeId, HTMLIframeElementTypeId, HTMLHtmlElementTypeId, HTMLImageElementTypeId, HTMLIframeElementTypeId,
HTMLInputElementTypeId, HTMLLinkElementTypeId, HTMLLIElementTypeId, HTMLInputElementTypeId, HTMLLinkElementTypeId, HTMLLIElementTypeId,
HTMLMetaElementTypeId, HTMLOListElementTypeId, HTMLOptionElementTypeId, HTMLMetaElementTypeId, HTMLOListElementTypeId, HTMLOptionElementTypeId,
@ -22,7 +22,7 @@ use dom::element::{HTMLElementTypeId,
HTMLTableRowElementTypeId, HTMLTextAreaElementTypeId, HTMLTableRowElementTypeId, HTMLTextAreaElementTypeId,
HTMLTimeElementTypeId, HTMLTitleElementTypeId, HTMLUListElementTypeId, HTMLTimeElementTypeId, HTMLTitleElementTypeId, HTMLUListElementTypeId,
UnknownElementTypeId}; UnknownElementTypeId};
use dom::element::{HTMLDivElement, HTMLFontElement, HTMLFormElement, use dom::element::{HTMLDivElement, HTMLFormElement,
HTMLHeadElement, HTMLHeadingElement, HTMLHtmlElement, HTMLHeadElement, HTMLHeadingElement, HTMLHtmlElement,
HTMLOptionElement, HTMLParagraphElement, HTMLOptionElement, HTMLParagraphElement,
HTMLSelectElement, HTMLSmallElement, HTMLSelectElement, HTMLSmallElement,
@ -43,6 +43,8 @@ use dom::htmldirectoryelement::HTMLDirectoryElement;
use dom::htmldlistelement::HTMLDListElement; use dom::htmldlistelement::HTMLDListElement;
use dom::htmlembedelement::HTMLEmbedElement; use dom::htmlembedelement::HTMLEmbedElement;
use dom::htmlfieldsetelement::HTMLFieldSetElement; use dom::htmlfieldsetelement::HTMLFieldSetElement;
use dom::htmlfontelement::HTMLFontElement;
use dom::htmlframeelement::HTMLFrameElement;
use dom::htmlhrelement::HTMLHRElement; use dom::htmlhrelement::HTMLHRElement;
use dom::htmliframeelement::{IFrameSize, HTMLIFrameElement}; use dom::htmliframeelement::{IFrameSize, HTMLIFrameElement};
use dom::htmlimageelement::HTMLImageElement; use dom::htmlimageelement::HTMLImageElement;
@ -263,6 +265,7 @@ fn build_element_from_tag(cx: *JSContext, tag: &str) -> AbstractNode<ScriptView>
handle_element!(cx, tag, "fieldset",HTMLFieldSetElementTypeId, HTMLFieldSetElement, []); handle_element!(cx, tag, "fieldset",HTMLFieldSetElementTypeId, HTMLFieldSetElement, []);
handle_element!(cx, tag, "font", HTMLFontElementTypeId, HTMLFontElement, []); handle_element!(cx, tag, "font", HTMLFontElementTypeId, HTMLFontElement, []);
handle_element!(cx, tag, "form", HTMLFormElementTypeId, HTMLFormElement, []); handle_element!(cx, tag, "form", HTMLFormElementTypeId, HTMLFormElement, []);
handle_element!(cx, tag, "frame", HTMLFrameElementTypeId, HTMLFrameElement, []);
handle_element!(cx, tag, "hr", HTMLHRElementTypeId, HTMLHRElement, []); handle_element!(cx, tag, "hr", HTMLHRElementTypeId, HTMLHRElement, []);
handle_element!(cx, tag, "head", HTMLHeadElementTypeId, HTMLHeadElement, []); handle_element!(cx, tag, "head", HTMLHeadElementTypeId, HTMLHeadElement, []);
handle_element!(cx, tag, "html", HTMLHtmlElementTypeId, HTMLHtmlElement, []); handle_element!(cx, tag, "html", HTMLHtmlElementTypeId, HTMLHtmlElement, []);

View file

@ -60,6 +60,8 @@ pub mod dom {
pub mod HTMLElementBinding; pub mod HTMLElementBinding;
pub mod HTMLEmbedElementBinding; pub mod HTMLEmbedElementBinding;
pub mod HTMLFieldSetElementBinding; pub mod HTMLFieldSetElementBinding;
pub mod HTMLFontElementBinding;
pub mod HTMLFrameElementBinding;
pub mod HTMLHeadElementBinding; pub mod HTMLHeadElementBinding;
pub mod HTMLHRElementBinding; pub mod HTMLHRElementBinding;
pub mod HTMLHtmlElementBinding; pub mod HTMLHtmlElementBinding;
@ -125,6 +127,8 @@ pub mod dom {
pub mod htmlelement; pub mod htmlelement;
pub mod htmlembedelement; pub mod htmlembedelement;
pub mod htmlfieldsetelement; pub mod htmlfieldsetelement;
pub mod htmlfontelement;
pub mod htmlframeelement;
pub mod htmlhrelement; pub mod htmlhrelement;
pub mod htmliframeelement; pub mod htmliframeelement;
pub mod htmlimageelement; pub mod htmlimageelement;