diff options
author | Ms2ger <ms2ger@gmail.com> | 2014-06-08 17:05:38 +0200 |
---|---|---|
committer | Ms2ger <ms2ger@gmail.com> | 2014-06-13 14:13:29 +0200 |
commit | b012c99e05ce6eb2bb4b55ebb3d5c1a5a3bd48f7 (patch) | |
tree | 0e4c5ae85cf0a138ede869e1d698c704bd03c4d6 /src/components/script/dom/htmlimageelement.rs | |
parent | 972c69883e2014a84a010790a88f234f9397583b (diff) | |
download | servo-b012c99e05ce6eb2bb4b55ebb3d5c1a5a3bd48f7.tar.gz servo-b012c99e05ce6eb2bb4b55ebb3d5c1a5a3bd48f7.zip |
Implement parsed 'unsigned long' attributes.
This commit is partially based on earlier work by Bruno Abinader in #2073.
Diffstat (limited to 'src/components/script/dom/htmlimageelement.rs')
-rw-r--r-- | src/components/script/dom/htmlimageelement.rs | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/components/script/dom/htmlimageelement.rs b/src/components/script/dom/htmlimageelement.rs index d2a0346c879..2d8f7fe52f2 100644 --- a/src/components/script/dom/htmlimageelement.rs +++ b/src/components/script/dom/htmlimageelement.rs @@ -2,6 +2,7 @@ * 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::attr::AttrValue; use dom::bindings::codegen::Bindings::HTMLImageElementBinding; use dom::bindings::codegen::InheritTypes::{NodeCast, ElementCast, HTMLElementCast, HTMLImageElementDerived}; use dom::bindings::js::{JS, JSRef, Temporary}; @@ -199,7 +200,7 @@ impl<'a> HTMLImageElementMethods for JSRef<'a, HTMLImageElement> { fn Hspace(&self) -> u32 { let element: &JSRef<Element> = ElementCast::from_ref(self); - from_str::<u32>(element.get_string_attribute("hspace").as_slice()).unwrap() + element.get_uint_attribute("hspace") } fn SetHspace(&self, hspace: u32) { @@ -209,7 +210,7 @@ impl<'a> HTMLImageElementMethods for JSRef<'a, HTMLImageElement> { fn Vspace(&self) -> u32 { let element: &JSRef<Element> = ElementCast::from_ref(self); - from_str::<u32>(element.get_string_attribute("vspace").as_slice()).unwrap() + element.get_uint_attribute("vspace") } fn SetVspace(&self, vspace: u32) { @@ -269,4 +270,11 @@ impl<'a> VirtualMethods for JSRef<'a, HTMLImageElement> { self_alias.update_image(None, None); } } + + fn parse_plain_attribute(&self, name: &str, value: DOMString) -> AttrValue { + match name { + "width" | "height" | "hspace" | "vspace" => AttrValue::from_u32(value, 0), + _ => self.super_type().unwrap().parse_plain_attribute(name, value), + } + } } |