diff options
author | Yusuke Suzuki <utatane.tea@gmail.com> | 2013-08-08 01:48:02 +0900 |
---|---|---|
committer | Josh Matthews <josh@joshmatthews.net> | 2013-08-09 16:41:25 -0400 |
commit | 6f2c24eca7e944c904360b66521c453bb22fa5dc (patch) | |
tree | 4052ee0c0991d851c42470270b04666c6778bbe9 /src | |
parent | 2ab430b9b15b7876ddd4fbbf7a261776030811fe (diff) | |
download | servo-6f2c24eca7e944c904360b66521c453bb22fa5dc.tar.gz servo-6f2c24eca7e944c904360b66521c453bb22fa5dc.zip |
Generate bindings for HTMLTitleElement
Diffstat (limited to 'src')
-rw-r--r-- | src/components/script/dom/bindings/codegen/Bindings.conf | 1 | ||||
-rw-r--r-- | src/components/script/dom/bindings/codegen/CodegenRust.py | 1 | ||||
-rw-r--r-- | src/components/script/dom/bindings/codegen/HTMLTitleElement.webidl | 13 | ||||
-rw-r--r-- | src/components/script/dom/bindings/node.rs | 4 | ||||
-rw-r--r-- | src/components/script/dom/bindings/utils.rs | 2 | ||||
-rw-r--r-- | src/components/script/dom/document.rs | 3 | ||||
-rw-r--r-- | src/components/script/dom/element.rs | 6 | ||||
-rw-r--r-- | src/components/script/dom/htmltitleelement.rs | 19 | ||||
-rw-r--r-- | src/components/script/html/hubbub_html_parser.rs | 5 | ||||
-rw-r--r-- | src/components/script/script.rc | 2 |
10 files changed, 48 insertions, 8 deletions
diff --git a/src/components/script/dom/bindings/codegen/Bindings.conf b/src/components/script/dom/bindings/codegen/Bindings.conf index 10a8a0ebf84..a26b2d22c5f 100644 --- a/src/components/script/dom/bindings/codegen/Bindings.conf +++ b/src/components/script/dom/bindings/codegen/Bindings.conf @@ -565,6 +565,7 @@ addHTMLElement('HTMLTableElement') addHTMLElement('HTMLTableRowElement') addHTMLElement('HTMLTableSectionElement') addHTMLElement('HTMLTextAreaElement') +addHTMLElement('HTMLTitleElement') addHTMLElement('HTMLUListElement') # If you add one of these, you need to make sure nsDOMQS.h has the relevant diff --git a/src/components/script/dom/bindings/codegen/CodegenRust.py b/src/components/script/dom/bindings/codegen/CodegenRust.py index 58e78fd3800..5af91832b24 100644 --- a/src/components/script/dom/bindings/codegen/CodegenRust.py +++ b/src/components/script/dom/bindings/codegen/CodegenRust.py @@ -4633,6 +4633,7 @@ class CGBindingRoot(CGThing): 'dom::htmltablerowelement::HTMLTableRowElement', 'dom::htmltablesectionelement::HTMLTableSectionElement', 'dom::htmltextareaelement::HTMLTextAreaElement', + 'dom::htmltitleelement::HTMLTitleElement', #XXXyusukesuzuki 'dom::htmlulistelement::HTMLUListElement', 'dom::bindings::utils::*', 'dom::bindings::conversions::*', diff --git a/src/components/script/dom/bindings/codegen/HTMLTitleElement.webidl b/src/components/script/dom/bindings/codegen/HTMLTitleElement.webidl new file mode 100644 index 00000000000..e695d8421a5 --- /dev/null +++ b/src/components/script/dom/bindings/codegen/HTMLTitleElement.webidl @@ -0,0 +1,13 @@ +/* -*- 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/#the-title-element + */ + +interface HTMLTitleElement : HTMLElement { + [SetterThrows] + attribute DOMString text; +}; diff --git a/src/components/script/dom/bindings/node.rs b/src/components/script/dom/bindings/node.rs index 3a4b01d2b6b..3c824a07e24 100644 --- a/src/components/script/dom/bindings/node.rs +++ b/src/components/script/dom/bindings/node.rs @@ -10,7 +10,7 @@ use dom::element::{HTMLElementTypeId}; use dom::element::{HTMLHeadElementTypeId, HTMLHtmlElementTypeId, HTMLAnchorElementTypeId}; use dom::element::{HTMLDivElementTypeId, HTMLImageElementTypeId, HTMLSpanElementTypeId}; use dom::element::{HTMLBodyElementTypeId, HTMLHRElementTypeId, HTMLIframeElementTypeId}; -use dom::element::{HTMLBRElementTypeId}; +use dom::element::{HTMLBRElementTypeId, HTMLTitleElementTypeId}; use dom::element::{HTMLParagraphElementTypeId, HTMLScriptElementTypeId, HTMLMetaElementTypeId}; use dom::element::{HTMLOListElementTypeId, HTMLStyleElementTypeId, HTMLTableElementTypeId}; use dom::element::{HTMLTableRowElementTypeId, HTMLTableSectionElementTypeId}; @@ -32,6 +32,7 @@ use dom::htmltableelement::HTMLTableElement; use dom::htmltablerowelement::HTMLTableRowElement; use dom::htmltablesectionelement::HTMLTableSectionElement; use dom::htmltextareaelement::HTMLTextAreaElement; +use dom::htmltitleelement::HTMLTitleElement; use dom::htmlulistelement::HTMLUListElement; use dom::node::{AbstractNode, Node, ElementNodeTypeId, TextNodeTypeId, CommentNodeTypeId}; use dom::node::{DoctypeNodeTypeId, ScriptView, Text}; @@ -118,6 +119,7 @@ pub fn create(cx: *JSContext, node: &mut AbstractNode<ScriptView>) -> *JSObject ElementNodeTypeId(HTMLTableRowElementTypeId) => generate_element!(HTMLTableRowElement), ElementNodeTypeId(HTMLTableSectionElementTypeId) => generate_element!(HTMLTableSectionElement), ElementNodeTypeId(HTMLTextAreaElementTypeId) => generate_element!(HTMLTextAreaElement), + ElementNodeTypeId(HTMLTitleElementTypeId) => generate_element!(HTMLTitleElement), ElementNodeTypeId(HTMLUListElementTypeId) => generate_element!(HTMLUListElement), ElementNodeTypeId(_) => element::create(cx, node).ptr, CommentNodeTypeId | diff --git a/src/components/script/dom/bindings/utils.rs b/src/components/script/dom/bindings/utils.rs index 5389d869241..43bffa6d750 100644 --- a/src/components/script/dom/bindings/utils.rs +++ b/src/components/script/dom/bindings/utils.rs @@ -617,7 +617,7 @@ pub extern fn ThrowingConstructor(_cx: *JSContext, _argc: uint, _vp: *JSVal) -> } pub fn initialize_global(global: *JSObject) { - let protoArray = @mut ([0 as *JSObject, ..50]); + let protoArray = @mut ([0 as *JSObject, ..51]); assert!(protoArray.len() == PrototypeList::id::_ID_Count as uint); unsafe { //XXXjdm we should be storing the box pointer instead of the inner diff --git a/src/components/script/dom/document.rs b/src/components/script/dom/document.rs index af7b5c7ff23..043eec3646a 100644 --- a/src/components/script/dom/document.rs +++ b/src/components/script/dom/document.rs @@ -5,7 +5,7 @@ use dom::bindings::codegen::DocumentBinding; use dom::bindings::utils::{DOMString, WrapperCache, ErrorResult, null_string, str}; use dom::bindings::utils::{BindingObject, CacheableWrapper, rust_box, DerivedWrapper}; -use dom::element::{Element, HTMLHtmlElement, HTMLTitleElement}; +use dom::element::{Element, HTMLHtmlElement}; use dom::element::{HTMLHtmlElementTypeId, HTMLHeadElementTypeId, HTMLTitleElementTypeId}; use dom::event::Event; use dom::htmlcollection::HTMLCollection; @@ -14,6 +14,7 @@ use dom::htmlelement::HTMLElement; use dom::node::{AbstractNode, ScriptView, Node, ElementNodeTypeId, Text}; use dom::window::Window; use dom::windowproxy::WindowProxy; +use dom::htmltitleelement::HTMLTitleElement; use js::jsapi::{JS_AddObjectRoot, JS_RemoveObjectRoot, JSObject, JSContext, JSVal}; use js::glue::RUST_OBJECT_TO_JSVAL; diff --git a/src/components/script/dom/element.rs b/src/components/script/dom/element.rs index ab30003f72c..5ba5db7b61d 100644 --- a/src/components/script/dom/element.rs +++ b/src/components/script/dom/element.rs @@ -13,7 +13,7 @@ use dom::bindings::codegen::{HTMLImageElementBinding, HTMLOListElementBinding}; use dom::bindings::codegen::{HTMLMetaElementBinding, HTMLStyleElementBinding}; use dom::bindings::codegen::{HTMLTableElementBinding, HTMLTableRowElementBinding}; use dom::bindings::codegen::{HTMLTableSectionElementBinding, HTMLTextAreaElementBinding}; -use dom::bindings::codegen::{HTMLUListElementBinding}; +use dom::bindings::codegen::{HTMLTitleElementBinding, HTMLUListElementBinding}; use dom::bindings::utils::{null_string, str}; use dom::bindings::utils::{BindingObject, CacheableWrapper, DOMString, ErrorResult, WrapperCache}; use dom::clientrect::ClientRect; @@ -35,6 +35,7 @@ use dom::htmltablerowelement::HTMLTableRowElement; use dom::htmlulistelement::HTMLUListElement; use dom::htmltablesectionelement::HTMLTableSectionElement; use dom::htmltextareaelement::HTMLTextAreaElement; +use dom::htmltitleelement::HTMLTitleElement; use dom::node::{ElementNodeTypeId, Node, ScriptView, AbstractNode}; use layout_interface::{ContentBoxQuery, ContentBoxResponse, ContentBoxesQuery}; use layout_interface::{ContentBoxesResponse}; @@ -124,7 +125,6 @@ pub struct HTMLSelectElement { parent: HTMLElement } pub struct HTMLSmallElement { parent: HTMLElement } pub struct HTMLSpanElement { parent: HTMLElement } pub struct HTMLTableCellElement { parent: HTMLElement } -pub struct HTMLTitleElement { parent: HTMLElement } pub struct UnknownElement { parent: HTMLElement } impl HTMLHtmlElement { @@ -217,6 +217,8 @@ generate_cacheable_wrapper!(HTMLTableSectionElement, HTMLTableSectionElementBind 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!(HTMLUListElement, HTMLUListElementBinding::Wrap) generate_binding_object!(HTMLUListElement) diff --git a/src/components/script/dom/htmltitleelement.rs b/src/components/script/dom/htmltitleelement.rs new file mode 100644 index 00000000000..aa5c920dc18 --- /dev/null +++ b/src/components/script/dom/htmltitleelement.rs @@ -0,0 +1,19 @@ +/* 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::htmlelement::HTMLElement; + +pub struct HTMLTitleElement { + parent: HTMLElement, +} + +impl HTMLTitleElement { + pub fn Text(&self) -> DOMString { + null_string + } + + pub fn SetText(&mut self, _text: &DOMString, _rv: &mut ErrorResult) { + } +} diff --git a/src/components/script/html/hubbub_html_parser.rs b/src/components/script/html/hubbub_html_parser.rs index c14a3ebb0ea..845c53a2b68 100644 --- a/src/components/script/html/hubbub_html_parser.rs +++ b/src/components/script/html/hubbub_html_parser.rs @@ -22,9 +22,7 @@ use dom::element::{HTMLDivElement, HTMLFontElement, HTMLFormElement, HTMLInputElement, HTMLLinkElement, HTMLOptionElement, HTMLParagraphElement, HTMLListItemElement, HTMLSelectElement, HTMLSmallElement, - HTMLSpanElement, - HTMLTableCellElement, - HTMLTitleElement}; + HTMLSpanElement, HTMLTableCellElement}; use dom::element::{HTMLHeadingElementTypeId, Heading1, Heading2, Heading3, Heading4, Heading5, Heading6}; use dom::htmlbrelement::HTMLBRElement; @@ -41,6 +39,7 @@ use dom::htmltableelement::HTMLTableElement; use dom::htmltablerowelement::HTMLTableRowElement; use dom::htmltablesectionelement::HTMLTableSectionElement; use dom::htmltextareaelement::HTMLTextAreaElement; +use dom::htmltitleelement::HTMLTitleElement; use dom::htmlulistelement::HTMLUListElement; use dom::element::{Element, Attr}; use dom::htmlelement::HTMLElement; diff --git a/src/components/script/script.rc b/src/components/script/script.rc index 7ad199013be..78cc617e0dd 100644 --- a/src/components/script/script.rc +++ b/src/components/script/script.rc @@ -64,6 +64,7 @@ pub mod dom { pub mod HTMLTableRowElementBinding; pub mod HTMLTableSectionElementBinding; pub mod HTMLTextAreaElementBinding; + pub mod HTMLTitleElementBinding; pub mod HTMLUListElementBinding; pub mod MouseEventBinding; pub mod NodeBinding; @@ -102,6 +103,7 @@ pub mod dom { pub mod htmltablerowelement; pub mod htmltablesectionelement; pub mod htmltextareaelement; + pub mod htmltitleelement; pub mod htmlulistelement; pub mod mouseevent; pub mod node; |