diff options
Diffstat (limited to 'source/modules/asura-core/Input/InputEvent.h')
-rw-r--r-- | source/modules/asura-core/Input/InputEvent.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/source/modules/asura-core/Input/InputEvent.h b/source/modules/asura-core/Input/InputEvent.h index 2c5b84b..d7643b6 100644 --- a/source/modules/asura-core/Input/InputEvent.h +++ b/source/modules/asura-core/Input/InputEvent.h @@ -1,16 +1,50 @@ #ifndef _ASURA_ENGINE_INPUT_EVENT_H_ #define _ASURA_ENGINE_INPUT_EVENT_H_ +#include <asura-base/Configure.h> #include <asura-utils/Classes.h> +#include <asura-utils/Math/Vector2.hpp> + +#include <windows.h> +#include <vector> namespace_begin(AsuraEngine) namespace_begin(Input) +// еĿͻ¼̡ػ桢 struct InputEvent { InputEvent(); ~InputEvent(); +#if ASURA_EDITOR + + bool Open(HWND window); + void Close(void); + + bool GetJoystickNames(std::vector<std::string> &names); + + bool Activate(bool active); + bool ToggleFullscreen(bool fullscreen, HWND window); + + bool Process(bool discard); + LRESULT OnKey(HWND window, UINT message, WPARAM wParam, LPARAM lParam); + LRESULT OnInput(HWND window, UINT message, WPARAM wParam, LPARAM lParam); + LRESULT OnDeviceChange(LPCWSTR name, bool add); + + static bool ConvertPositionToClientAreaCoord(HWND activeWindow, POINT position, AEMath::Vector2f& newPos); + +#elif ASURA_RUNNER + + bool Open(); + +#endif + + enum + { + + }; + }; //InputEvent ConvertInputEvent(); |