3 This file is part of libmspio
4 Copyright © 2007 Mikko Rasa, Mikkosoft Productions
5 Distributed under the LGPL
7 #ifndef EVENTDISPATCHER_H_
8 #define EVENTDISPATCHER_H_
10 #include <sigc++/connection.h>
11 #include <sigc++/trackable.h>
18 Put your I/O objects inside one of these to get signaled when something happens
21 class EventDispatcher: public sigc::trackable
29 Checks for and dispatches events. If block is true, will block until events
32 void tick(bool =true);
37 sigc::connection evch_conn;
38 sigc::connection del_conn;
40 Slot(Base *o): obj(o) { }
42 typedef std::map<Base *, Slot> SlotMap;
47 void object_events_changed(PollEvent, Base *);
48 void object_deleted(Base *);