summaryrefslogtreecommitdiffstats
path: root/native/src/event.rs
diff options
context:
space:
mode:
Diffstat (limited to 'native/src/event.rs')
-rw-r--r--native/src/event.rs78
1 files changed, 0 insertions, 78 deletions
diff --git a/native/src/event.rs b/native/src/event.rs
deleted file mode 100644
index bcfaf891..00000000
--- a/native/src/event.rs
+++ /dev/null
@@ -1,78 +0,0 @@
-//! Handle events of a user interface.
-use crate::keyboard;
-use crate::mouse;
-use crate::touch;
-use crate::window;
-
-/// A user interface event.
-///
-/// _**Note:** This type is largely incomplete! If you need to track
-/// additional events, feel free to [open an issue] and share your use case!_
-///
-/// [open an issue]: https://github.com/iced-rs/iced/issues
-#[derive(Debug, Clone, PartialEq)]
-pub enum Event {
- /// A keyboard event
- Keyboard(keyboard::Event),
-
- /// A mouse event
- Mouse(mouse::Event),
-
- /// A window event
- Window(window::Event),
-
- /// A touch event
- Touch(touch::Event),
-
- /// A platform specific event
- PlatformSpecific(PlatformSpecific),
-}
-
-/// A platform specific event
-#[derive(Debug, Clone, PartialEq, Eq)]
-pub enum PlatformSpecific {
- /// A MacOS specific event
- MacOS(MacOS),
-}
-
-/// Describes an event specific to MacOS
-#[derive(Debug, Clone, PartialEq, Eq)]
-pub enum MacOS {
- /// Triggered when the app receives an URL from the system
- ///
- /// _**Note:** For this event to be triggered, the executable needs to be properly [bundled]!_
- ///
- /// [bundled]: https://developer.apple.com/library/archive/documentation/CoreFoundation/Conceptual/CFBundles/BundleTypes/BundleTypes.html#//apple_ref/doc/uid/10000123i-CH101-SW19
- ReceivedUrl(String),
-}
-
-/// The status of an [`Event`] after being processed.
-#[derive(Debug, Clone, Copy, PartialEq, Eq)]
-pub enum Status {
- /// The [`Event`] was **NOT** handled by any widget.
- Ignored,
-
- /// The [`Event`] was handled and processed by a widget.
- 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,
- }
- }
-}