You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.4 KiB
C++
49 lines
1.4 KiB
C++
#ifndef GAME_MWBASE_INPUTMANAGER_H
|
|
#define GAME_MWBASE_INPUTMANAGER_H
|
|
|
|
#include <string>
|
|
|
|
#include <components/settings/settings.hpp>
|
|
|
|
namespace MWBase
|
|
{
|
|
/// \brief Interface for input manager (implemented in MWInput)
|
|
class InputManager
|
|
{
|
|
InputManager (const InputManager&);
|
|
///< not implemented
|
|
|
|
InputManager& operator= (const InputManager&);
|
|
///< not implemented
|
|
|
|
public:
|
|
|
|
InputManager() {}
|
|
|
|
/// Clear all savegame-specific data
|
|
virtual void clear() = 0;
|
|
|
|
virtual ~InputManager() {}
|
|
|
|
virtual void update(float dt, bool disableControls, bool disableEvents=false) = 0;
|
|
|
|
virtual void changeInputMode(bool guiMode) = 0;
|
|
|
|
virtual void processChangedSettings(const Settings::CategorySettingVector& changed) = 0;
|
|
|
|
virtual void setDragDrop(bool dragDrop) = 0;
|
|
|
|
virtual void toggleControlSwitch (const std::string& sw, bool value) = 0;
|
|
virtual bool getControlSwitch (const std::string& sw) = 0;
|
|
|
|
virtual std::string getActionDescription (int action) = 0;
|
|
virtual std::string getActionBindingName (int action) = 0;
|
|
virtual std::vector<int> getActionSorting () = 0;
|
|
virtual int getNumActions() = 0;
|
|
virtual void enableDetectingBindingMode (int action) = 0;
|
|
virtual void resetToDefaultBindings() = 0;
|
|
};
|
|
}
|
|
|
|
#endif
|