pub struct WindowPlugin {
    pub primary_window: Option<Window>,
    pub exit_condition: ExitCondition,
    pub close_when_requested: bool,
}
Expand description

A Plugin that defines an interface for windowing support in Bevy.

Fields§

§primary_window: Option<Window>

Settings for the primary window. This will be spawned by default, if you want to run without a primary window you should set this to None.

Note that if there are no windows, by default the App will exit, due to exit_on_all_closed.

§exit_condition: ExitCondition

Whether to exit the app when there are no open windows.

If disabling this, ensure that you send the bevy_app::AppExit event when the app should exit. If this does not occur, you will create ‘headless’ processes (processes without windows), which may surprise your users. It is recommended to leave this setting to either ExitCondition::OnAllClosed or ExitCondition::OnPrimaryClosed.

ExitCondition::OnAllClosed will add exit_on_all_closed to CoreSet::Update. ExitCondition::OnPrimaryClosed will add exit_on_primary_closed to CoreSet::Update.

§close_when_requested: bool

Whether to close windows when they are requested to be closed (i.e. when the close button is pressed).

If true, this plugin will add close_when_requested to CoreSet::Update. If this system (or a replacement) is not running, the close button will have no effect. This may surprise your users. It is recommended to leave this setting as true.

Trait Implementations§

source§

impl Default for WindowPlugin

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl Plugin for WindowPlugin

source§

fn build(&self, app: &mut App)

Configures the App to which this plugin is added.
source§

fn setup(&self, _app: &mut App)

Runs after all plugins are built, but before the app runner is called. This can be useful if you have some resource that other plugins need during their build step, but after build you want to remove it and send it to another thread.
source§

fn name(&self) -> &str

Configures a name for the Plugin which is primarily used for checking plugin uniqueness and debugging.
source§

fn is_unique(&self) -> bool

If the plugin can be meaningfully instantiated several times in an App, override this method to return false.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast for Twhere T: Any,

§

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>

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)

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)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for Twhere T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send + 'static>

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

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> FromWorld for Twhere T: Default,

source§

fn from_world(_world: &mut World) -> T

Creates Self using data from the given World
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 Twhere U: From<T>,

const: unstable · 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, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
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
source§

impl<T> Event for Twhere T: Send + Sync + 'static,