pub struct PropertyEditorBuildContext<'a, 'b, 'c, 'd> {
pub build_context: &'a mut BuildContext<'c>,
pub property_info: &'b FieldInfo<'b, 'd>,
pub environment: Option<Arc<dyn InspectorEnvironment>>,
pub definition_container: Arc<PropertyEditorDefinitionContainer>,
pub sync_flag: u64,
pub layer_index: usize,
pub generate_property_string_values: bool,
pub filter: PropertyFilter,
pub name_column_width: f32,
}
Expand description
This structure is passed to PropertyEditorDefinition::create_instance in order to allow it to build a widget to allow a property to be edited.
Fields§
§build_context: &'a mut BuildContext<'c>
General context for widget building to be used for creating the editor.
property_info: &'b FieldInfo<'b, 'd>
The FieldInfo of the property to edit, extracted from the object we are inspecting by reflection.
environment: Option<Arc<dyn InspectorEnvironment>>
Untyped reference to the environment that the Inspector is being used in. This will often be fyroxed_base::inspector::EditorEnvironment when the Inspector is being used in Fyroxed, but Inspector widgets can be used in other applications, and we can access those applications by casting the environment to the appropriate type.
definition_container: Arc<PropertyEditorDefinitionContainer>
The list of the Inspectors property editors. This allows one property editor to make use of other property editors.
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.
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 how deeply nested the editor widget we are creating will be.
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 created as part of the new
editor should behave.
filter: PropertyFilter
Determines how properties should be filtered in any Inspectors created within the editor that is being built.
name_column_width: f32
Width of the property name column.
Auto Trait Implementations§
impl<'a, 'b, 'c, 'd> Freeze for PropertyEditorBuildContext<'a, 'b, 'c, 'd>
impl<'a, 'b, 'c, 'd> !RefUnwindSafe for PropertyEditorBuildContext<'a, 'b, 'c, 'd>
impl<'a, 'b, 'c, 'd> !Send for PropertyEditorBuildContext<'a, 'b, 'c, 'd>
impl<'a, 'b, 'c, 'd> !Sync for PropertyEditorBuildContext<'a, 'b, 'c, 'd>
impl<'a, 'b, 'c, 'd> Unpin for PropertyEditorBuildContext<'a, 'b, 'c, 'd>
impl<'a, 'b, 'c, 'd> !UnwindSafe for PropertyEditorBuildContext<'a, 'b, 'c, 'd>
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> 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>
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>
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
.Source§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.Source§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.Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Any
. Could be used to downcast a trait object
to a particular type.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Any
. Could be used to downcast a trait object
to a particular type.fn into_any(self: Box<T>) -> Box<dyn Any>
Source§impl<T> FieldValue for Twhere
T: 'static,
impl<T> FieldValue for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.