Struct slint::docs::generated_code::SampleComponent
source ยท 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:
export component SampleComponent inherits Window {
in-out property<int> counter;
// note that dashes will be replaced by underscores in the generated code
in-out property<string> user-name;
callback hello();
// ... maybe more elements here
}
Implementationsยง
sourceยงimpl SampleComponent
impl SampleComponent
sourcepub fn new() -> Result<Self, PlatformError>
pub fn new() -> Result<Self, PlatformError>
Creates a new instance that is reference counted and pinned in memory.
sourcepub fn get_counter(&self) -> i32
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.
sourcepub fn set_counter(&self, value: i32)
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.
sourcepub fn get_user_name(&self) -> SharedString
pub fn get_user_name(&self) -> SharedString
Returns the value of the user_name
property declared in the .slint
design markup.
sourcepub fn set_user_name(&self, value: SharedString)
pub fn set_user_name(&self, value: SharedString)
Assigns a new value to the user_name
property.
sourcepub fn invoke_hello(&self)
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.
sourcepub fn on_hello(&self, f: impl Fn() + 'static)
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().unwrap();
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
impl Clone for SampleComponent
sourceยงfn clone(&self) -> SampleComponent
fn clone(&self) -> SampleComponent
1.0.0 ยท sourceยงfn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresourceยงimpl ComponentHandle for SampleComponent
impl ComponentHandle for SampleComponent
sourceยงfn clone_strong(&self) -> Self
fn clone_strong(&self) -> Self
Returns a clone of this handle thatโs a strong reference.
sourceยงfn show(&self) -> Result<(), PlatformError>
fn show(&self) -> Result<(), PlatformError>
Convenience function for crate::Window::show()
. This shows the window on the screen
and maintains an extra strong reference while the window is visible. 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) -> Result<(), PlatformError>
fn hide(&self) -> Result<(), PlatformError>
Convenience function for crate::Window::hide()
. Hides the window, so that it is not
visible anymore. The additional strong reference on the associated component, that was
created when show() was called, is dropped.
sourceยงfn window(&self) -> &Window
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) -> Result<(), PlatformError>
fn run(&self) -> Result<(), PlatformError>
This is a convenience function that first calls Self::show
, followed by crate::run_event_loop()
and Self::hide
.
Auto Trait Implementationsยง
impl RefUnwindSafe for SampleComponent
impl Send for SampleComponent
impl Sync for SampleComponent
impl Unpin for SampleComponent
impl UnwindSafe for SampleComponent
Blanket Implementationsยง
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
ยงimpl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
ยงfn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>
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, Global>) -> Rc<dyn Any, Global>
fn into_any_rc(self: Rc<T, Global>) -> Rc<dyn Any, Global>
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.