Struct kludgine::app::Window

source ·
pub struct Window<'window, WindowEvent = ()>
where WindowEvent: Send + 'static,
{ /* private fields */ }
Expand description

An open window.

Implementations§

source§

impl<'window, WindowEvent> Window<'window, WindowEvent>
where WindowEvent: Send + 'static,

source

pub fn handle(&self) -> WindowHandle<WindowEvent>

Returns a handle to this window, which can be used to send WindowEvents to it.

source

pub fn app(&self) -> App<WindowEvent>

Returns a handle to the application.

This is useful for opening additional windows in a multi-window application.

source

pub fn close(&mut self)

Closes this window as soon as control returns to Kludgine.

source

pub fn position(&self) -> Point<Px>

Returns the current position of the window.

source

pub fn set_position(&self, position: Point<Px>)

Sets the current position of the window.

source

pub fn inner_size(&self) -> Size<UPx>

Returns the inner size of the window.

source

pub fn winit(&self) -> &Window

Returns a reference to the underlying winit window.

source

pub fn set_inner_size(&self, inner_size: Size<UPx>)

Sets the inner size of the window.

source

pub const fn focused(&self) -> bool

Returns true if the window is currently focused for keyboard input.

source

pub const fn theme(&self) -> Theme

Returns the current user interface theme for the window.

source

pub const fn ocluded(&self) -> bool

Returns true if the window is currenly not visible because it is completely hidden behind other windows, offcreen, or minimized.

source

pub fn title(&self) -> String

Returns the current title of the window.

source

pub fn set_title(&mut self, new_title: &str)

Sets the title of the window.

source

pub fn set_ime_allowed(&self, allowed: bool)

Sets whether IME input is allowed on the window.

source

pub fn set_ime_purpose(&self, purpose: ImePurpose)

Sets the IME purpose.

source

pub fn set_ime_cursor_area(&self, area: Rect<UPx>)

Sets the cursor area for IME input suggestions.

source

pub fn redraw_in(&mut self, duration: Duration)

Sets the window to redraw after a duration.

If the window is already set to redraw sooner, this function does nothing.

source

pub fn redraw_at(&mut self, time: Instant)

Sets the window to redraw at the provided time.

If the window is already set to redraw sooner, this function does nothing.

source

pub fn set_needs_redraw(&mut self)

Sets the window to redraw as soon as it can.

source

pub const fn elapsed(&self) -> Duration

Returns the duration that has elapsed since the last frame start and the current frame start.

This value is calculated once per frame and will not update between calls within the same event.

source

pub const fn last_frame_rendered_in(&self) -> Duration

Returns the duration taken between when the last frame’s redraw started and when the surface’s frame was presented.

source

pub fn cursor_position(&self) -> Option<Point<Px>>

Returns the position of the mouse cursor within this window, if the cursor is currently above the window.

source

pub fn mouse_button_pressed(&self, button: MouseButton) -> bool

Returns true if the given button is currently pressed.

source

pub fn key_pressed(&self, key: impl Into<PhysicalKey>) -> bool

Returns true if the given virtual key code is currently pressed.

source

pub fn modifiers(&self) -> Modifiers

Returns currently active modifiers.

source

pub fn set_min_inner_size(&self, min_size: Option<Size<UPx>>)

Sets the window’s minimum inner size.

source

pub fn set_max_inner_size(&self, max_size: Option<Size<UPx>>)

Sets the window’s maximum inner size.

Auto Trait Implementations§

§

impl<'window, WindowEvent> Freeze for Window<'window, WindowEvent>

§

impl<'window, WindowEvent = ()> !RefUnwindSafe for Window<'window, WindowEvent>

§

impl<'window, WindowEvent> Send for Window<'window, WindowEvent>

§

impl<'window, WindowEvent = ()> !Sync for Window<'window, WindowEvent>

§

impl<'window, WindowEvent> Unpin for Window<'window, WindowEvent>

§

impl<'window, WindowEvent = ()> !UnwindSafe for Window<'window, WindowEvent>

Blanket Implementations§

