diff options
author | 2020-11-12 01:24:59 +0100 | |
---|---|---|
committer | 2020-11-12 01:24:59 +0100 | |
commit | 3aca1771329cf7845cbc6c98e536cfb6c0e7c3ff (patch) | |
tree | 76490c1f1909f03fa4d820ab39c1d003f5e55ecb /graphics/src/widget/canvas.rs | |
parent | bf6c65b5ad24595bbb12570e38118321f4b572ac (diff) | |
download | iced-3aca1771329cf7845cbc6c98e536cfb6c0e7c3ff.tar.gz iced-3aca1771329cf7845cbc6c98e536cfb6c0e7c3ff.tar.bz2 iced-3aca1771329cf7845cbc6c98e536cfb6c0e7c3ff.zip |
Implement event capturing for `Canvas`
Diffstat (limited to 'graphics/src/widget/canvas.rs')
-rw-r--r-- | graphics/src/widget/canvas.rs | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/graphics/src/widget/canvas.rs b/graphics/src/widget/canvas.rs index 4478bca8..ae0d87a4 100644 --- a/graphics/src/widget/canvas.rs +++ b/graphics/src/widget/canvas.rs @@ -16,11 +16,11 @@ use iced_native::{ use std::hash::Hash; use std::marker::PhantomData; +pub mod event; pub mod path; mod cache; mod cursor; -mod event; mod fill; mod frame; mod geometry; @@ -184,11 +184,14 @@ where let cursor = Cursor::from_window_position(cursor_position); if let Some(canvas_event) = canvas_event { - if let Some(message) = - self.program.update(canvas_event, bounds, cursor) - { + let (event_status, message) = + self.program.update(canvas_event, bounds, cursor); + + if let Some(message) = message { messages.push(message); } + + return event_status; } event::Status::Ignored |