pub enum VisibleWhen {
Always,
AdvancedOn,
AdvancedOff,
Never,
}Expand description
Conditional visibility for a field — the data-driven analogue of
MatterCAD’s IPropertyGridModifier.UpdateControls(change) hook.
The host knows which sibling boolean property gates the
AdvancedOn / AdvancedOff rows (typically a bool named
advanced); the UI layer filters rows before rendering based on
the live value of that toggle.
Variants§
Always
Always render (default).
AdvancedOn
Render only when the node’s advanced toggle is on. MatterCAD’s
IPropertyGridModifier.UpdateControls pattern for advanced
rows.
AdvancedOff
Render only when the node’s advanced toggle is off. Used by
the easy-mode hint message that nudges the user toward
Advanced.
Never
Never render. MatterCAD’s [HideFromEditor].
Trait Implementations§
Source§impl Clone for VisibleWhen
impl Clone for VisibleWhen
Source§fn clone(&self) -> VisibleWhen
fn clone(&self) -> VisibleWhen
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for VisibleWhen
Source§impl Debug for VisibleWhen
impl Debug for VisibleWhen
Source§impl Default for VisibleWhen
impl Default for VisibleWhen
Source§fn default() -> VisibleWhen
fn default() -> VisibleWhen
Returns the “default value” for a type. Read more
impl Eq for VisibleWhen
Source§impl PartialEq for VisibleWhen
impl PartialEq for VisibleWhen
Source§fn eq(&self, other: &VisibleWhen) -> bool
fn eq(&self, other: &VisibleWhen) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for VisibleWhen
Auto Trait Implementations§
impl Freeze for VisibleWhen
impl RefUnwindSafe for VisibleWhen
impl Send for VisibleWhen
impl Sync for VisibleWhen
impl Unpin for VisibleWhen
impl UnsafeUnpin for VisibleWhen
impl UnwindSafe for VisibleWhen
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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>
Converts
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>
Converts
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 moreSource§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>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().