pub struct SampleComponent {}
Expand description

This an example of the API that is generated for a component in .slint design markup. This may help you understand what functions you can call and how you can pass data in and out. This is the source code:

SampleComponent := Window {
    property<int> counter;
    // note that dashes will be replaced by underscores in the generated code
    property<string> user-name;
    callback hello();
    // ... maybe more elements here
}

Implementationsยง

sourceยง

impl SampleComponent

source

pub fn new() -> Self

Creates a new instance that is reference counted and pinned in memory.

source

pub fn get_counter(&self) -> i32

A getter is generated for each property declared at the root of the component. In this case, this is the getter that returns the value of the counter property declared in the .slint design markup.

source

pub fn set_counter(&self, value: i32)

A setter is generated for each property declared at the root of the component, In this case, this is the setter that sets the value of the counter property declared in the .slint design markup.

source

pub fn get_user_name(&self) -> SharedString

Returns the value of the user_name property declared in the .slint design markup.

source

pub fn set_user_name(&self, value: SharedString)

Assigns a new value to the user_name property.

source

pub fn invoke_hello(&self)

For each callback declared at the root of the component, a function to call that callback is generated. This is the function that calls the hello callback declared in the .slint design markup.

source

pub fn on_hello(&self, f: impl Fn() + 'static)

For each callback declared at the root of the component, a function connect to that callback is generated. This is the function that registers the function f as callback when the callback hello is emitted. In order to access the component in the callback, youโ€™d typically capture a weak reference obtained using ComponentHandle::as_weak and then upgrade it to a strong reference when the callback is run:

โ“˜
    let sample = SampleComponent::new();
    let sample_weak = sample.as_weak();
    sample.as_ref().on_hello(move || {
        let sample = sample_weak.unwrap();
        sample.as_ref().set_counter(42);
    });

Trait Implementationsยง

sourceยง

impl Clone for SampleComponent

sourceยง

fn clone(&self) -> SampleComponent

Returns a copy of the value. Read more
1.0.0 ยท sourceยง

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
sourceยง

impl ComponentHandle for SampleComponent

sourceยง

fn as_weak(&self) -> Weak<Self>

Returns a new weak pointer.

sourceยง

fn clone_strong(&self) -> Self

Returns a clone of this handle thatโ€™s a strong reference.

sourceยง

fn show(&self)

Marks the window of this component to be shown on the screen. This registers the window with the windowing system. In order to react to events from the windowing system, such as draw requests or mouse/touch input, it is still necessary to spin the event loop, using crate::run_event_loop.

sourceยง

fn hide(&self)

Marks the window of this component to be hidden on the screen. This de-registers the window from the windowing system and it will not receive any further events.

sourceยง

fn window(&self) -> &Window

Returns the Window associated with this component. The window API can be used to control different aspects of the integration into the windowing system, such as the position on the screen.

sourceยง

fn run(&self)

This is a convenience function that first calls Self::show, followed by crate::run_event_loop() and Self::hide.

sourceยง

fn global<'a, T: Global<'a, Self>>(&'a self) -> T

This function provides access to instances of global singletons exported in .slint.

Auto Trait Implementationsยง

Blanket Implementationsยง

sourceยง

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

sourceยง

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
sourceยง

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

const: unstable ยท sourceยง

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
sourceยง

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

const: unstable ยท sourceยง

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

Mutably borrows from an owned value. Read more
ยง

impl<T> Downcast for Twhere T: Any,

ยง

fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>

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 + 'static>

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.
ยง

impl<T> DowncastSync for Twhere T: Any + Send + Sync,

ยง

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync + 'static>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
sourceยง

impl<T> From<T> for T

const: unstable ยท sourceยง

fn from(t: T) -> T

Returns the argument unchanged.

sourceยง

impl<T> Instrument for T

sourceยง

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

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
sourceยง

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

const: unstable ยท 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.

ยง

impl<T> Pointable for T

ยง

const ALIGN: usize = mem::align_of::<T>()

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

ยง

type Output = T

Should always be Self
sourceยง

impl<T> ToOwned for Twhere T: Clone,

ยง

type Owned = T

The resulting type after obtaining ownership.
sourceยง

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
sourceยง

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
sourceยง

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

ยง

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable ยท sourceยง

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

Performs the conversion.
sourceยง

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

ยง

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

The type returned in the event of a conversion error.
const: unstable ยท sourceยง

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

Performs the conversion.
ยง

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

ยง

fn vzip(self) -> V

sourceยง

impl<T> WithSubscriber for T

sourceยง

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
sourceยง

fn with_current_subscriber(self) -> WithDispatch<Self>

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