Struct relm4::component::AsyncComponentBuilder
source · pub struct AsyncComponentBuilder<C: AsyncComponent> {
pub root: C::Root,
/* private fields */
}
Expand description
A component that is ready for docking and launch.
Fields§
§root: C::Root
The root widget of the component.
Implementations§
source§impl<C: AsyncComponent> AsyncComponentBuilder<C>
impl<C: AsyncComponent> AsyncComponentBuilder<C>
sourcepub fn update_root<F: FnOnce(&mut C::Root)>(self, func: F) -> Self
pub fn update_root<F: FnOnce(&mut C::Root)>(self, func: F) -> Self
Configure the root widget before launching.
sourcepub const fn widget(&self) -> &C::Root
pub const fn widget(&self) -> &C::Root
Access the root widget before the component is initialized.
sourcepub fn priority(self, priority: Priority) -> Self
pub fn priority(self, priority: Priority) -> Self
Change the priority at which the messages of this component are handled.
- Use
glib::PRIORITY_HIGH
for high priority event sources. - Use
glib::PRIORITY_LOW
for very low priority background tasks. - Use
glib::PRIORITY_DEFAULT_IDLE
for default priority idle functions. - Use
glib::PRIORITY_HIGH_IDLE
for high priority idle functions.
source§impl<C: AsyncComponent> AsyncComponentBuilder<C>where
C::Root: AsRef<Widget>,
impl<C: AsyncComponent> AsyncComponentBuilder<C>where C::Root: AsRef<Widget>,
sourcepub fn attach_to(self, container: &impl RelmContainerExt) -> Self
pub fn attach_to(self, container: &impl RelmContainerExt) -> Self
Attach the component’s root widget to a given container.
source§impl<C: AsyncComponent> AsyncComponentBuilder<C>where
C::Root: AsRef<Window> + Clone,
impl<C: AsyncComponent> AsyncComponentBuilder<C>where C::Root: AsRef<Window> + Clone,
sourcepub fn transient_for(self, widget: impl AsRef<Widget>) -> Self
pub fn transient_for(self, widget: impl AsRef<Widget>) -> Self
Set the component’s root widget transient for a given window.
This function doesn’t require a gtk::Window
as parameter,
but instead uses RelmWidgetExt::toplevel_window()
to retrieve the toplevel
window of any gtk::Widget
.
Therefore, you don’t have to pass a window to every component.
If the root widget is a native dialog, such as gtk::FileChooserNative
,
you should use transient_for_native
instead.
source§impl<C: AsyncComponent> AsyncComponentBuilder<C>where
C::Root: AsRef<NativeDialog> + Clone,
impl<C: AsyncComponent> AsyncComponentBuilder<C>where C::Root: AsRef<NativeDialog> + Clone,
sourcepub fn transient_for_native(self, widget: impl AsRef<Widget>) -> Self
pub fn transient_for_native(self, widget: impl AsRef<Widget>) -> Self
Set the component’s root widget transient for a given window.
This function doesn’t require a gtk::Window
as parameter,
but instead uses RelmWidgetExt::toplevel_window()
to retrieve the toplevel
window of any gtk::Widget
.
Therefore, you don’t have to pass a window to every component.
Applicable to native dialogs only, such as gtk::FileChooserNative
.
If the root widget is a non-native dialog,
you should use transient_for
instead.
source§impl<C: AsyncComponent> AsyncComponentBuilder<C>
impl<C: AsyncComponent> AsyncComponentBuilder<C>
sourcepub fn launch(self, payload: C::Init) -> AsyncConnector<C>
pub fn launch(self, payload: C::Init) -> AsyncConnector<C>
Starts the component, passing ownership to a future attached to a gtk::glib::MainContext.