source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
where T: Real + Zero + Arithmetics + Clone, Swp: WhitePoint<T>, Dwp: WhitePoint<T>, D: AdaptFrom<S, Swp, Dwp, T>,

source§

fn adapt_into_using<M>(self, method: M) -> D
where M: TransformMatrix<T>,

Convert the source color to the destination color using the specified method.
source§

fn adapt_into(self) -> D

Convert the source color to the destination color using the bradford method by default.
source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T, C> ArraysFrom<C> for T
where C: IntoArrays<T>,

source§

fn arrays_from(colors: C) -> T

Cast a collection of colors into a collection of arrays.
source§

impl<T, C> ArraysInto<C> for T
where C: FromArrays<T>,

source§

fn arrays_into(self) -> C

Cast this collection of arrays into a collection of colors.
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
source§

impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for U
where T: FromCam16Unclamped<WpParam, U>,

§

type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
source§

fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar> ) -> T

Converts self into C, using the provided parameters.
§

impl<A> Cast for A

§

fn cast<To>(self) -> To
where To: CastFrom<A>,

Casts self to the To type. This may be a lossy operation.
§

impl<A> CastFrom<A> for A

§

fn from_cast(from: A) -> A

Returns from as Self.
§

impl<A, B> CastInto<A> for B
where A: CastFrom<B>,

§

fn cast_into(self) -> A

Returns self as To.
source§

impl<T, C> ComponentsFrom<C> for T
where C: IntoComponents<T>,

source§

fn components_from(colors: C) -> T

Cast a collection of colors into a collection of color components.
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

§

impl<T> Downcast for T
where T: 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.
§

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.
§

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.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> FromAngle<T> for T

source§

fn from_angle(angle: T) -> T

Performs a conversion from angle.
source§

impl<T, U> FromStimulus<U> for T
where U: IntoStimulus<T>,

source§

fn from_stimulus(other: U) -> T

Converts other into Self, while performing the appropriate scaling, rounding and clamping.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

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 T
where U: From<T>,

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> IntoAngle<U> for T
where U: FromAngle<T>,

source§

fn into_angle(self) -> U

Performs a conversion into T.
source§

impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for U
where T: Cam16FromUnclamped<WpParam, U>,

§

type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
source§

fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar> ) -> T

Converts self into C, using the provided parameters.
source§

impl<T, U> IntoColor<U> for T
where U: FromColor<T>,

source§

fn into_color(self) -> U

Convert into T with values clamped to the color defined bounds Read more
source§

impl<T, U> IntoColorUnclamped<U> for T
where U: FromColorUnclamped<T>,

source§

fn into_color_unclamped(self) -> U

Convert into T. The resulting color might be invalid in its color space Read more
source§

impl<T> IntoStimulus<T> for T

source§

fn into_stimulus(self) -> T

Converts self into T, while performing the appropriate scaling, rounding and clamping.
source§

impl<T, C> TryComponentsInto<C> for T
where C: TryFromComponents<T>,

§

type Error = <C as TryFromComponents<T>>::Error

The error for when try_into_colors fails to cast.
source§

fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>

Try to cast this collection of color components into a collection of colors. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

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

Performs the conversion.
source§

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

§

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

The type returned in the event of a conversion error.
source§

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

Performs the conversion.
source§

impl<T, U> TryIntoColor<U> for T
where U: TryFromColor<T>,

source§

fn try_into_color(self) -> Result<U, OutOfBounds<U>>

Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more
source§

impl<C, U> UintsFrom<C> for U
where C: IntoUints<U>,

source§

fn uints_from(colors: C) -> U

Cast a collection of colors into a collection of unsigned integers.
source§

impl<C, U> UintsInto<C> for U
where C: FromUints<U>,

source§

fn uints_into(self) -> C

Cast this collection of unsigned integers into a collection of colors.
§

impl<T> Upcast<T> for T

§

fn upcast(&self) -> Option<&T>

§

impl<T> WithSubscriber for T

§

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
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<T> WasmNotSend for T
where T: Send,