#ifndef OVERLAY #define OVERLAY #include namespace Engine { class OverlayBase { public: OverlayBase () {}; virtual ~OverlayBase() {}; virtual bool OnKeyDown (const SDL_keysym &keysym) { return false; }; virtual bool OnKeyUp (const SDL_keysym &keysym) { return false; }; virtual bool OnMouseButtonUp (Uint8 button, Uint16 xpos, Uint16 ypos) { return false; }; virtual bool OnMouseButtonDown (Uint8 button, Uint16 xpos, Uint16 ypos) { return false; }; virtual void Draw () = 0; void _strange_function_for_vtable () {}; }; } #endif /* OVERLAY */