aboutsummaryrefslogtreecommitdiff
path: root/src/ui
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui')
-rw-r--r--src/ui/control.cpp8
-rw-r--r--src/ui/controls/button.cpp4
-rw-r--r--src/ui/routed_event_dispatch.hpp6
3 files changed, 11 insertions, 7 deletions
diff --git a/src/ui/control.cpp b/src/ui/control.cpp
index 51e1937a..bcf56c5e 100644
--- a/src/ui/control.cpp
+++ b/src/ui/control.cpp
@@ -15,7 +15,7 @@ void Control::_SetParent(Control* parent) {
const auto new_parent = GetParent();
if (old_parent != new_parent) OnParentChanged(old_parent, new_parent);
- MouseDownEvent()->direct->AddHandler(
+ MouseDownEvent()->Direct()->AddHandler(
[this](event::MouseButtonEventArgs& args) {
switch (args.GetMouseButton()) {
case MouseButton::Left:
@@ -33,11 +33,11 @@ void Control::_SetParent(Control* parent) {
}
});
- MouseEnterEvent()->direct->AddHandler([this](event::MouseEventArgs&) {
+ MouseEnterEvent()->Direct()->AddHandler([this](event::MouseEventArgs&) {
this->is_mouse_over_ = true;
});
- MouseLeaveEvent()->direct->AddHandler([this](event::MouseEventArgs&) {
+ MouseLeaveEvent()->Direct()->AddHandler([this](event::MouseEventArgs&) {
this->is_mouse_over_ = false;
if (click_map_.left) {
OnMouseClickCancel(MouseButton::Left);
@@ -51,7 +51,7 @@ void Control::_SetParent(Control* parent) {
click_map_.left = click_map_.middle = click_map_.right = false;
});
- MouseUpEvent()->direct->AddHandler([this](event::MouseButtonEventArgs& args) {
+ MouseUpEvent()->Direct()->AddHandler([this](event::MouseButtonEventArgs& args) {
switch (args.GetMouseButton()) {
case MouseButton::Left:
if (click_map_.left) {
diff --git a/src/ui/controls/button.cpp b/src/ui/controls/button.cpp
index 2228343c..618371fb 100644
--- a/src/ui/controls/button.cpp
+++ b/src/ui/controls/button.cpp
@@ -37,4 +37,8 @@ void Button::OnMouseClickEnd(platform::native::MouseButton button) {
//TODO!
}
}
+
+void Button::OnStateChange(ButtonState oldState, ButtonState newState) {
+
+}
} // namespace cru::ui::controls
diff --git a/src/ui/routed_event_dispatch.hpp b/src/ui/routed_event_dispatch.hpp
index 3427441b..e9430676 100644
--- a/src/ui/routed_event_dispatch.hpp
+++ b/src/ui/routed_event_dispatch.hpp
@@ -32,7 +32,7 @@ void DispatchEvent(Control* const original_sender,
// tunnel
for (auto i = receive_list.crbegin(); i != receive_list.crend(); ++i) {
EventArgs event_args(*i, original_sender, std::forward<Args>(args)...);
- static_cast<Event<EventArgs>*>(((*i)->*event_ptr)()->tunnel.get())
+ static_cast<Event<EventArgs&>*>(((*i)->*event_ptr)()->Tunnel())
->Raise(event_args);
if (event_args.IsHandled()) {
handled = true;
@@ -44,7 +44,7 @@ void DispatchEvent(Control* const original_sender,
if (!handled) {
for (auto i : receive_list) {
EventArgs event_args(i, original_sender, std::forward<Args>(args)...);
- static_cast<Event<EventArgs>*>((i->*event_ptr)()->bubble.get())
+ static_cast<Event<EventArgs&>*>((i->*event_ptr)()->Bubble())
->Raise(event_args);
if (event_args.IsHandled()) break;
}
@@ -53,7 +53,7 @@ void DispatchEvent(Control* const original_sender,
// direct
for (auto i : receive_list) {
EventArgs event_args(i, original_sender, std::forward<Args>(args)...);
- static_cast<Event<EventArgs>*>((i->*event_ptr)()->direct.get())
+ static_cast<Event<EventArgs&>*>((i->*event_ptr)()->Direct())
->Raise(event_args);
}
}