From 85322feaa9f646bf9e6f35f57f6d08244b298a46 Mon Sep 17 00:00:00 2001 From: crupest Date: Sun, 29 Mar 2020 23:10:00 +0800 Subject: ... --- include/cru/win/native/keyboard.hpp | 8 ++++++++ include/cru/win/native/window.hpp | 24 ++++++++++++++++-------- 2 files changed, 24 insertions(+), 8 deletions(-) create mode 100644 include/cru/win/native/keyboard.hpp (limited to 'include/cru/win/native') diff --git a/include/cru/win/native/keyboard.hpp b/include/cru/win/native/keyboard.hpp new file mode 100644 index 00000000..bf59e519 --- /dev/null +++ b/include/cru/win/native/keyboard.hpp @@ -0,0 +1,8 @@ +#pragma once +#include "../win_pre_config.hpp" + +#include "cru/platform/native/keyboard.hpp" + +namespace cru::platform::native::win { +KeyCode VirtualKeyToKeyCode(int virtual_key); +} diff --git a/include/cru/win/native/window.hpp b/include/cru/win/native/window.hpp index d5f41e47..819fbfd9 100644 --- a/include/cru/win/native/window.hpp +++ b/include/cru/win/native/window.hpp @@ -73,8 +73,12 @@ class WinNativeWindow : public WinNativeResource, public virtual INativeWindow { override { return &mouse_up_event_; } - IEvent* KeyDownEvent() override { return &key_down_event_; } - IEvent* KeyUpEvent() override { return &key_up_event_; } + IEvent* KeyDownEvent() override { + return &key_down_event_; + } + IEvent* KeyUpEvent() override { + return &key_up_event_; + } IEvent* CharEvent() override { return &char_event_; }; IEvent* NativeMessageEvent() { @@ -106,12 +110,16 @@ class WinNativeWindow : public WinNativeResource, public virtual INativeWindow { void OnMouseMoveInternal(POINT point); void OnMouseLeaveInternal(); - void OnMouseDownInternal(platform::native::MouseButton button, POINT point); - void OnMouseUpInternal(platform::native::MouseButton button, POINT point); + void OnMouseDownInternal(platform::native::MouseButton button, POINT point, + platform::native::KeyModifier modifier); + void OnMouseUpInternal(platform::native::MouseButton button, POINT point, + platform::native::KeyModifier modifier); void OnMouseWheelInternal(short delta, POINT point); - void OnKeyDownInternal(int virtual_code); - void OnKeyUpInternal(int virtual_code); + void OnKeyDownInternal(int virtual_code, + platform::native::KeyModifier modifier); + void OnKeyUpInternal(int virtual_code, + platform::native::KeyModifier modifier); void OnCharInternal(wchar_t c); void OnActivatedInternal(); @@ -147,8 +155,8 @@ class WinNativeWindow : public WinNativeResource, public virtual INativeWindow { Event mouse_move_event_; Event mouse_down_event_; Event mouse_up_event_; - Event key_down_event_; - Event key_up_event_; + Event key_down_event_; + Event key_up_event_; Event char_event_; Event native_message_event_; -- cgit v1.2.3