pub struct UpdateDeliveryList { /* private fields */ }Expand description
Represents all the widgets and windows marked to receive an update.
Implementations§
Source§impl UpdateDeliveryList
impl UpdateDeliveryList
Sourcepub fn new() -> UpdateDeliveryList
pub fn new() -> UpdateDeliveryList
New list that only allows subscribers.
Sourcepub fn insert_wgt(&mut self, wgt: impl WidgetPathProvider)
pub fn insert_wgt(&mut self, wgt: impl WidgetPathProvider)
Insert the wgt and ancestors up-to the inner most that is included in the subscribers.
Sourcepub fn clone_insert_wgt(
&self,
wgt: impl WidgetPathProvider,
) -> Cow<'_, UpdateDeliveryList>
pub fn clone_insert_wgt( &self, wgt: impl WidgetPathProvider, ) -> Cow<'_, UpdateDeliveryList>
If the delivery list does not contain the wgt clones the list and inserts the widget.
If the list already contains the widget returns the reference.
Sourcepub fn clone_insert_all<W>(
&self,
widgets: impl IntoIterator<Item = W>,
) -> Cow<'_, UpdateDeliveryList>where
W: WidgetPathProvider,
pub fn clone_insert_all<W>(
&self,
widgets: impl IntoIterator<Item = W>,
) -> Cow<'_, UpdateDeliveryList>where
W: WidgetPathProvider,
If the delivery list does not contain all widgets clones the list and inserts all widgets.
If the list already contains all widgets returns the reference.
Sourcepub fn clone_insert_any<W>(
&self,
widgets: impl IntoIterator<Item = W>,
) -> Cow<'_, UpdateDeliveryList>where
W: WidgetPathProvider,
pub fn clone_insert_any<W>(
&self,
widgets: impl IntoIterator<Item = W>,
) -> Cow<'_, UpdateDeliveryList>where
W: WidgetPathProvider,
If the delivery list does not contain any widgets clones the list and inserts the first missing widget.
If the list already contains at least one widget returns the reference.
Sourcepub fn insert_window(&mut self, id: WindowId)
pub fn insert_window(&mut self, id: WindowId)
Insert the window by itself, the window root widget will be targeted.
Sourcepub fn search_widget(&mut self, widget_id: WidgetId)
pub fn search_widget(&mut self, widget_id: WidgetId)
Register the widget of unknown location for search before delivery routing starts.
Sourcepub fn has_pending_search(&mut self) -> bool
pub fn has_pending_search(&mut self) -> bool
If the list has pending widgets that must be found before delivery can start.
Sourcepub fn fulfill_search<'a, 'b>(
&'a mut self,
windows: impl Iterator<Item = &'b WidgetInfoTree>,
)
pub fn fulfill_search<'a, 'b>( &'a mut self, windows: impl Iterator<Item = &'b WidgetInfoTree>, )
Search all pending widgets in all windows, all search items are cleared, even if not found.
Sourcepub fn enter_window(&self, window_id: WindowId) -> bool
pub fn enter_window(&self, window_id: WindowId) -> bool
Returns true if the window is on the list.
Sourcepub fn enter_widget(&self, widget_id: WidgetId) -> bool
pub fn enter_widget(&self, widget_id: WidgetId) -> bool
Returns true if the widget is on the list.
Sourcepub fn widgets(&self) -> &IdSet<WidgetId>
pub fn widgets(&self) -> &IdSet<WidgetId>
Found widgets in the delivery list, can be targets or ancestors of targets.
Sourcepub fn search_widgets(&mut self) -> &IdSet<WidgetId>
pub fn search_widgets(&mut self) -> &IdSet<WidgetId>
Widgets still pending search or not found.
Sourcepub fn search_root(&mut self) -> bool
pub fn search_root(&mut self) -> bool
If search for window a root is pending.
Sourcepub fn extend(&mut self, other: UpdateDeliveryList)
pub fn extend(&mut self, other: UpdateDeliveryList)
Copy windows, widgets and search from other.
Trait Implementations§
Source§impl Clone for UpdateDeliveryList
impl Clone for UpdateDeliveryList
Source§fn clone(&self) -> UpdateDeliveryList
fn clone(&self) -> UpdateDeliveryList
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for UpdateDeliveryList
impl Debug for UpdateDeliveryList
Source§impl Default for UpdateDeliveryList
impl Default for UpdateDeliveryList
Source§fn default() -> UpdateDeliveryList
fn default() -> UpdateDeliveryList
Auto Trait Implementations§
impl Freeze for UpdateDeliveryList
impl RefUnwindSafe for UpdateDeliveryList
impl Send for UpdateDeliveryList
impl Sync for UpdateDeliveryList
impl Unpin for UpdateDeliveryList
impl UnsafeUnpin for UpdateDeliveryList
impl UnwindSafe for UpdateDeliveryList
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> FsChangeNote for T
impl<T> FsChangeNote for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
§impl<T> NoneValue for Twhere
T: Default,
impl<T> NoneValue for Twhere
T: Default,
type NoneType = T
§fn null_value() -> T
fn null_value() -> T
§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().