mirror of
https://github.com/servo/servo.git
synced 2025-08-05 13:40:08 +01:00
Enable inline event handlers for XHR, and add most progressevent calls
This commit is contained in:
parent
43beda87b2
commit
6f728cb2ca
5 changed files with 196 additions and 21 deletions
|
@ -3,8 +3,11 @@
|
|||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
use dom::bindings::codegen::InheritTypes::XMLHttpRequestEventTargetDerived;
|
||||
use dom::bindings::codegen::EventHandlerBinding::EventHandlerNonNull;
|
||||
use dom::bindings::codegen::InheritTypes::EventTargetCast;
|
||||
use dom::bindings::js::JSRef;
|
||||
use dom::bindings::utils::{Reflectable, Reflector};
|
||||
use dom::eventtarget::{EventTarget, XMLHttpRequestTargetTypeId};
|
||||
use dom::eventtarget::{EventTarget, EventTargetHelpers, XMLHttpRequestTargetTypeId};
|
||||
use dom::xmlhttprequest::XMLHttpRequestId;
|
||||
|
||||
#[deriving(Encodable)]
|
||||
|
@ -40,4 +43,90 @@ impl Reflectable for XMLHttpRequestEventTarget {
|
|||
}
|
||||
|
||||
pub trait XMLHttpRequestEventTargetMethods {
|
||||
fn GetOnloadstart(&self) -> Option<EventHandlerNonNull>;
|
||||
fn SetOnloadstart(&mut self, listener: Option<EventHandlerNonNull>);
|
||||
fn GetOnprogress(&self) -> Option<EventHandlerNonNull>;
|
||||
fn SetOnprogress(&mut self, listener: Option<EventHandlerNonNull>);
|
||||
fn GetOnabort(&self) -> Option<EventHandlerNonNull>;
|
||||
fn SetOnabort(&mut self, listener: Option<EventHandlerNonNull>);
|
||||
fn GetOnerror(&self) -> Option<EventHandlerNonNull>;
|
||||
fn SetOnerror(&mut self, listener: Option<EventHandlerNonNull>);
|
||||
fn GetOnload(&self) -> Option<EventHandlerNonNull>;
|
||||
fn SetOnload(&mut self, listener: Option<EventHandlerNonNull>);
|
||||
fn GetOntimeout(&self) -> Option<EventHandlerNonNull>;
|
||||
fn SetOntimeout(&mut self, listener: Option<EventHandlerNonNull>);
|
||||
fn GetOnloadend(&self) -> Option<EventHandlerNonNull>;
|
||||
fn SetOnloadend(&mut self, listener: Option<EventHandlerNonNull>);
|
||||
}
|
||||
|
||||
impl<'a> XMLHttpRequestEventTargetMethods for JSRef<'a, XMLHttpRequestEventTarget> {
|
||||
fn GetOnloadstart(&self) -> Option<EventHandlerNonNull> {
|
||||
let eventtarget: &JSRef<EventTarget> = EventTargetCast::from_ref(self);
|
||||
eventtarget.get_event_handler_common("loadstart")
|
||||
}
|
||||
|
||||
fn SetOnloadstart(&mut self, listener: Option<EventHandlerNonNull>) {
|
||||
let eventtarget: &mut JSRef<EventTarget> = EventTargetCast::from_mut_ref(self);
|
||||
eventtarget.set_event_handler_common("loadstart", listener)
|
||||
}
|
||||
|
||||
fn GetOnprogress(&self) -> Option<EventHandlerNonNull> {
|
||||
let eventtarget: &JSRef<EventTarget> = EventTargetCast::from_ref(self);
|
||||
eventtarget.get_event_handler_common("progress")
|
||||
}
|
||||
|
||||
fn SetOnprogress(&mut self, listener: Option<EventHandlerNonNull>) {
|
||||
let eventtarget: &mut JSRef<EventTarget> = EventTargetCast::from_mut_ref(self);
|
||||
eventtarget.set_event_handler_common("progress", listener)
|
||||
}
|
||||
|
||||
fn GetOnabort(&self) -> Option<EventHandlerNonNull> {
|
||||
let eventtarget: &JSRef<EventTarget> = EventTargetCast::from_ref(self);
|
||||
eventtarget.get_event_handler_common("abort")
|
||||
}
|
||||
|
||||
fn SetOnabort(&mut self, listener: Option<EventHandlerNonNull>) {
|
||||
let eventtarget: &mut JSRef<EventTarget> = EventTargetCast::from_mut_ref(self);
|
||||
eventtarget.set_event_handler_common("abort", listener)
|
||||
}
|
||||
|
||||
fn GetOnerror(&self) -> Option<EventHandlerNonNull> {
|
||||
let eventtarget: &JSRef<EventTarget> = EventTargetCast::from_ref(self);
|
||||
eventtarget.get_event_handler_common("error")
|
||||
}
|
||||
|
||||
fn SetOnerror(&mut self, listener: Option<EventHandlerNonNull>) {
|
||||
let eventtarget: &mut JSRef<EventTarget> = EventTargetCast::from_mut_ref(self);
|
||||
eventtarget.set_event_handler_common("error", listener)
|
||||
}
|
||||
|
||||
fn GetOnload(&self) -> Option<EventHandlerNonNull> {
|
||||
let eventtarget: &JSRef<EventTarget> = EventTargetCast::from_ref(self);
|
||||
eventtarget.get_event_handler_common("load")
|
||||
}
|
||||
|
||||
fn SetOnload(&mut self, listener: Option<EventHandlerNonNull>) {
|
||||
let eventtarget: &mut JSRef<EventTarget> = EventTargetCast::from_mut_ref(self);
|
||||
eventtarget.set_event_handler_common("load", listener)
|
||||
}
|
||||
|
||||
fn GetOntimeout(&self) -> Option<EventHandlerNonNull> {
|
||||
let eventtarget: &JSRef<EventTarget> = EventTargetCast::from_ref(self);
|
||||
eventtarget.get_event_handler_common("timeout")
|
||||
}
|
||||
|
||||
fn SetOntimeout(&mut self, listener: Option<EventHandlerNonNull>) {
|
||||
let eventtarget: &mut JSRef<EventTarget> = EventTargetCast::from_mut_ref(self);
|
||||
eventtarget.set_event_handler_common("timeout", listener)
|
||||
}
|
||||
|
||||
fn GetOnloadend(&self) -> Option<EventHandlerNonNull> {
|
||||
let eventtarget: &JSRef<EventTarget> = EventTargetCast::from_ref(self);
|
||||
eventtarget.get_event_handler_common("loadend")
|
||||
}
|
||||
|
||||
fn SetOnloadend(&mut self, listener: Option<EventHandlerNonNull>) {
|
||||
let eventtarget: &mut JSRef<EventTarget> = EventTargetCast::from_mut_ref(self);
|
||||
eventtarget.set_event_handler_common("loadend", listener)
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue