#ifndef __ENGINE_H__ #define __ENGINE_H__ #include #include #include #include #include #include namespace mogltk { class engine : public Base { public: class keyevent : public Base { public: virtual void down(SDL_keysym); virtual void up(SDL_keysym); }; static int setup() throw(GeneralException); static int postsetup() throw(GeneralException); static int GetInited(); static SDL_RWops * RWFromHandle(Handle *) throw (GeneralException); static void pollevents() throw (GeneralException); static void setappactive(bool); static bool getappactive(); static void setcursorvisible(bool); static bool getcursorvisible(); static bool quitrequested(); static int mouseX(); static int mouseY(); static int mouseZ(); static int mousebuttons(); static double FPS(); static void lockmouse(); static void unlockmouse(); static void setkeyevent(keyevent *); static glbase * glbase_o; static base * base_o; static widget * root; private: static bool inited; static bool postsetuped; static bool appactive; static bool cursorvisible; static bool quitrequest; static int mx; static int my; static int mz; static int mbuttons; static int frames; static double curfps; static Uint32 curticks; static int locked; static keyevent * keyevent_h; static void updatemouse(); }; }; #endif