ragnarok::measurer

Trait EventsMeasurer

Source
pub trait EventsMeasurer
where Self: Sized,
{ type Name: NameOfEvent; type Key: NodeKey; type Emmitable: EmmitableEvent<Key = Self::Key, Name = Self::Name>; type Source: SourceEvent<Name = Self::Name>; // Required methods fn get_layers(&self) -> Iter<'_, i16, Vec<Self::Key>>; fn get_listeners_of(&self, name: &Self::Name) -> Vec<Self::Key>; fn is_point_inside(&self, key: Self::Key, cursor: CursorPoint) -> bool; fn is_node_parent_of(&self, key: Self::Key, parent: Self::Key) -> bool; fn is_listening_to(&self, key: Self::Key, name: &Self::Name) -> bool; fn is_node_transparent(&self, key: Self::Key) -> bool; fn try_area_of(&self, key: Self::Key) -> Option<Area>; fn new_emmitable_event( &self, key: Self::Key, name: Self::Name, source: Self::Source, area: Option<Area>, ) -> Self::Emmitable; }

Required Associated Types§

Source

type Name: NameOfEvent

Source

type Key: NodeKey

Source

type Emmitable: EmmitableEvent<Key = Self::Key, Name = Self::Name>

Source

type Source: SourceEvent<Name = Self::Name>

Required Methods§

Source

fn get_layers(&self) -> Iter<'_, i16, Vec<Self::Key>>

Source

fn get_listeners_of(&self, name: &Self::Name) -> Vec<Self::Key>

Source

fn is_point_inside(&self, key: Self::Key, cursor: CursorPoint) -> bool

Source

fn is_node_parent_of(&self, key: Self::Key, parent: Self::Key) -> bool

Source

fn is_listening_to(&self, key: Self::Key, name: &Self::Name) -> bool

Source

fn is_node_transparent(&self, key: Self::Key) -> bool

Source

fn try_area_of(&self, key: Self::Key) -> Option<Area>

Source

fn new_emmitable_event( &self, key: Self::Key, name: Self::Name, source: Self::Source, area: Option<Area>, ) -> Self::Emmitable

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§