Struct cushy::window::CushyWindow
source · pub struct CushyWindow { /* private fields */ }
Expand description
A standalone Cushy window.
This type allows rendering Cushy applications directly into any wgpu application.
Implementations§
source§impl CushyWindow
impl CushyWindow
sourcepub fn prepare<W>(&mut self, window: W, device: &Device, queue: &Queue)where
W: PlatformWindowImplementation,
pub fn prepare<W>(&mut self, window: W, device: &Device, queue: &Queue)where
W: PlatformWindowImplementation,
Prepares all necessary resources and operations necessary to render the next frame.
sourcepub fn render(
&mut self,
pass: &RenderPassDescriptor<'_>,
device: &Device,
queue: &Queue,
) -> Option<SubmissionIndex>
pub fn render( &mut self, pass: &RenderPassDescriptor<'_>, device: &Device, queue: &Queue, ) -> Option<SubmissionIndex>
Renders this window in a wgpu render pass created from pass
.
Returns the submission index of the last command submission, if any commands were submitted.
sourcepub fn render_with(
&mut self,
pass: &RenderPassDescriptor<'_>,
device: &Device,
queue: &Queue,
additional_drawing: Option<&Drawing>,
) -> Option<SubmissionIndex>
pub fn render_with( &mut self, pass: &RenderPassDescriptor<'_>, device: &Device, queue: &Queue, additional_drawing: Option<&Drawing>, ) -> Option<SubmissionIndex>
Renders this window in a wgpu render pass created from pass
.
Returns the submission index of the last command submission, if any commands were submitted.
sourcepub fn render_into(
&mut self,
texture: &Texture,
load_op: LoadOp<Color>,
device: &Device,
queue: &Queue,
) -> Option<SubmissionIndex>
pub fn render_into( &mut self, texture: &Texture, load_op: LoadOp<Color>, device: &Device, queue: &Queue, ) -> Option<SubmissionIndex>
Renders this window into texture
after performing load_op
.
sourcepub fn graphics<'gfx>(
&'gfx mut self,
device: &'gfx Device,
queue: &'gfx Queue,
) -> Graphics<'gfx>
pub fn graphics<'gfx>( &'gfx mut self, device: &'gfx Device, queue: &'gfx Queue, ) -> Graphics<'gfx>
Returns a new [kludgine::Graphics
] context for this window.
sourcepub fn set_focused(&mut self, focused: bool)
pub fn set_focused(&mut self, focused: bool)
Sets the window’s focused status.
Being focused means that the window is expecting to be able to receive user input.
sourcepub fn set_occluded<W>(&mut self, window: &W, occluded: bool)where
W: PlatformWindowImplementation,
pub fn set_occluded<W>(&mut self, window: &W, occluded: bool)where
W: PlatformWindowImplementation,
Sets the window’s occlusion status.
This should only be set to true if the window is not visible at all to the end user due to being offscreen, minimized, or fully hidden behind other windows.
sourcepub fn request_close<W>(&mut self, window: W) -> boolwhere
W: PlatformWindowImplementation,
pub fn request_close<W>(&mut self, window: W) -> boolwhere
W: PlatformWindowImplementation,
Requests that the window close.
Returns true if the request should be honored.
sourcepub fn effective_scale(&self) -> Fraction
pub fn effective_scale(&self) -> Fraction
Returns the effective scale of the window.
sourcepub fn resize<W>(
&mut self,
window: &W,
new_size: Size<UPx>,
new_scale: impl Into<Fraction>,
new_zoom: impl Into<Fraction>,
queue: &Queue,
)where
W: PlatformWindowImplementation,
pub fn resize<W>(
&mut self,
window: &W,
new_size: Size<UPx>,
new_scale: impl Into<Fraction>,
new_zoom: impl Into<Fraction>,
queue: &Queue,
)where
W: PlatformWindowImplementation,
Updates the dimensions and DPI scaling of the window.
sourcepub fn set_position(&mut self, new_position: Point<Px>)
pub fn set_position(&mut self, new_position: Point<Px>)
Sets the window’s position.
sourcepub fn keyboard_input<W>(
&mut self,
window: W,
device_id: DeviceId,
input: KeyEvent,
is_synthetic: bool,
) -> EventHandlingwhere
W: PlatformWindowImplementation,
pub fn keyboard_input<W>(
&mut self,
window: W,
device_id: DeviceId,
input: KeyEvent,
is_synthetic: bool,
) -> EventHandlingwhere
W: PlatformWindowImplementation,
sourcepub fn mouse_wheel<W>(
&mut self,
window: W,
device_id: DeviceId,
delta: MouseScrollDelta,
phase: TouchPhase,
) -> EventHandlingwhere
W: PlatformWindowImplementation,
pub fn mouse_wheel<W>(
&mut self,
window: W,
device_id: DeviceId,
delta: MouseScrollDelta,
phase: TouchPhase,
) -> EventHandlingwhere
W: PlatformWindowImplementation,
sourcepub fn ime<W>(&mut self, window: W, ime: &Ime) -> EventHandlingwhere
W: PlatformWindowImplementation,
pub fn ime<W>(&mut self, window: W, ime: &Ime) -> EventHandlingwhere
W: PlatformWindowImplementation,
sourcepub fn cursor_moved<W>(
&mut self,
window: W,
device_id: DeviceId,
position: impl Into<Point<Px>>,
)where
W: PlatformWindowImplementation,
pub fn cursor_moved<W>(
&mut self,
window: W,
device_id: DeviceId,
position: impl Into<Point<Px>>,
)where
W: PlatformWindowImplementation,
Provides cursor movement events to this window.
sourcepub fn cursor_left<W>(&mut self, window: W)where
W: PlatformWindowImplementation,
pub fn cursor_left<W>(&mut self, window: W)where
W: PlatformWindowImplementation,
Notifies the window that the cursor is no longer within the window.
sourcepub fn mouse_input<W>(
&mut self,
window: W,
device_id: DeviceId,
state: ElementState,
button: MouseButton,
) -> EventHandlingwhere
W: PlatformWindowImplementation,
pub fn mouse_input<W>(
&mut self,
window: W,
device_id: DeviceId,
state: ElementState,
button: MouseButton,
) -> EventHandlingwhere
W: PlatformWindowImplementation,
Auto Trait Implementations§
impl !Freeze for CushyWindow
impl !RefUnwindSafe for CushyWindow
impl !Send for CushyWindow
impl !Sync for CushyWindow
impl Unpin for CushyWindow
impl !UnwindSafe for CushyWindow
Blanket Implementations§
source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
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) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
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<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
source§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
parameters
when converting.source§fn cam16_into_unclamped(
self,
parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>,
) -> T
fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T
self
into C
, using the provided parameters.§impl<A> Cast for A
impl<A> Cast for A
source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
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<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
angle
.source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
other
into Self
, while performing the appropriate scaling,
rounding and clamping.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
source§fn into_angle(self) -> U
fn into_angle(self) -> U
T
.source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
source§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
parameters
when converting.source§fn into_cam16_unclamped(
self,
parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>,
) -> T
fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T
self
into C
, using the provided parameters.source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
source§fn into_color(self) -> U
fn into_color(self) -> U
source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> IntoReadOnly<T> for T
impl<T> IntoReadOnly<T> for T
source§fn into_read_only(self) -> ReadOnly<T>
fn into_read_only(self) -> ReadOnly<T>
self
as a ReadOnly
.source§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
self
into T
, while performing the appropriate scaling,
rounding and clamping.source§impl<T> IntoValue<T> for T
impl<T> IntoValue<T> for T
source§fn into_value(self) -> Value<T>
fn into_value(self) -> Value<T>
Value
.§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
source§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
try_into_colors
fails to cast.source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
source§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
OutOfBounds
error is returned which contains
the unclamped color. Read more