Struct egui::UiTags

source ·
pub struct UiTags(pub HashMap<String, Option<Arc<dyn Any + Send + Sync + 'static>>>);
Expand description

User-chosen tags.

You can use this in any way you want, i.e. to set some tag on a crate::Ui and then in your own widget check for the existence of this tag up the UiStack.

Note that egui never sets any tags itself, so this is purely for user code.

All tagging is transient, and will only live as long as the parent crate::Ui, i.e. within a single render frame.

Tuple Fields§

§0: HashMap<String, Option<Arc<dyn Any + Send + Sync + 'static>>>

Implementations§

source§

impl UiTags

source

pub fn insert( &mut self, key: impl Into<String>, value: Option<Arc<dyn Any + Send + Sync + 'static>>, )

source

pub fn contains(&self, key: &str) -> bool

source

pub fn get_any( &self, key: &str, ) -> Option<&Arc<dyn Any + Send + Sync + 'static>>

Get the value of a tag.

Note that None is returned both if the key is set to the value None, and if the key is not set at all.

source

pub fn get_downcast<T: Any + Send + Sync + 'static>( &self, key: &str, ) -> Option<&T>

Get the value of a tag.

Note that None is returned both if the key is set to the value None, and if the key is not set at all.

Trait Implementations§

source§

impl Clone for UiTags

source§

fn clone(&self) -> UiTags

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for UiTags

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for UiTags

source§

fn default() -> UiTags

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl Freeze for UiTags

§

impl !RefUnwindSafe for UiTags

§

impl Send for UiTags

§

impl Sync for UiTags

§

impl Unpin for UiTags

§

impl !UnwindSafe for UiTags

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> SerializableAny for T
where T: 'static + Any + Clone + for<'a> Send + Sync,