use crate::*;
impl NativeEventHandler {
pub fn create<F>(event_name: NativeEventName, callback: F) -> Self
where
F: FnMut(Event) + 'static,
{
let callback_inner: Rc<RefCell<NativeEventCallbackInner>> = Rc::new(RefCell::new(
NativeEventCallbackInner::new(Box::new(callback)),
));
NativeEventHandler::new(event_name.as_str(), callback_inner)
}
pub fn handle(&self, event: Event) {
let mut inner: RefMut<NativeEventCallbackInner> = self.get_callback().borrow_mut();
(inner.get_mut_callback())(event);
}
}