diff options
author | Sankha Narayan Guria <sankha93@gmail.com> | 2014-02-27 03:31:05 +0530 |
---|---|---|
committer | Sankha Narayan Guria <sankha93@gmail.com> | 2014-02-27 03:31:05 +0530 |
commit | 1e9fec9172364346937f375e315e1ce745662611 (patch) | |
tree | a55173568e6dd6a8b4cb4dfcc42ed81204d49874 /src/components/script/dom/formdata.rs | |
parent | 47e6e6ec8f2dfbd56e50f9f2ec2762b85087d948 (diff) | |
parent | da16e54243e256dee927f720ce6b9903b62ec14e (diff) | |
download | servo-1e9fec9172364346937f375e315e1ce745662611.tar.gz servo-1e9fec9172364346937f375e315e1ce745662611.zip |
Merge master into this branch
Diffstat (limited to 'src/components/script/dom/formdata.rs')
-rw-r--r-- | src/components/script/dom/formdata.rs | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/src/components/script/dom/formdata.rs b/src/components/script/dom/formdata.rs index b446c44a7d7..3beb7e996aa 100644 --- a/src/components/script/dom/formdata.rs +++ b/src/components/script/dom/formdata.rs @@ -4,27 +4,30 @@ use dom::bindings::utils::{Fallible, Reflectable, Reflector, reflect_dom_object}; use dom::bindings::codegen::FormDataBinding; +use dom::bindings::js::JS; use dom::blob::Blob; -use dom::node::AbstractNode; +use dom::htmlformelement::HTMLFormElement; use dom::window::Window; use servo_util::str::DOMString; use std::hashmap::HashMap; +#[deriving(Encodable)] enum FormDatum { StringData(DOMString), - BlobData { blob: @mut Blob, name: DOMString } + BlobData { blob: JS<Blob>, name: DOMString } } +#[deriving(Encodable)] pub struct FormData { data: HashMap<DOMString, FormDatum>, reflector_: Reflector, - window: @mut Window, - form: Option<AbstractNode> + window: JS<Window>, + form: Option<JS<HTMLFormElement>> } impl FormData { - pub fn new_inherited(form: Option<AbstractNode>, window: @mut Window) -> FormData { + pub fn new_inherited(form: Option<JS<HTMLFormElement>>, window: JS<Window>) -> FormData { FormData { data: HashMap::new(), reflector_: Reflector::new(), @@ -33,18 +36,18 @@ impl FormData { } } - pub fn new(form: Option<AbstractNode>, window: @mut Window) -> @mut FormData { - reflect_dom_object(@mut FormData::new_inherited(form, window), window, FormDataBinding::Wrap) + pub fn new(form: Option<JS<HTMLFormElement>>, window: &JS<Window>) -> JS<FormData> { + reflect_dom_object(~FormData::new_inherited(form, window.clone()), window.get(), FormDataBinding::Wrap) } - pub fn Constructor(window: @mut Window, form: Option<AbstractNode>) - -> Fallible<@mut FormData> { + pub fn Constructor(window: &JS<Window>, form: Option<JS<HTMLFormElement>>) + -> Fallible<JS<FormData>> { Ok(FormData::new(form, window)) } - pub fn Append(&mut self, name: DOMString, value: @mut Blob, filename: Option<DOMString>) { + pub fn Append(&mut self, name: DOMString, value: &JS<Blob>, filename: Option<DOMString>) { let blob = BlobData { - blob: value, + blob: value.clone(), name: filename.unwrap_or(~"default") }; self.data.insert(name.clone(), blob); |