Struct bevy_yoleck::YoleckDirective
source · pub struct YoleckDirective(/* private fields */);
Expand description
Event that can be sent to control Yoleck’s editor.
Implementations§
source§impl YoleckDirective
impl YoleckDirective
sourcepub fn pass_to_entity<T: 'static + Send + Sync>(entity: Entity, data: T) -> Self
pub fn pass_to_entity<T: 'static + Send + Sync>(entity: Entity, data: T) -> Self
Pass data from an external system (usually a ViewPort Editing OverLay) to an entity.
This data can be received using the YoleckPassedData
resource. If the data is
passed to a knob, it can also be received using the knob handle’s
get_passed_data
method.
sourcepub fn set_selected(entity: Option<Entity>) -> Self
pub fn set_selected(entity: Option<Entity>) -> Self
Set the entity selected in the Yoleck editor.
sourcepub fn toggle_selected(entity: Entity) -> Self
pub fn toggle_selected(entity: Entity) -> Self
Set the entity selected in the Yoleck editor.
sourcepub fn spawn_entity(
level: Entity,
type_name: impl ToString,
select_created_entity: bool
) -> SpawnEntityBuilder
pub fn spawn_entity( level: Entity, type_name: impl ToString, select_created_entity: bool ) -> SpawnEntityBuilder
Spawn a new entity with pre-populated data.
fn duplicate_example(
mut ui: ResMut<YoleckUi>,
mut edit: YoleckEdit<(&YoleckBelongsToLevel, &Vpeol2dPosition), With<Example>>,
mut writer: EventWriter<YoleckDirective>,
) {
let Ok((belongs_to_level, position)) = edit.get_single() else { return };
if ui.button("Duplicate").clicked() {
writer.send(
YoleckDirective::spawn_entity(
belongs_to_level.level,
"Example",
// Automatically select the newly created entity:
true,
)
// Create the new example entity 100 units below the current one:
.with(Vpeol2dPosition(position.0 - 100.0 * Vec2::Y))
.into(),
);
}
}
Trait Implementations§
source§impl Component for YoleckDirective
impl Component for YoleckDirective
source§const STORAGE_TYPE: StorageType = bevy::ecs::component::StorageType::SparseSet
const STORAGE_TYPE: StorageType = bevy::ecs::component::StorageType::SparseSet
A constant indicating the storage type used for this component.
source§fn register_component_hooks(_hooks: &mut ComponentHooks)
fn register_component_hooks(_hooks: &mut ComponentHooks)
Called when registering this component, allowing mutable access to its
ComponentHooks
.impl Event for YoleckDirective
Auto Trait Implementations§
impl Freeze for YoleckDirective
impl !RefUnwindSafe for YoleckDirective
impl Send for YoleckDirective
impl Sync for YoleckDirective
impl Unpin for YoleckDirective
impl !UnwindSafe for YoleckDirective
Blanket Implementations§
source§impl<T, U> AsBindGroupShaderType<U> for T
impl<T, U> AsBindGroupShaderType<U> for T
source§fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
Return the
T
ShaderType
for self
. When used in AsBindGroup
derives, it is safe to assume that all images in self
exist.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<C> Bundle for Cwhere
C: Component,
impl<C> Bundle for Cwhere
C: Component,
fn component_ids( components: &mut Components, storages: &mut Storages, ids: &mut impl FnMut(ComponentId) )
unsafe fn from_components<T, F>(ctx: &mut T, func: &mut F) -> C
source§fn get_component_ids(
components: &Components,
ids: &mut impl FnMut(Option<ComponentId>)
)
fn get_component_ids( components: &Components, ids: &mut impl FnMut(Option<ComponentId>) )
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>
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>
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)
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)
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.