Struct slint::Timer

pub struct Timer { /* private fields */ }
Expand description

Timer is a handle to the timer system that allows triggering a callback to be called after a specified period of time.

Use Timer::start() to create a timer that can repeat at frequent interval, or Timer::single_shot if you just want to call a function with a delay and do not need to be able to stop it.

Note: the timer can only be used in the thread that runs the Slint event loop. They will not fire if used in another thread.

Example

use slint::{Timer, TimerMode};
let timer = Timer::default();
timer.start(TimerMode::Repeated, std::time::Duration::from_millis(200), move || {
   println!("This will be printed every 200ms.");
});
// ... more initialization ...
slint::run_event_loop();

Implementations§

Starts the timer with the given mode and interval, in order for the callback to called when the timer fires. If the timer has been started previously and not fired yet, then it will be restarted.

Arguments:

  • mode: The timer mode to apply, i.e. whether to repeatedly fire the timer or just once.
  • interval: The duration from now until when the timer should fire. And the period of that timer for Repeated timers.
  • callback: The function to call when the time has been reached or exceeded.

Starts the timer with the duration, in order for the callback to called when the timer fires. It is fired only once and then deleted.

Arguments:

  • duration: The duration from now until when the timer should fire.
  • callback: The function to call when the time has been reached or exceeded.
Example
use slint::Timer;
Timer::single_shot(std::time::Duration::from_millis(200), move || {
   println!("This will be printed after 200ms.");
});

Stops the previously started timer. Does nothing if the timer has never been started.

Restarts the timer. If the timer was previously started by calling Self::start() with a duration and callback, then the time when the callback will be next invoked is re-calculated to be in the specified duration relative to when this function is called.

Does nothing if the timer was never started.

Returns true if the timer is running; false otherwise.

Trait Implementations§

Returns the “default value” for a type. Read more
Executes the destructor for this type. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The none-equivalent value.
The alignment of pointer.
The type for initializers.
Initializes a with the given initializer. Read more
Dereferences the given pointer. Read more
Mutably dereferences the given pointer. Read more
Drops the object pointed to by the given pointer. Read more
Read this value from the supplied reader. Same as ReadEndian::read_from_little_endian().
Read this value from the supplied reader. Same as ReadEndian::read_from_big_endian().
Read this value from the supplied reader. Same as ReadEndian::read_from_native_endian().
Should always be Self
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more