From 5ec370e5f91ad8b5ed7717eb93f4e3240ea4e784 Mon Sep 17 00:00:00 2001 From: crupest Date: Fri, 14 Jun 2019 00:44:14 +0800 Subject: ... --- include/cru/platform/native/native_event.hpp | 12 ++++++++++++ include/cru/platform/native/native_window.hpp | 23 ++++++++++++----------- 2 files changed, 24 insertions(+), 11 deletions(-) create mode 100644 include/cru/platform/native/native_event.hpp (limited to 'include/cru/platform/native') diff --git a/include/cru/platform/native/native_event.hpp b/include/cru/platform/native/native_event.hpp new file mode 100644 index 00000000..21db5f90 --- /dev/null +++ b/include/cru/platform/native/native_event.hpp @@ -0,0 +1,12 @@ +#pragma once +#include "cru/common/base.hpp" + +#include "basic_types.hpp" +#include "cru/common/ui_base.hpp" + +namespace cru::platform::native { +struct NativeMouseButtonEventArgs { + MouseButton button; + ui::Point point; +}; +} // namespace cru::platform::native diff --git a/include/cru/platform/native/native_window.hpp b/include/cru/platform/native/native_window.hpp index 3a0fd3e1..3e83a531 100644 --- a/include/cru/platform/native/native_window.hpp +++ b/include/cru/platform/native/native_window.hpp @@ -4,6 +4,7 @@ #include "basic_types.hpp" #include "cru/common/event.hpp" #include "cru/common/ui_base.hpp" +#include "native_event.hpp" namespace cru::platform::graph { struct IPainter; @@ -36,15 +37,15 @@ struct INativeWindow : public virtual Interface { virtual graph::IPainter* BeginPaint() = 0; - virtual Event<>* DestroyEvent() = 0; - virtual Event* ResizeEvent() = 0; - virtual Event<>* PaintEvent() = 0; - virtual Event* FocusEvent() = 0; - virtual Event* MouseEnterLeaveEvent() = 0; - virtual Event* MouseMoveEvent() = 0; - virtual Event* MouseDownEvent() = 0; - virtual Event* MouseUpEvent() = 0; - virtual Event* KeyDownEvent() = 0; - virtual Event* KeyUpEvent() = 0; + virtual IEvent* DestroyEvent() = 0; + virtual IEvent* PaintEvent() = 0; + virtual IEvent* ResizeEvent() = 0; + virtual IEvent* FocusEvent() = 0; + virtual IEvent* MouseEnterLeaveEvent() = 0; + virtual IEvent* MouseMoveEvent() = 0; + virtual IEvent* MouseDownEvent() = 0; + virtual IEvent* MouseUpEvent() = 0; + virtual IEvent* KeyDownEvent() = 0; + virtual IEvent* KeyUpEvent() = 0; }; -} // namespace cru::platform::ui +} // namespace cru::platform::native -- cgit v1.2.3