diff options
author | crupest <crupest@outlook.com> | 2018-09-22 00:17:53 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2018-09-22 00:17:53 +0800 |
commit | e01800206050a0ed88cc4f4456fa3590021ab66f (patch) | |
tree | aaa6118d614ead6cd1865e4b2d160cade91d8057 /CruUI/ui/control.cpp | |
parent | 89f7277d47cd37f25a141ec2ebc13c4f6fceabd5 (diff) | |
download | cru-e01800206050a0ed88cc4f4456fa3590021ab66f.tar.gz cru-e01800206050a0ed88cc4f4456fa3590021ab66f.tar.bz2 cru-e01800206050a0ed88cc4f4456fa3590021ab66f.zip |
Add button.
Diffstat (limited to 'CruUI/ui/control.cpp')
-rw-r--r-- | CruUI/ui/control.cpp | 29 |
1 files changed, 25 insertions, 4 deletions
diff --git a/CruUI/ui/control.cpp b/CruUI/ui/control.cpp index 2f5a7ef8..bfe3f7a7 100644 --- a/CruUI/ui/control.cpp +++ b/CruUI/ui/control.cpp @@ -382,8 +382,14 @@ namespace cru { void Control::OnMouseLeaveCore(MouseEventArgs & args) { is_mouse_inside_ = false; - for (auto& is_mouse_leave : is_mouse_leave_) - is_mouse_leave.second = true; + for (auto& is_mouse_click_valid : is_mouse_click_valid_map_) + { + if (is_mouse_click_valid.second) + { + is_mouse_click_valid.second = false; + OnMouseClickEnd(is_mouse_click_valid.first); + } + } } void Control::OnMouseMoveCore(MouseEventArgs & args) @@ -393,13 +399,18 @@ namespace cru { void Control::OnMouseDownCore(MouseButtonEventArgs & args) { - is_mouse_leave_[args.GetMouseButton()] = false; + is_mouse_click_valid_map_[args.GetMouseButton()] = true; + OnMouseClickBegin(args.GetMouseButton()); } void Control::OnMouseUpCore(MouseButtonEventArgs & args) { - if (!is_mouse_leave_[args.GetMouseButton()]) + if (is_mouse_click_valid_map_[args.GetMouseButton()]) + { + is_mouse_click_valid_map_[args.GetMouseButton()] = false; RaiseMouseClickEvent(args); + OnMouseClickEnd(args.GetMouseButton()); + } } void Control::OnMouseClickCore(MouseButtonEventArgs& args) @@ -449,6 +460,16 @@ namespace cru { mouse_click_event.Raise(args); } + void Control::OnMouseClickBegin(MouseButton button) + { + + } + + void Control::OnMouseClickEnd(MouseButton button) + { + + } + void Control::OnGetFocus(FocusChangeEventArgs& args) { |