#ifndef MWINPUT_ACTIONMANAGER_H #define MWINPUT_ACTIONMANAGER_H #include #include namespace osgViewer { class Viewer; class ScreenCaptureHandler; } namespace MWInput { class BindingsManager; class ActionManager { public: ActionManager(BindingsManager* bindingsManager, osg::ref_ptr viewer, osg::ref_ptr screenCaptureHandler); void update(float dt); void executeAction(int action); bool checkAllowedToUseItems() const; void toggleMainMenu(); void toggleConsole(); void screenshot(); void activate(); void rest(); void quickLoad(); void quickSave(); void quickKey(int index); void resetIdleTime(); float getIdleTime() const { return mTimeIdle; } bool isSneaking() const; private: void handleGuiArrowKey(int action); BindingsManager* mBindingsManager; osg::ref_ptr mViewer; osg::ref_ptr mScreenCaptureHandler; float mTimeIdle; }; } #endif