Enum iced::window::Action

source ·
pub enum Action<T> {
Show 23 variants Spawn(Id, Settings), Close(Id), Drag(Id), Resize(Id, Size), FetchSize(Id, Box<dyn FnOnce(Size) -> T>), FetchMaximized(Id, Box<dyn FnOnce(bool) -> T>), Maximize(Id, bool), FetchMinimized(Id, Box<dyn FnOnce(Option<bool>) -> T>), Minimize(Id, bool), FetchPosition(Id, Box<dyn FnOnce(Option<Point>) -> T>), Move(Id, Point), ChangeMode(Id, Mode), FetchMode(Id, Box<dyn FnOnce(Mode) -> T>), ToggleMaximize(Id), ToggleDecorations(Id), RequestUserAttention(Id, Option<UserAttention>), GainFocus(Id), ChangeLevel(Id, Level), ShowSystemMenu(Id), FetchId(Id, Box<dyn FnOnce(u64) -> T>), ChangeIcon(Id, Icon), RunWithHandle(Id, Box<dyn FnOnce(&WindowHandle<'_>) -> T>), Screenshot(Id, Box<dyn FnOnce(Screenshot) -> T>),
}
Expand description

An operation to be performed on some window.

Variants§

§

Spawn(Id, Settings)

Spawns a new window with some Settings.

§

Close(Id)

Close the window and exits the application.

§

Drag(Id)

Move the window with the left mouse button until the button is released.

There’s no guarantee that this will work unless the left mouse button was pressed immediately before this function is called.

§

Resize(Id, Size)

Resize the window to the given logical dimensions.

§

FetchSize(Id, Box<dyn FnOnce(Size) -> T>)

Fetch the current logical dimensions of the window.

§

FetchMaximized(Id, Box<dyn FnOnce(bool) -> T>)

Fetch if the current window is maximized or not.

Platform-specific
  • iOS / Android / Web: Unsupported.
§

Maximize(Id, bool)

Set the window to maximized or back

§

FetchMinimized(Id, Box<dyn FnOnce(Option<bool>) -> T>)

Fetch if the current window is minimized or not.

Platform-specific
  • Wayland: Always None.
  • iOS / Android / Web: Unsupported.
§

Minimize(Id, bool)

Set the window to minimized or back

§

FetchPosition(Id, Box<dyn FnOnce(Option<Point>) -> T>)

Fetch the current logical coordinates of the window.

§

Move(Id, Point)

Move the window to the given logical coordinates.

Unsupported on Wayland.

§

ChangeMode(Id, Mode)

Change the Mode of the window.

§

FetchMode(Id, Box<dyn FnOnce(Mode) -> T>)

Fetch the current Mode of the window.

§

ToggleMaximize(Id)

Toggle the window to maximized or back

§

ToggleDecorations(Id)

Toggle whether window has decorations.

Platform-specific
  • X11: Not implemented.
  • Web: Unsupported.
§

RequestUserAttention(Id, Option<UserAttention>)

Request user attention to the window, this has no effect if the application is already focused. How requesting for user attention manifests is platform dependent, see UserAttention for details.

Providing None will unset the request for user attention. Unsetting the request for user attention might not be done automatically by the WM when the window receives input.

Platform-specific
  • iOS / Android / Web: Unsupported.
  • macOS: None has no effect.
  • X11: Requests for user attention must be manually cleared.
  • Wayland: Requires xdg_activation_v1 protocol, None has no effect.
§

GainFocus(Id)

Bring the window to the front and sets input focus. Has no effect if the window is already in focus, minimized, or not visible.

This method steals input focus from other applications. Do not use this method unless you are certain that’s what the user wants. Focus stealing can cause an extremely disruptive user experience.

Platform-specific
  • Web / Wayland: Unsupported.
§

ChangeLevel(Id, Level)

Change the window Level.

§

ShowSystemMenu(Id)

Show the system menu at cursor position.

Platform-specific

Android / iOS / macOS / Orbital / Web / X11: Unsupported.

§

FetchId(Id, Box<dyn FnOnce(u64) -> T>)

Fetch the raw identifier unique to the window.

§

ChangeIcon(Id, Icon)

Change the window Icon.

On Windows and X11, this is typically the small icon in the top-left corner of the titlebar.

Platform-specific
  • Web / Wayland / macOS: Unsupported.

  • Windows: Sets ICON_SMALL. The base size for a window icon is 16x16, but it’s recommended to account for screen scaling and pick a multiple of that, i.e. 32x32.

  • X11: Has no universal guidelines for icon sizes, so you’re at the whims of the WM. That said, it’s usually in the same ballpark as on Windows.

§

RunWithHandle(Id, Box<dyn FnOnce(&WindowHandle<'_>) -> T>)

Runs the closure with the native window handle of the window with the given Id.

§

Screenshot(Id, Box<dyn FnOnce(Screenshot) -> T>)

Screenshot the viewport of the window.

Implementations§

source§

impl<T> Action<T>

source

pub fn map<A>( self, f: impl Fn(T) -> A + MaybeSend + Sync + 'static ) -> Action<A>
where T: 'static,

Maps the output of a window Action using the provided closure.

Trait Implementations§

source§

impl<T> Debug for Action<T>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<T> !RefUnwindSafe for Action<T>

§

impl<T> !Send for Action<T>

§

impl<T> !Sync for Action<T>

§

impl<T> Unpin for Action<T>

§

impl<T> !UnwindSafe for Action<T>

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<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<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> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same for T

§

type Output = T

Should always be Self
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<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

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