summaryrefslogtreecommitdiffstats
path: root/native/src/event.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2020-11-12 00:30:06 +0100
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2020-11-12 00:40:52 +0100
commit3bcee62beb36d9e186d8716c7660433fac071ed6 (patch)
tree9885c5192f22691171bd53f995b2e9621ce12a25 /native/src/event.rs
parent04468a7147c38cd363cb545de0d9a9881ce071dd (diff)
downloadiced-3bcee62beb36d9e186d8716c7660433fac071ed6.tar.gz
iced-3bcee62beb36d9e186d8716c7660433fac071ed6.tar.bz2
iced-3bcee62beb36d9e186d8716c7660433fac071ed6.zip
Implement event capturing for `Column`
Diffstat (limited to 'native/src/event.rs')
-rw-r--r--native/src/event.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/native/src/event.rs b/native/src/event.rs
index 689c8f5d..9c079151 100644
--- a/native/src/event.rs
+++ b/native/src/event.rs
@@ -35,3 +35,24 @@ pub enum Status {
/// [`Event`]: enum.Event.html
Captured,
}
+
+impl Status {
+ /// Merges two [`Status`] into one.
+ ///
+ /// `Captured` takes precedence over `Ignored`:
+ ///
+ /// ```
+ /// use iced_native::event::Status;
+ ///
+ /// assert_eq!(Status::Ignored.merge(Status::Ignored), Status::Ignored);
+ /// assert_eq!(Status::Ignored.merge(Status::Captured), Status::Captured);
+ /// assert_eq!(Status::Captured.merge(Status::Ignored), Status::Captured);
+ /// assert_eq!(Status::Captured.merge(Status::Captured), Status::Captured);
+ /// ```
+ pub fn merge(self, b: Self) -> Self {
+ match self {
+ Status::Ignored => b,
+ Status::Captured => Status::Captured,
+ }
+ }
+}