aboutsummaryrefslogtreecommitdiff
path: root/include/cru/platform/gui/xcb/Window.h
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-09-09 20:15:44 +0800
committerYuqian Yang <crupest@crupest.life>2025-09-09 20:15:44 +0800
commit20fc1e5595e4f498d297c09934dbfcc005982f54 (patch)
tree0fdc263a12b7a9996cbe7dfa2b4ff7d43b0e0ce8 /include/cru/platform/gui/xcb/Window.h
parentf761d4ef25ab0e695c79ae5c2ede1f850f1607af (diff)
downloadcru-20fc1e5595e4f498d297c09934dbfcc005982f54.tar.gz
cru-20fc1e5595e4f498d297c09934dbfcc005982f54.tar.bz2
cru-20fc1e5595e4f498d297c09934dbfcc005982f54.zip
Implement mouse button events.
Diffstat (limited to 'include/cru/platform/gui/xcb/Window.h')
-rw-r--r--include/cru/platform/gui/xcb/Window.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/include/cru/platform/gui/xcb/Window.h b/include/cru/platform/gui/xcb/Window.h
index 1676dced..016b5717 100644
--- a/include/cru/platform/gui/xcb/Window.h
+++ b/include/cru/platform/gui/xcb/Window.h
@@ -71,9 +71,9 @@ class XcbWindow : public XcbResource, public virtual INativeWindow {
IEvent<MouseEnterLeaveType>* MouseEnterLeaveEvent() override;
IEvent<Point>* MouseMoveEvent() override;
- virtual IEvent<NativeMouseButtonEventArgs>* MouseDownEvent() = 0;
- virtual IEvent<NativeMouseButtonEventArgs>* MouseUpEvent() = 0;
- virtual IEvent<NativeMouseWheelEventArgs>* MouseWheelEvent() = 0;
+ IEvent<NativeMouseButtonEventArgs>* MouseDownEvent() override;
+ IEvent<NativeMouseButtonEventArgs>* MouseUpEvent() override;
+ IEvent<NativeMouseWheelEventArgs>* MouseWheelEvent() override;
virtual IEvent<NativeKeyEventArgs>* KeyDownEvent() = 0;
virtual IEvent<NativeKeyEventArgs>* KeyUpEvent() = 0;
@@ -93,5 +93,8 @@ class XcbWindow : public XcbResource, public virtual INativeWindow {
Event<MouseEnterLeaveType> mouse_enter_leave_event_;
Event<Point> mouse_move_event_;
+ Event<NativeMouseButtonEventArgs> mouse_down_event_;
+ Event<NativeMouseButtonEventArgs> mouse_up_event_;
+ Event<NativeMouseWheelEventArgs> mouse_wheel_event_;
};
} // namespace cru::platform::gui::xcb