From 73f13dd60f51ff05e31a64fba89fe31ab3ab185d Mon Sep 17 00:00:00 2001 From: 杨宇千 Date: Sun, 15 Sep 2019 00:03:11 +0800 Subject: ... --- include/cru/ui/click_detector.hpp | 2 +- include/cru/ui/controls/button.hpp | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) (limited to 'include/cru/ui') diff --git a/include/cru/ui/click_detector.hpp b/include/cru/ui/click_detector.hpp index 3806dd82..1a88b8a6 100644 --- a/include/cru/ui/click_detector.hpp +++ b/include/cru/ui/click_detector.hpp @@ -70,7 +70,7 @@ class ClickDetector : public Object { case MouseButton::Right: return click_map_.right; default: - std::abort(); + UnreachableCode(); } } diff --git a/include/cru/ui/controls/button.hpp b/include/cru/ui/controls/button.hpp index ca3dcae9..b5cca7dc 100644 --- a/include/cru/ui/controls/button.hpp +++ b/include/cru/ui/controls/button.hpp @@ -20,6 +20,8 @@ struct ButtonBorderStyle { render::BorderStyle hover; // corresponds to ButtonState::Press render::BorderStyle press; + // corresponds to ButtonState::PressCancel + render::BorderStyle press_cancel; }; enum class ButtonState { @@ -27,8 +29,10 @@ enum class ButtonState { Normal, // mouse is in it and not pressed Hover, - // mouse is pressed in it (click begins) - Press + // mouse is pressed in it + Press, + // mouse is pressed outside button + PressCancel, }; class Button : public ContentControl { -- cgit v1.2.3