Struct bevy_window::Window
source · pub struct Window {Show 20 fields
pub cursor: Cursor,
pub present_mode: PresentMode,
pub mode: WindowMode,
pub position: WindowPosition,
pub resolution: WindowResolution,
pub title: String,
pub composite_alpha_mode: CompositeAlphaMode,
pub resize_constraints: WindowResizeConstraints,
pub resizable: bool,
pub decorations: bool,
pub transparent: bool,
pub focused: bool,
pub window_level: WindowLevel,
pub canvas: Option<String>,
pub fit_canvas_to_parent: bool,
pub prevent_default_event_handling: bool,
pub internal: InternalWindowState,
pub ime_enabled: bool,
pub ime_position: Vec2,
pub window_theme: Option<WindowTheme>,
}
Expand description
The defining Component
for window entities,
storing information about how it should appear and behave.
Each window corresponds to an entity, and is uniquely identified by the value of their Entity
.
When the Window
component is added to an entity, a new window will be opened.
When it is removed or the entity is despawned, the window will close.
This component is synchronized with winit
through bevy_winit
:
it will reflect the current state of the window and can be modified to change this state.
Fields§
§cursor: Cursor
The cursor of this window.
present_mode: PresentMode
What presentation mode to give the window.
mode: WindowMode
Which fullscreen or windowing mode should be used.
position: WindowPosition
Where the window should be placed.
resolution: WindowResolution
What resolution the window should have.
title: String
Stores the title of the window.
composite_alpha_mode: CompositeAlphaMode
How the alpha channel of textures should be handled while compositing.
resize_constraints: WindowResizeConstraints
The limits of the window’s logical size
(found in its resolution
) when resizing.
resizable: bool
Should the window be resizable?
Note: This does not stop the program from fullscreening/setting the size programmatically.
decorations: bool
Should the window have decorations enabled?
(Decorations are the minimize, maximize, and close buttons on desktop apps)
transparent: bool
Should the window be transparent?
Defines whether the background of the window should be transparent.
Platform-specific
- iOS / Android / Web: Unsupported.
- macOS X: Not working as expected.
macOS X transparent works with winit out of the box, so this issue might be related to: https://github.com/gfx-rs/wgpu/issues/687.
You should also set the window composite_alpha_mode
to CompositeAlphaMode::PostMultiplied
.
focused: bool
Get/set whether the window is focused.
window_level: WindowLevel
Where should the window appear relative to other overlapping window.
Platform-specific
- iOS / Android / Web / Wayland: Unsupported.
canvas: Option<String>
The “html canvas” element selector.
If set, this selector will be used to find a matching html canvas element, rather than creating a new one. Uses the CSS selector format.
This value has no effect on non-web platforms.
fit_canvas_to_parent: bool
Whether or not to fit the canvas element’s size to its parent element’s size.
Warning: this will not behave as expected for parents that set their size according to the size of their children. This creates a “feedback loop” that will result in the canvas growing on each resize. When using this feature, ensure the parent’s size is not affected by its children.
This value has no effect on non-web platforms.
prevent_default_event_handling: bool
Whether or not to stop events from propagating out of the canvas element
When true
, this will prevent common browser hotkeys like F5, F12, Ctrl+R, tab, etc.
from performing their default behavior while the bevy app has focus.
This value has no effect on non-web platforms.
internal: InternalWindowState
Stores internal state that isn’t directly accessible.
ime_enabled: bool
Should the window use Input Method Editor?
If enabled, the window will receive Ime
events instead of
ReceivedCharacter
or
KeyboardInput
.
IME should be enabled during text input, but not when you expect to get the exact key pressed.
Platform-specific
- iOS / Android / Web: Unsupported.
ime_position: Vec2
Sets location of IME candidate box in client area coordinates relative to the top left.
Platform-specific
- iOS / Android / Web: Unsupported.
window_theme: Option<WindowTheme>
Sets a specific theme for the window.
If None
is provided, the window will use the system theme.
Platform-specific
- iOS / Android / Web: Unsupported.
Implementations§
source§impl Window
impl Window
sourcepub fn set_maximized(&mut self, maximized: bool)
pub fn set_maximized(&mut self, maximized: bool)
Setting to true will attempt to maximize the window.
Setting to false will attempt to un-maximize the window.
sourcepub fn set_minimized(&mut self, minimized: bool)
pub fn set_minimized(&mut self, minimized: bool)
Setting to true will attempt to minimize the window.
Setting to false will attempt to un-minimize the window.
sourcepub fn width(&self) -> f32
pub fn width(&self) -> f32
The window’s client area width in logical pixels.
See WindowResolution
for an explanation about logical/physical sizes.
sourcepub fn height(&self) -> f32
pub fn height(&self) -> f32
The window’s client area height in logical pixels.
See WindowResolution
for an explanation about logical/physical sizes.
sourcepub fn physical_width(&self) -> u32
pub fn physical_width(&self) -> u32
The window’s client area width in physical pixels.
See WindowResolution
for an explanation about logical/physical sizes.
sourcepub fn physical_height(&self) -> u32
pub fn physical_height(&self) -> u32
The window’s client area height in physical pixels.
See WindowResolution
for an explanation about logical/physical sizes.
sourcepub fn scale_factor(&self) -> f64
pub fn scale_factor(&self) -> f64
The window’s scale factor.
Ratio of physical size to logical size, see WindowResolution
.
sourcepub fn cursor_position(&self) -> Option<Vec2>
pub fn cursor_position(&self) -> Option<Vec2>
The cursor position in this window in logical pixels.
Returns None
if the cursor is outside the window area.
See WindowResolution
for an explanation about logical/physical sizes.
sourcepub fn physical_cursor_position(&self) -> Option<Vec2>
pub fn physical_cursor_position(&self) -> Option<Vec2>
The cursor position in this window in physical pixels.
Returns None
if the cursor is outside the window area.
See WindowResolution
for an explanation about logical/physical sizes.
sourcepub fn set_cursor_position(&mut self, position: Option<Vec2>)
pub fn set_cursor_position(&mut self, position: Option<Vec2>)
Set the cursor position in this window in logical pixels.
See WindowResolution
for an explanation about logical/physical sizes.
sourcepub fn set_physical_cursor_position(&mut self, position: Option<DVec2>)
pub fn set_physical_cursor_position(&mut self, position: Option<DVec2>)
Set the cursor position in this window in physical pixels.
See WindowResolution
for an explanation about logical/physical sizes.
Trait Implementations§
source§impl Component for Windowwhere
Self: Send + Sync + 'static,
impl Component for Windowwhere Self: Send + Sync + 'static,
§type Storage = TableStorage
type Storage = TableStorage
TableStorage
or SparseStorage
.source§impl FromReflect for Windowwhere
Cursor: FromReflect,
PresentMode: FromReflect,
WindowMode: FromReflect,
WindowPosition: FromReflect,
WindowResolution: FromReflect,
String: FromReflect,
CompositeAlphaMode: FromReflect,
WindowResizeConstraints: FromReflect,
bool: FromReflect,
WindowLevel: FromReflect,
Option<String>: FromReflect,
InternalWindowState: FromReflect,
Vec2: FromReflect,
Option<WindowTheme>: FromReflect,
impl FromReflect for Windowwhere Cursor: FromReflect, PresentMode: FromReflect, WindowMode: FromReflect, WindowPosition: FromReflect, WindowResolution: FromReflect, String: FromReflect, CompositeAlphaMode: FromReflect, WindowResizeConstraints: FromReflect, bool: FromReflect, WindowLevel: FromReflect, Option<String>: FromReflect, InternalWindowState: FromReflect, Vec2: FromReflect, Option<WindowTheme>: FromReflect,
source§fn from_reflect(reflect: &dyn Reflect) -> Option<Self>
fn from_reflect(reflect: &dyn Reflect) -> Option<Self>
Self
from a reflected value.source§impl GetTypeRegistration for Windowwhere
Cursor: FromReflect,
PresentMode: FromReflect,
WindowMode: FromReflect,
WindowPosition: FromReflect,
WindowResolution: FromReflect,
String: FromReflect,
CompositeAlphaMode: FromReflect,
WindowResizeConstraints: FromReflect,
bool: FromReflect,
WindowLevel: FromReflect,
Option<String>: FromReflect,
InternalWindowState: FromReflect,
Vec2: FromReflect,
Option<WindowTheme>: FromReflect,
impl GetTypeRegistration for Windowwhere Cursor: FromReflect, PresentMode: FromReflect, WindowMode: FromReflect, WindowPosition: FromReflect, WindowResolution: FromReflect, String: FromReflect, CompositeAlphaMode: FromReflect, WindowResizeConstraints: FromReflect, bool: FromReflect, WindowLevel: FromReflect, Option<String>: FromReflect, InternalWindowState: FromReflect, Vec2: FromReflect, Option<WindowTheme>: FromReflect,
source§impl Reflect for Windowwhere
Cursor: FromReflect,
PresentMode: FromReflect,
WindowMode: FromReflect,
WindowPosition: FromReflect,
WindowResolution: FromReflect,
String: FromReflect,
CompositeAlphaMode: FromReflect,
WindowResizeConstraints: FromReflect,
bool: FromReflect,
WindowLevel: FromReflect,
Option<String>: FromReflect,
InternalWindowState: FromReflect,
Vec2: FromReflect,
Option<WindowTheme>: FromReflect,
impl Reflect for Windowwhere Cursor: FromReflect, PresentMode: FromReflect, WindowMode: FromReflect, WindowPosition: FromReflect, WindowResolution: FromReflect, String: FromReflect, CompositeAlphaMode: FromReflect, WindowResizeConstraints: FromReflect, bool: FromReflect, WindowLevel: FromReflect, Option<String>: FromReflect, InternalWindowState: FromReflect, Vec2: FromReflect, Option<WindowTheme>: FromReflect,
source§fn get_represented_type_info(&self) -> Option<&'static TypeInfo>
fn get_represented_type_info(&self) -> Option<&'static TypeInfo>
source§fn as_any_mut(&mut self) -> &mut dyn Any
fn as_any_mut(&mut self) -> &mut dyn Any
&mut dyn Any
.source§fn into_reflect(self: Box<Self>) -> Box<dyn Reflect>
fn into_reflect(self: Box<Self>) -> Box<dyn Reflect>
source§fn as_reflect(&self) -> &dyn Reflect
fn as_reflect(&self) -> &dyn Reflect
source§fn as_reflect_mut(&mut self) -> &mut dyn Reflect
fn as_reflect_mut(&mut self) -> &mut dyn Reflect
source§fn clone_value(&self) -> Box<dyn Reflect>
fn clone_value(&self) -> Box<dyn Reflect>
Reflect
trait object. Read moresource§fn set(&mut self, value: Box<dyn Reflect>) -> Result<(), Box<dyn Reflect>>
fn set(&mut self, value: Box<dyn Reflect>) -> Result<(), Box<dyn Reflect>>
source§fn reflect_ref(&self) -> ReflectRef<'_>
fn reflect_ref(&self) -> ReflectRef<'_>
source§fn reflect_mut(&mut self) -> ReflectMut<'_>
fn reflect_mut(&mut self) -> ReflectMut<'_>
source§fn reflect_owned(self: Box<Self>) -> ReflectOwned
fn reflect_owned(self: Box<Self>) -> ReflectOwned
source§fn reflect_partial_eq(&self, value: &dyn Reflect) -> Option<bool>
fn reflect_partial_eq(&self, value: &dyn Reflect) -> Option<bool>
source§fn reflect_hash(&self) -> Option<u64>
fn reflect_hash(&self) -> Option<u64>
source§fn debug(&self, f: &mut Formatter<'_>) -> Result<(), Error>
fn debug(&self, f: &mut Formatter<'_>) -> Result<(), Error>
source§fn serializable(&self) -> Option<Serializable<'_>>
fn serializable(&self) -> Option<Serializable<'_>>
source§fn is_dynamic(&self) -> bool
fn is_dynamic(&self) -> bool
source§impl Struct for Windowwhere
Cursor: FromReflect,
PresentMode: FromReflect,
WindowMode: FromReflect,
WindowPosition: FromReflect,
WindowResolution: FromReflect,
String: FromReflect,
CompositeAlphaMode: FromReflect,
WindowResizeConstraints: FromReflect,
bool: FromReflect,
WindowLevel: FromReflect,
Option<String>: FromReflect,
InternalWindowState: FromReflect,
Vec2: FromReflect,
Option<WindowTheme>: FromReflect,
impl Struct for Windowwhere Cursor: FromReflect, PresentMode: FromReflect, WindowMode: FromReflect, WindowPosition: FromReflect, WindowResolution: FromReflect, String: FromReflect, CompositeAlphaMode: FromReflect, WindowResizeConstraints: FromReflect, bool: FromReflect, WindowLevel: FromReflect, Option<String>: FromReflect, InternalWindowState: FromReflect, Vec2: FromReflect, Option<WindowTheme>: FromReflect,
source§fn field(&self, name: &str) -> Option<&dyn Reflect>
fn field(&self, name: &str) -> Option<&dyn Reflect>
name
as a &dyn Reflect
.source§fn field_mut(&mut self, name: &str) -> Option<&mut dyn Reflect>
fn field_mut(&mut self, name: &str) -> Option<&mut dyn Reflect>
name
as a
&mut dyn Reflect
.source§fn field_at(&self, index: usize) -> Option<&dyn Reflect>
fn field_at(&self, index: usize) -> Option<&dyn Reflect>
index
as a
&dyn Reflect
.source§fn field_at_mut(&mut self, index: usize) -> Option<&mut dyn Reflect>
fn field_at_mut(&mut self, index: usize) -> Option<&mut dyn Reflect>
index
as a &mut dyn Reflect
.source§fn name_at(&self, index: usize) -> Option<&str>
fn name_at(&self, index: usize) -> Option<&str>
index
.source§fn iter_fields(&self) -> FieldIter<'_>
fn iter_fields(&self) -> FieldIter<'_>
source§fn clone_dynamic(&self) -> DynamicStruct
fn clone_dynamic(&self) -> DynamicStruct
DynamicStruct
.source§impl TypePath for Windowwhere
Cursor: FromReflect,
PresentMode: FromReflect,
WindowMode: FromReflect,
WindowPosition: FromReflect,
WindowResolution: FromReflect,
String: FromReflect,
CompositeAlphaMode: FromReflect,
WindowResizeConstraints: FromReflect,
bool: FromReflect,
WindowLevel: FromReflect,
Option<String>: FromReflect,
InternalWindowState: FromReflect,
Vec2: FromReflect,
Option<WindowTheme>: FromReflect,
impl TypePath for Windowwhere Cursor: FromReflect, PresentMode: FromReflect, WindowMode: FromReflect, WindowPosition: FromReflect, WindowResolution: FromReflect, String: FromReflect, CompositeAlphaMode: FromReflect, WindowResizeConstraints: FromReflect, bool: FromReflect, WindowLevel: FromReflect, Option<String>: FromReflect, InternalWindowState: FromReflect, Vec2: FromReflect, Option<WindowTheme>: FromReflect,
source§fn type_path() -> &'static str
fn type_path() -> &'static str
source§fn short_type_path() -> &'static str
fn short_type_path() -> &'static str
source§fn type_ident() -> Option<&'static str>
fn type_ident() -> Option<&'static str>
source§fn crate_name() -> Option<&'static str>
fn crate_name() -> Option<&'static str>
source§impl Typed for Windowwhere
Cursor: FromReflect,
PresentMode: FromReflect,
WindowMode: FromReflect,
WindowPosition: FromReflect,
WindowResolution: FromReflect,
String: FromReflect,
CompositeAlphaMode: FromReflect,
WindowResizeConstraints: FromReflect,
bool: FromReflect,
WindowLevel: FromReflect,
Option<String>: FromReflect,
InternalWindowState: FromReflect,
Vec2: FromReflect,
Option<WindowTheme>: FromReflect,
impl Typed for Windowwhere Cursor: FromReflect, PresentMode: FromReflect, WindowMode: FromReflect, WindowPosition: FromReflect, WindowResolution: FromReflect, String: FromReflect, CompositeAlphaMode: FromReflect, WindowResizeConstraints: FromReflect, bool: FromReflect, WindowLevel: FromReflect, Option<String>: FromReflect, InternalWindowState: FromReflect, Vec2: FromReflect, Option<WindowTheme>: FromReflect,
Auto Trait Implementations§
impl RefUnwindSafe for Window
impl Send for Window
impl Sync for Window
impl Unpin for Window
impl UnwindSafe for Window
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<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) -> Cwhere F: for<'a> FnMut(&'a mut T) -> OwningPtr<'a, Aligned>,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>
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, Global>) -> Rc<dyn Any, Global>
fn into_any_rc(self: Rc<T, Global>) -> Rc<dyn Any, Global>
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)
&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)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.source§impl<C> DynamicBundle for Cwhere
C: Component,
impl<C> DynamicBundle for Cwhere C: Component,
fn get_components( self, func: &mut impl FnMut(StorageType, OwningPtr<'_, Aligned>) )
source§impl<T> DynamicTypePath for Twhere
T: TypePath,
impl<T> DynamicTypePath for Twhere T: TypePath,
source§fn reflect_type_path(&self) -> &str
fn reflect_type_path(&self) -> &str
TypePath::type_path
.source§fn reflect_short_type_path(&self) -> &str
fn reflect_short_type_path(&self) -> &str
source§fn reflect_type_ident(&self) -> Option<&str>
fn reflect_type_ident(&self) -> Option<&str>
TypePath::type_ident
.source§fn reflect_crate_name(&self) -> Option<&str>
fn reflect_crate_name(&self) -> Option<&str>
TypePath::crate_name
.source§fn reflect_module_path(&self) -> Option<&str>
fn reflect_module_path(&self) -> Option<&str>
source§impl<T> FromWorld for Twhere
T: Default,
impl<T> FromWorld for Twhere T: Default,
source§fn from_world(_world: &mut World) -> T
fn from_world(_world: &mut World) -> T
Self
using data from the given Worldsource§impl<S> GetField for Swhere
S: Struct,
impl<S> GetField for Swhere S: Struct,
source§impl<T> GetPath for Twhere
T: Reflect,
impl<T> GetPath for Twhere T: Reflect,
source§fn reflect_path<'r, 'p>(
&'r self,
path: &'p str
) -> Result<&'r (dyn Reflect + 'static), ReflectPathError<'p>>
fn reflect_path<'r, 'p>( &'r self, path: &'p str ) -> Result<&'r (dyn Reflect + 'static), ReflectPathError<'p>>
path
. Read moresource§fn reflect_path_mut<'r, 'p>(
&'r mut self,
path: &'p str
) -> Result<&'r mut (dyn Reflect + 'static), ReflectPathError<'p>>
fn reflect_path_mut<'r, 'p>( &'r mut self, path: &'p str ) -> Result<&'r mut (dyn Reflect + 'static), ReflectPathError<'p>>
path
. Read more