Struct PropertyEditorMessageContext

Source
pub struct PropertyEditorMessageContext<'a, 'b, 'c> {
    pub sync_flag: u64,
    pub instance: Handle<UiNode>,
    pub ui: &'b mut UserInterface,
    pub property_info: &'a FieldInfo<'a, 'c>,
    pub definition_container: Arc<PropertyEditorDefinitionContainer>,
    pub layer_index: usize,
    pub environment: Option<Arc<dyn InspectorEnvironment>>,
    pub generate_property_string_values: bool,
    pub filter: PropertyFilter,
    pub name_column_width: f32,
}
Expand description

This structure is passed to PropertyEditorDefinition::create_message in order to generate a message that will update the editor widget to the property’s current value.

Fields§

§sync_flag: u64

Controls the flags that are included with messages through the UiMessage::flags property. This is used to distinguish sync messages from other messages and is handled automatically by InspectorContext. There is no need to put this flag into the message return by the create_message method.

§instance: Handle<UiNode>

The handle of widget that the message will be sent to. It should be an editor created by PropertyEditorDefinition::create_instance.

§ui: &'b mut UserInterface

The UserInterface is provided to make it possible for create_message to send whatever messages are needed directly instead of returning a message. In this case, the sent messages should have their UiMessage::flags set to sync_flag.

§property_info: &'a FieldInfo<'a, 'c>

The FieldInfo of the property to edit, extracted from the object we are inspecting by reflection.

§definition_container: Arc<PropertyEditorDefinitionContainer>

The list of the Inspectors property editors. This allows one property editor to make use of other property editors.

§layer_index: usize

Editors can be nested within other editors, such as when an array editor contains editors for each element of the array. The layer_index indicates the nesting level of the widget that will receive the created message.

§environment: Option<Arc<dyn InspectorEnvironment>>

Optional untyped information about the broader application in which this proprety is being translated. This allows the created message to adapt to the situation if we can successfully cast the given InspectorEnvironment into a specific type.

§generate_property_string_values: bool

When true, this indicates that an Inspector should generate strings from format!("{:?}", field), for each field. Having this in the property editor build context indicates how any Inspectors that are update due to the created message should behave.

§filter: PropertyFilter

Determines how properties should be filtered in any Inspectors that are updated by the created message.

§name_column_width: f32

Width of the property name column.

Auto Trait Implementations§

§

impl<'a, 'b, 'c> Freeze for PropertyEditorMessageContext<'a, 'b, 'c>

§

impl<'a, 'b, 'c> !RefUnwindSafe for PropertyEditorMessageContext<'a, 'b, 'c>

§

impl<'a, 'b, 'c> !Send for PropertyEditorMessageContext<'a, 'b, 'c>

§

impl<'a, 'b, 'c> !Sync for PropertyEditorMessageContext<'a, 'b, 'c>

§

impl<'a, 'b, 'c> Unpin for PropertyEditorMessageContext<'a, 'b, 'c>

§

impl<'a, 'b, 'c> !UnwindSafe for PropertyEditorMessageContext<'a, 'b, 'c>

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> Downcast for T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert 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.
Source§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
Source§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &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)

Convert &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> Downcast for T
where T: Any,

Source§

fn as_any(&self) -> &(dyn Any + 'static)

Converts self reference as a reference to Any. Could be used to downcast a trait object to a particular type.
Source§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Converts self reference as a reference to Any. Could be used to downcast a trait object to a particular type.
Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Source§

impl<T> FieldValue for T
where T: 'static,

Source§

fn as_any(&self) -> &(dyn Any + 'static)

Casts self to a &dyn Any
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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 more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<SS, SP> SupersetOf<SS> for SP
where SS: SubsetOf<SP>,

Source§

fn to_subset(&self) -> Option<SS>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
Source§

fn is_in_subset(&self) -> bool

Checks if self is actually part of its subset T (and can be converted to it).
Source§

fn to_subset_unchecked(&self) -> SS

Use with care! Same as self.to_subset but without any property checks. Always succeeds.
Source§

fn from_subset(element: &SS) -> SP

The inclusion map: converts self to the equivalent element of its superset.
Source§

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

Source§

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>,

Source§

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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more