diff options
Diffstat (limited to 'src/components/script/dom/element.rs')
-rw-r--r-- | src/components/script/dom/element.rs | 222 |
1 files changed, 2 insertions, 220 deletions
diff --git a/src/components/script/dom/element.rs b/src/components/script/dom/element.rs index 8a296c5d3d0..c4484bcd38d 100644 --- a/src/components/script/dom/element.rs +++ b/src/components/script/dom/element.rs @@ -4,77 +4,12 @@ //! Element nodes. -use dom::bindings::codegen::{HTMLAnchorElementBinding, HTMLAppletElementBinding, - HTMLAreaElementBinding, HTMLBaseElementBinding, - HTMLBodyElementBinding, HTMLBRElementBinding, - HTMLButtonElementBinding, HTMLCanvasElementBinding, - HTMLDataElementBinding, HTMLDataListElementBinding, - HTMLDirectoryElementBinding, HTMLDListElementBinding, - HTMLDivElementBinding, HTMLEmbedElementBinding, - HTMLFieldSetElementBinding, HTMLFontElementBinding, - HTMLFrameElementBinding, HTMLFrameSetElementBinding, - HTMLHeadElementBinding, HTMLHeadingElementBinding, - HTMLHRElementBinding, HTMLHtmlElementBinding, - HTMLIFrameElementBinding, HTMLImageElementBinding, - HTMLInputElementBinding, HTMLLIElementBinding, - HTMLLinkElementBinding, HTMLMapElementBinding, - HTMLMetaElementBinding, - HTMLOListElementBinding, HTMLParagraphElementBinding, - HTMLProgressElementBinding, HTMLQuoteElementBinding, - HTMLScriptElementBinding, HTMLSourceElementBinding, HTMLSpanElementBinding, - HTMLStyleElementBinding, HTMLTableElementBinding, - HTMLTableCaptionElementBinding, HTMLTableCellElementBinding, - HTMLTableColElementBinding, HTMLTableRowElementBinding, - HTMLTableSectionElementBinding, HTMLTextAreaElementBinding, - HTMLTimeElementBinding, HTMLTitleElementBinding, HTMLUListElementBinding}; use dom::bindings::utils::{null_string, str}; use dom::bindings::utils::{BindingObject, CacheableWrapper, DOMString, ErrorResult, WrapperCache}; +use dom::htmlelement::HTMLElement; +use dom::htmlcollection::HTMLCollection; use dom::clientrect::ClientRect; use dom::clientrectlist::ClientRectList; -use dom::htmlanchorelement::HTMLAnchorElement; -use dom::htmlappletelement::HTMLAppletElement; -use dom::htmlareaelement::HTMLAreaElement; -use dom::htmlbaseelement::HTMLBaseElement; -use dom::htmlbodyelement::HTMLBodyElement; -use dom::htmlbrelement::HTMLBRElement; -use dom::htmlbuttonelement::HTMLButtonElement; -use dom::htmlcanvaselement::HTMLCanvasElement; -use dom::htmlcollection::HTMLCollection; -use dom::htmldataelement::HTMLDataElement; -use dom::htmldatalistelement::HTMLDataListElement; -use dom::htmldirectoryelement::HTMLDirectoryElement; -use dom::htmldlistelement::HTMLDListElement; -use dom::htmlelement::HTMLElement; -use dom::htmlembedelement::HTMLEmbedElement; -use dom::htmlfieldsetelement::HTMLFieldSetElement; -use dom::htmlfontelement::HTMLFontElement; -use dom::htmlframeelement::HTMLFrameElement; -use dom::htmlframesetelement::HTMLFrameSetElement; -use dom::htmlheadingelement::HTMLHeadingElement; -use dom::htmlhrelement::HTMLHRElement; -use dom::htmliframeelement::HTMLIFrameElement; -use dom::htmlimageelement::HTMLImageElement; -use dom::htmlinputelement::HTMLInputElement; -use dom::htmllielement::HTMLLIElement; -use dom::htmllinkelement::HTMLLinkElement; -use dom::htmlmapelement::HTMLMapElement; -use dom::htmlmetaelement::HTMLMetaElement; -use dom::htmlolistelement::HTMLOListElement; -use dom::htmlprogresselement::HTMLProgressElement; -use dom::htmlquoteelement::HTMLQuoteElement; -use dom::htmlscriptelement::HTMLScriptElement; -use dom::htmlsourceelement::HTMLSourceElement; -use dom::htmlstyleelement::HTMLStyleElement; -use dom::htmltableelement::HTMLTableElement; -use dom::htmltablecaptionelement::HTMLTableCaptionElement; -use dom::htmltablecellelement::HTMLTableCellElement; -use dom::htmltablecolelement::HTMLTableColElement; -use dom::htmltablerowelement::HTMLTableRowElement; -use dom::htmltablesectionelement::HTMLTableSectionElement; -use dom::htmltextareaelement::HTMLTextAreaElement; -use dom::htmltimeelement::HTMLTimeElement; -use dom::htmltitleelement::HTMLTitleElement; -use dom::htmlulistelement::HTMLUListElement; use dom::node::{ElementNodeTypeId, Node, ScriptView, AbstractNode}; use layout_interface::{ContentBoxQuery, ContentBoxResponse, ContentBoxesQuery}; use layout_interface::{ContentBoxesResponse}; @@ -171,164 +106,11 @@ pub enum ElementTypeId { // Regular old elements // -pub struct HTMLDivElement { parent: HTMLElement } -pub struct HTMLFormElement { parent: HTMLElement } -pub struct HTMLHeadElement { parent: HTMLElement } -pub struct HTMLHtmlElement { parent: HTMLElement } pub struct HTMLOptionElement { parent: HTMLElement } -pub struct HTMLParagraphElement { parent: HTMLElement } pub struct HTMLSelectElement { parent: HTMLElement } pub struct HTMLSmallElement { parent: HTMLElement } -pub struct HTMLSpanElement { parent: HTMLElement } pub struct UnknownElement { parent: HTMLElement } -impl HTMLHtmlElement { - pub fn Version(&self) -> DOMString { - null_string - } - - pub fn SetVersion(&mut self, _version: &DOMString, _rv: &mut ErrorResult) { - } -} - -impl HTMLDivElement { - pub fn Align(&self) -> DOMString { - null_string - } - - pub fn SetAlign(&mut self, _align: &DOMString, _rv: &mut ErrorResult) { - } -} - -impl HTMLParagraphElement { - pub fn Align(&self) -> DOMString { - null_string - } - - pub fn SetAlign(&mut self, _align: &DOMString, _rv: &mut ErrorResult) { - } -} - -pub macro_rules! generate_cacheable_wrapper( - ($name: ident, $wrap: path) => ( - impl CacheableWrapper for $name { - fn get_wrappercache(&mut self) -> &mut WrapperCache { - self.parent.get_wrappercache() - } - - fn wrap_object_shared(@mut self, cx: *JSContext, scope: *JSObject) -> *JSObject { - let mut unused = false; - $wrap(cx, scope, self, &mut unused) - } - } - ) -) - -pub macro_rules! generate_binding_object( - ($name: ident) => ( - impl BindingObject for $name { - fn GetParentObject(&self, cx: *JSContext) -> Option<@mut CacheableWrapper> { - self.parent.GetParentObject(cx) - } - } - ) -) - -generate_cacheable_wrapper!(HTMLHeadElement, HTMLHeadElementBinding::Wrap) -generate_binding_object!(HTMLHeadElement) -generate_cacheable_wrapper!(HTMLAnchorElement, HTMLAnchorElementBinding::Wrap) -generate_binding_object!(HTMLAnchorElement) -generate_cacheable_wrapper!(HTMLAppletElement, HTMLAppletElementBinding::Wrap) -generate_binding_object!(HTMLAppletElement) -generate_cacheable_wrapper!(HTMLAreaElement, HTMLAreaElementBinding::Wrap) -generate_binding_object!(HTMLAreaElement) -generate_cacheable_wrapper!(HTMLBaseElement, HTMLBaseElementBinding::Wrap) -generate_binding_object!(HTMLBaseElement) -generate_cacheable_wrapper!(HTMLBodyElement, HTMLBodyElementBinding::Wrap) -generate_binding_object!(HTMLBodyElement) -generate_cacheable_wrapper!(HTMLButtonElement, HTMLButtonElementBinding::Wrap) -generate_binding_object!(HTMLButtonElement) -generate_cacheable_wrapper!(HTMLCanvasElement, HTMLCanvasElementBinding::Wrap) -generate_binding_object!(HTMLCanvasElement) -generate_cacheable_wrapper!(HTMLDataListElement, HTMLDataListElementBinding::Wrap) -generate_binding_object!(HTMLDataListElement) -generate_cacheable_wrapper!(HTMLDListElement, HTMLDListElementBinding::Wrap) -generate_binding_object!(HTMLDListElement) -generate_cacheable_wrapper!(HTMLFrameElement, HTMLFrameElementBinding::Wrap) -generate_binding_object!(HTMLFrameElement) -generate_cacheable_wrapper!(HTMLFrameSetElement, HTMLFrameSetElementBinding::Wrap) -generate_binding_object!(HTMLFrameSetElement) -generate_cacheable_wrapper!(HTMLBRElement, HTMLBRElementBinding::Wrap) -generate_binding_object!(HTMLBRElement) -generate_cacheable_wrapper!(HTMLHRElement, HTMLHRElementBinding::Wrap) -generate_binding_object!(HTMLHRElement) -generate_cacheable_wrapper!(HTMLHtmlElement, HTMLHtmlElementBinding::Wrap) -generate_binding_object!(HTMLHtmlElement) -generate_cacheable_wrapper!(HTMLDataElement, HTMLDataElementBinding::Wrap) -generate_binding_object!(HTMLDataElement) -generate_cacheable_wrapper!(HTMLDirectoryElement, HTMLDirectoryElementBinding::Wrap) -generate_binding_object!(HTMLDirectoryElement) -generate_cacheable_wrapper!(HTMLDivElement, HTMLDivElementBinding::Wrap) -generate_binding_object!(HTMLDivElement) -generate_cacheable_wrapper!(HTMLEmbedElement, HTMLEmbedElementBinding::Wrap) -generate_binding_object!(HTMLEmbedElement) -generate_cacheable_wrapper!(HTMLFieldSetElement, HTMLFieldSetElementBinding::Wrap) -generate_binding_object!(HTMLFieldSetElement) -generate_cacheable_wrapper!(HTMLFontElement, HTMLFontElementBinding::Wrap) -generate_binding_object!(HTMLFontElement) -generate_cacheable_wrapper!(HTMLHeadingElement, HTMLHeadingElementBinding::Wrap) -generate_binding_object!(HTMLHeadingElement) -generate_cacheable_wrapper!(HTMLIFrameElement, HTMLIFrameElementBinding::Wrap) -generate_binding_object!(HTMLIFrameElement) -generate_cacheable_wrapper!(HTMLImageElement, HTMLImageElementBinding::Wrap) -generate_binding_object!(HTMLImageElement) -generate_cacheable_wrapper!(HTMLInputElement, HTMLInputElementBinding::Wrap) -generate_binding_object!(HTMLInputElement) -generate_cacheable_wrapper!(HTMLLIElement, HTMLLIElementBinding::Wrap) -generate_binding_object!(HTMLLIElement) -generate_cacheable_wrapper!(HTMLLinkElement, HTMLLinkElementBinding::Wrap) -generate_binding_object!(HTMLLinkElement) -generate_cacheable_wrapper!(HTMLMapElement, HTMLMapElementBinding::Wrap) -generate_binding_object!(HTMLMapElement) -generate_cacheable_wrapper!(HTMLMetaElement, HTMLMetaElementBinding::Wrap) -generate_binding_object!(HTMLMetaElement) -generate_cacheable_wrapper!(HTMLOListElement, HTMLOListElementBinding::Wrap) -generate_binding_object!(HTMLOListElement) -generate_cacheable_wrapper!(HTMLParagraphElement, HTMLParagraphElementBinding::Wrap) -generate_binding_object!(HTMLParagraphElement) -generate_cacheable_wrapper!(HTMLProgressElement, HTMLProgressElementBinding::Wrap) -generate_binding_object!(HTMLProgressElement) -generate_cacheable_wrapper!(HTMLQuoteElement, HTMLQuoteElementBinding::Wrap) -generate_binding_object!(HTMLQuoteElement) -generate_cacheable_wrapper!(HTMLScriptElement, HTMLScriptElementBinding::Wrap) -generate_binding_object!(HTMLScriptElement) -generate_cacheable_wrapper!(HTMLSourceElement, HTMLSourceElementBinding::Wrap) -generate_binding_object!(HTMLSourceElement) -generate_cacheable_wrapper!(HTMLSpanElement, HTMLSpanElementBinding::Wrap) -generate_binding_object!(HTMLSpanElement) -generate_cacheable_wrapper!(HTMLStyleElement, HTMLStyleElementBinding::Wrap) -generate_binding_object!(HTMLStyleElement) -generate_cacheable_wrapper!(HTMLTableElement, HTMLTableElementBinding::Wrap) -generate_binding_object!(HTMLTableElement) -generate_cacheable_wrapper!(HTMLTableCaptionElement, HTMLTableCaptionElementBinding::Wrap) -generate_binding_object!(HTMLTableCaptionElement) -generate_cacheable_wrapper!(HTMLTableCellElement, HTMLTableCellElementBinding::Wrap) -generate_binding_object!(HTMLTableCellElement) -generate_cacheable_wrapper!(HTMLTableColElement, HTMLTableColElementBinding::Wrap) -generate_binding_object!(HTMLTableColElement) -generate_cacheable_wrapper!(HTMLTableRowElement, HTMLTableRowElementBinding::Wrap) -generate_binding_object!(HTMLTableRowElement) -generate_cacheable_wrapper!(HTMLTableSectionElement, HTMLTableSectionElementBinding::Wrap) -generate_binding_object!(HTMLTableSectionElement) -generate_cacheable_wrapper!(HTMLTextAreaElement, HTMLTextAreaElementBinding::Wrap) -generate_binding_object!(HTMLTextAreaElement) -generate_cacheable_wrapper!(HTMLTitleElement, HTMLTitleElementBinding::Wrap) -generate_binding_object!(HTMLTitleElement) -generate_cacheable_wrapper!(HTMLTimeElement, HTMLTimeElementBinding::Wrap) -generate_binding_object!(HTMLTimeElement) -generate_cacheable_wrapper!(HTMLUListElement, HTMLUListElementBinding::Wrap) -generate_binding_object!(HTMLUListElement) - // // Element methods // |