#ifndef EHANDLER #define EHANDLER typedef int Event; const Event No_Event_Support = -1; class EventHandler { public: explicit EventHandler(EventHandler* = 0, Event = No_Event_Support); virtual const bool HasEventSupport(); virtual void SetHandler(EventHandler*, Event); virtual void HandleEvent(); ~EventHandler() { }; private: EventHandler* _successor; Event _event; }; #endif //EHANDLER