mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-01-10 06:39:49 +00:00
67 lines
1.3 KiB
C++
67 lines
1.3 KiB
C++
#ifndef _MWINPUT_MWINPUTMANAGERIMP_H
|
|
#define _MWINPUT_MWINPUTMANAGERIMP_H
|
|
|
|
#include "../mwgui/mode.hpp"
|
|
|
|
#include <components/settings/settings.hpp>
|
|
|
|
#include "../mwbase/inputmanager.hpp"
|
|
|
|
namespace OEngine
|
|
{
|
|
namespace Render
|
|
{
|
|
class OgreRenderer;
|
|
}
|
|
}
|
|
|
|
namespace MWWorld
|
|
{
|
|
class Player;
|
|
}
|
|
|
|
namespace MWBase
|
|
{
|
|
class WindowManager;
|
|
}
|
|
|
|
namespace OMW
|
|
{
|
|
class Engine;
|
|
}
|
|
|
|
namespace MWInput
|
|
{
|
|
// Forward declaration of the real implementation.
|
|
class InputImpl;
|
|
|
|
/* Class that handles all input and key bindings for OpenMW.
|
|
|
|
This class is just an interface. All the messy details are in
|
|
inputmanager.cpp.
|
|
*/
|
|
struct MWInputManager : public MWBase::InputManager
|
|
{
|
|
InputImpl *impl;
|
|
|
|
public:
|
|
MWInputManager(OEngine::Render::OgreRenderer &_ogre,
|
|
MWWorld::Player&_player,
|
|
MWBase::WindowManager &_windows,
|
|
bool debug,
|
|
OMW::Engine& engine);
|
|
virtual ~MWInputManager();
|
|
|
|
void update(float duration);
|
|
|
|
virtual void changeInputMode(bool guiMode);
|
|
|
|
virtual void processChangedSettings(const Settings::CategorySettingVector& changed);
|
|
|
|
virtual void setDragDrop(bool dragDrop);
|
|
|
|
virtual void toggleControlSwitch (const std::string& sw, bool value);
|
|
};
|
|
}
|
|
#endif
|