A simple library to register listeners for specific events inspired by rust-emitter.
```rust extern crate event_dispatcher;
use event_dispatcher::{Event, Listener, Dispatcher, Dispatchable};
struct TestEvent { stopped: bool, data: String }
impl TestEvent { pub fn new(eventdata: String) -> TestEvent { TestEvent { stopped: false, data: eventdata } } }
impl Event
fn stop_propagation(&mut self){
self.stopped = true;
}
}
// the listener fn eventtest(event: &TestEvent) { println!("called \"eventtest\""); }
fn main() { let event = TestEvent::new("myevent".tostring()); let mut dispatcher = Dispatcher::new(); dispatcher.addlistener(&event, Listener::new(myevent_test));
dispatcher.dispatch(&event);
}
```