Struct bevy_window::Window[][src]

pub struct Window { /* fields omitted */ }

An operating system window that can present content and receive user input.

Window Sizes

There are three sizes associated with a window. The physical size which is the height and width in physical pixels on the monitor. The logical size which is the physical size scaled by an operating system provided factor to account for monitors with differing pixel densities or user preference. And the requested size, measured in logical pixels, which is the value submitted to the API when creating the window, or requesting that it be resized.

The actual size, in logical pixels, of the window may not match the requested size due to operating system limits on the window size, or the quantization of the logical size when converting the physical size to the logical size through the scaling factor.

Implementations

impl Window[src]

pub fn new(
    id: WindowId,
    window_descriptor: &WindowDescriptor,
    physical_width: u32,
    physical_height: u32,
    scale_factor: f64,
    position: Option<IVec2>
) -> Self
[src]

pub fn id(&self) -> WindowId[src]

pub fn width(&self) -> f32[src]

The current logical width of the window’s client area.

pub fn height(&self) -> f32[src]

The current logical height of the window’s client area.

pub fn requested_width(&self) -> f32[src]

The requested window client area width in logical pixels from window creation or the last call to set_resolution.

This may differ from the actual width depending on OS size limits and the scaling factor for high DPI monitors.

pub fn requested_height(&self) -> f32[src]

The requested window client area height in logical pixels from window creation or the last call to set_resolution.

This may differ from the actual width depending on OS size limits and the scaling factor for high DPI monitors.

pub fn physical_width(&self) -> u32[src]

The window’s client area width in physical pixels.

pub fn physical_height(&self) -> u32[src]

The window’s client area height in physical pixels.

pub fn resize_constraints(&self) -> WindowResizeConstraints[src]

The window’s client resize constraint in logical pixels.

pub fn position(&self) -> Option<IVec2>[src]

The window’s client position in physical pixels.

pub fn set_maximized(&mut self, maximized: bool)[src]

pub fn set_minimized(&mut self, minimized: bool)[src]

Sets the window to minimized or back.

Platform-specific

  • iOS / Android / Web: Unsupported.
  • Wayland: Un-minimize is unsupported.

pub fn set_position(&mut self, position: IVec2)[src]

Modifies the position of the window in physical pixels.

Note that the top-left hand corner of the desktop is not necessarily the same as the screen. If the user uses a desktop with multiple monitors, the top-left hand corner of the desktop is the top-left hand corner of the monitor at the top-left of the desktop. This automatically un-maximizes the window if it’s maximized.

Platform-specific

  • iOS: Can only be called on the main thread. Sets the top left coordinates of the window in the screen space coordinate system.
  • Web: Sets the top-left coordinates relative to the viewport.
  • Android / Wayland: Unsupported.

pub fn set_resize_constraints(
    &mut self,
    resize_constraints: WindowResizeConstraints
)
[src]

Modifies the minimum and maximum window bounds for resizing in logical pixels.

pub fn set_resolution(&mut self, width: f32, height: f32)[src]

Request the OS to resize the window such the the client area matches the specified width and height.

pub fn set_scale_factor_override(&mut self, scale_factor: Option<f64>)[src]

Override the os-reported scaling factor

pub fn update_scale_factor_from_backend(&mut self, scale_factor: f64)[src]

pub fn update_actual_size_from_backend(
    &mut self,
    physical_width: u32,
    physical_height: u32
)
[src]

pub fn update_actual_position_from_backend(&mut self, position: IVec2)[src]

pub fn scale_factor(&self) -> f64[src]

The ratio of physical pixels to logical pixels

physical_pixels = logical_pixels * scale_factor

pub fn backend_scale_factor(&self) -> f64[src]

The window scale factor as reported by the window backend. This value is unaffected by scale_factor_override.

pub fn scale_factor_override(&self) -> Option<f64>[src]

pub fn title(&self) -> &str[src]

pub fn set_title(&mut self, title: String)[src]

pub fn vsync(&self) -> bool[src]

pub fn set_vsync(&mut self, vsync: bool)[src]

pub fn resizable(&self) -> bool[src]

pub fn set_resizable(&mut self, resizable: bool)[src]

pub fn decorations(&self) -> bool[src]

pub fn set_decorations(&mut self, decorations: bool)[src]

pub fn cursor_locked(&self) -> bool[src]

pub fn set_cursor_lock_mode(&mut self, lock_mode: bool)[src]

pub fn cursor_visible(&self) -> bool[src]

pub fn set_cursor_visibility(&mut self, visibile_mode: bool)[src]

pub fn cursor_position(&self) -> Option<Vec2>[src]

pub fn set_cursor_position(&mut self, position: Vec2)[src]

pub fn update_focused_status_from_backend(&mut self, focused: bool)[src]

pub fn update_cursor_position_from_backend(
    &mut self,
    cursor_position: Option<Vec2>
)
[src]

pub fn mode(&self) -> WindowMode[src]

pub fn set_mode(&mut self, mode: WindowMode)[src]

pub fn drain_commands(&mut self) -> impl Iterator<Item = WindowCommand> + '_[src]

pub fn is_focused(&self) -> bool[src]

Trait Implementations

impl Debug for Window[src]

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

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Component for T where
    T: 'static + Send + Sync
[src]

impl<T> Downcast for T where
    T: Any

impl<T> DowncastSync for T where
    T: Any + Send + Sync

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,