Struct bevy_ui_navigation::NavRequestSystem
source · pub struct NavRequestSystem;Expand description
The label of the system in which the NavRequest events are handled, the
focus state of the Focusables is updated and the NavEvent events
are sent.
Systems updating visuals of UI elements should run after the NavRequestSystem,
while systems that emit NavRequest should run before it.
For example, an input system should run before the NavRequestSystem.
Failing to do so won’t cause logical errors, but will make the UI feel more slugish than necessary. This is especially critical of you are running on low framerate.
Example
use bevy_ui_navigation::prelude::*;
use bevy_ui_navigation::events::Direction;
use bevy_ui_navigation::custom::GenericNavigationPlugin;
use bevy::prelude::*;
fn main() {
App::new()
.add_plugin(GenericNavigationPlugin::<MoveCursor3d>::new())
// ...
// Add the button color update system after the focus update system
.add_system(button_system.after(NavRequestSystem))
// ...
.run();
}Trait Implementations§
source§fn clone(&self) -> NavRequestSystem
fn clone(&self) -> NavRequestSystem
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§fn eq(&self, other: &NavRequestSystem) -> bool
fn eq(&self, other: &NavRequestSystem) -> bool
This method tests for
self and other values to be equal, and is used
by ==.source§fn is_base(&self) -> bool
fn is_base(&self) -> bool
Returns
true if this set is a “base system set”. Systems
can only belong to one base set at a time. Systems and Sets
can only be added to base sets using specialized in_base_set
APIs. This enables “mutually exclusive” behaviors. It also
enables schedules to have a “default base set”, which can be used
to apply default configuration to systems.source§fn dyn_clone(&self) -> Box<dyn SystemSet>
fn dyn_clone(&self) -> Box<dyn SystemSet>
Creates a boxed clone of the label corresponding to this system set.
§fn system_type(&self) -> Option<TypeId>
fn system_type(&self) -> Option<TypeId>
Returns
Some if this system set is a [SystemTypeSet].Auto Trait Implementations§
Blanket Implementations§
§fn as_bind_group_shader_type(&self, _images: &RenderAssets<Image>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<Image>) -> U
Return the
T [ShaderType] for self. When used in [AsBindGroup]
derives, it is safe to assume that all images in self exist.§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
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.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§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.§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.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§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>
type Set = S
fn into_system_set(self) -> <S as IntoSystemSet<()>>::Set
fn into_config(self) -> SystemSetConfig
§fn in_base_set(self, set: impl BaseSystemSet) -> SystemSetConfig
fn in_base_set(self, set: impl BaseSystemSet) -> SystemSetConfig
Add to the provided “base”
set. For more information on base sets, see [SystemSet::is_base].§fn in_default_base_set(self) -> SystemSetConfig
fn in_default_base_set(self) -> SystemSetConfig
Add this set to the schedules’s default base set.
§fn ambiguous_with<M>(self, set: impl IntoSystemSet<M>) -> SystemSetConfig
fn ambiguous_with<M>(self, set: impl IntoSystemSet<M>) -> SystemSetConfig
Suppress warnings and errors that would result from systems in this set having ambiguities
(conflicting access but indeterminate order) with systems in
set.§fn ambiguous_with_all(self) -> SystemSetConfig
fn ambiguous_with_all(self) -> SystemSetConfig
Suppress warnings and errors that would result from systems in this set having ambiguities
(conflicting access but indeterminate order) with any other system.