diff options
author | 杨宇千 <crupest@outlook.com> | 2018-11-13 22:44:07 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-13 22:44:07 +0800 |
commit | b08ba6c83902d140fb14131b3f01837985d39c17 (patch) | |
tree | 98719593d5854f2162ea8d87b7fecdc3472968bc /src/ui/control.hpp | |
parent | 91dda866a0919f9e6cfb5e7857ac0466572d96d8 (diff) | |
parent | 6d0a44597eb6e35993b46642ebf85abd94bca2d7 (diff) | |
download | cru-b08ba6c83902d140fb14131b3f01837985d39c17.tar.gz cru-b08ba6c83902d140fb14131b3f01837985d39c17.tar.bz2 cru-b08ba6c83902d140fb14131b3f01837985d39c17.zip |
Merge pull request #18 from crupest/bound
Add support for enhanced bound check.
Diffstat (limited to 'src/ui/control.hpp')
-rw-r--r-- | src/ui/control.hpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/ui/control.hpp b/src/ui/control.hpp index 7afc0c4e..776eacb0 100644 --- a/src/ui/control.hpp +++ b/src/ui/control.hpp @@ -117,6 +117,8 @@ namespace cru::ui //Absolute point to local point. Point WindowToControl(const Point& point) const; + // Default implement in Control is test point in border geometry's + // fill and stroke with width of border. virtual bool IsPointInside(const Point& point); @@ -264,6 +266,8 @@ namespace cru::ui void RaisePositionChangedEvent(events::PositionChangedEventArgs& args); void RaiseSizeChangedEvent(events::SizeChangedEventArgs& args); + void RegenerateBorderGeometry(); + //*************** region: mouse event *************** virtual void OnMouseEnter(events::MouseEventArgs& args); virtual void OnMouseLeave(events::MouseEventArgs& args); @@ -368,6 +372,8 @@ namespace cru::ui bool is_bordered_ = false; BorderProperty border_property_; + Microsoft::WRL::ComPtr<ID2D1Geometry> border_geometry_ = nullptr; + AnyMap additional_property_map_{}; bool is_focus_on_pressed_ = true; |