Trait gtk::prelude::AssistantExt
source · [−]pub trait AssistantExt: 'static {
Show 38 methods
fn add_action_widget(&self, child: &impl IsA<Widget>);
fn append_page(&self, page: &impl IsA<Widget>) -> i32;
fn commit(&self);
fn current_page(&self) -> i32;
fn n_pages(&self) -> i32;
fn nth_page(&self, page_num: i32) -> Option<Widget>;
fn page_is_complete(&self, page: &impl IsA<Widget>) -> bool;
fn page_has_padding(&self, page: &impl IsA<Widget>) -> bool;
fn page_title(&self, page: &impl IsA<Widget>) -> Option<GString>;
fn page_type(&self, page: &impl IsA<Widget>) -> AssistantPageType;
fn insert_page(&self, page: &impl IsA<Widget>, position: i32) -> i32;
fn next_page(&self);
fn prepend_page(&self, page: &impl IsA<Widget>) -> i32;
fn previous_page(&self);
fn remove_action_widget(&self, child: &impl IsA<Widget>);
fn remove_page(&self, page_num: i32);
fn set_current_page(&self, page_num: i32);
fn set_forward_page_func(
&self,
page_func: Option<Box_<dyn Fn(i32) -> i32 + 'static>>
);
fn set_page_complete(&self, page: &impl IsA<Widget>, complete: bool);
fn set_page_has_padding(&self, page: &impl IsA<Widget>, has_padding: bool);
fn set_page_title(&self, page: &impl IsA<Widget>, title: &str);
fn set_page_type(&self, page: &impl IsA<Widget>, type_: AssistantPageType);
fn update_buttons_state(&self);
fn use_header_bar(&self) -> i32;
fn child_is_complete<T: IsA<Widget>>(&self, item: &T) -> bool;
fn set_child_complete<T: IsA<Widget>>(&self, item: &T, complete: bool);
fn child_has_padding<T: IsA<Widget>>(&self, item: &T) -> bool;
fn set_child_has_padding<T: IsA<Widget>>(&self, item: &T, has_padding: bool);
fn child_page_type<T: IsA<Widget>>(&self, item: &T) -> AssistantPageType;
fn set_child_page_type<T: IsA<Widget>>(
&self,
item: &T,
page_type: AssistantPageType
);
fn child_title<T: IsA<Widget>>(&self, item: &T) -> Option<GString>;
fn set_child_title<T: IsA<Widget>>(&self, item: &T, title: Option<&str>);
fn connect_apply<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
fn connect_cancel<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
fn connect_close<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
fn connect_escape<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
fn emit_escape(&self);
fn connect_prepare<F: Fn(&Self, &Widget) + 'static>(
&self,
f: F
) -> SignalHandlerId;
}
Expand description
Required Methods
fn add_action_widget(&self, child: &impl IsA<Widget>)
fn add_action_widget(&self, child: &impl IsA<Widget>)
fn append_page(&self, page: &impl IsA<Widget>) -> i32
fn append_page(&self, page: &impl IsA<Widget>) -> i32
Erases the visited page history so the back button is not shown on the current page, and removes the cancel button from subsequent pages.
Use this when the information provided up to the current page is hereafter deemed permanent and cannot be modified or undone. For example, showing a progress page to track a long-running, unreversible operation after the user has clicked apply on a confirmation page.
fn current_page(&self) -> i32
fn current_page(&self) -> i32
Returns the page number of the current page.
Returns
The index (starting from 0) of the current
page in the self
, or -1 if the self
has no pages,
or no current page.
fn page_is_complete(&self, page: &impl IsA<Widget>) -> bool
fn page_is_complete(&self, page: &impl IsA<Widget>) -> bool
fn page_has_padding(&self, page: &impl IsA<Widget>) -> bool
fn page_has_padding(&self, page: &impl IsA<Widget>) -> bool
fn page_type(&self, page: &impl IsA<Widget>) -> AssistantPageType
fn page_type(&self, page: &impl IsA<Widget>) -> AssistantPageType
Navigate to the next page.
It is a programming error to call this function when there is no next page.
This function is for use when creating pages of the
AssistantPageType::Custom
type.
fn prepend_page(&self, page: &impl IsA<Widget>) -> i32
fn prepend_page(&self, page: &impl IsA<Widget>) -> i32
fn previous_page(&self)
fn previous_page(&self)
Navigate to the previous visited page.
It is a programming error to call this function when no previous page is available.
This function is for use when creating pages of the
AssistantPageType::Custom
type.
fn remove_action_widget(&self, child: &impl IsA<Widget>)
fn remove_action_widget(&self, child: &impl IsA<Widget>)
fn remove_page(&self, page_num: i32)
fn remove_page(&self, page_num: i32)
Removes the page_num
’s page from self
.
page_num
the index of a page in the self
,
or -1 to remove the last page
fn set_current_page(&self, page_num: i32)
fn set_current_page(&self, page_num: i32)
Switches the page to page_num
.
Note that this will only be necessary in custom buttons,
as the self
flow can be set with
set_forward_page_func()
.
page_num
index of the page to switch to, starting from 0.
If negative, the last page will be used. If greater
than the number of pages in the self
, nothing
will be done.
Sets the page forwarding function to be page_func
.
This function will be used to determine what will be
the next page when the user presses the forward button.
Setting page_func
to None
will make the assistant to
use the default forward function, which just goes to the
next visible page.
page_func
the GtkAssistantPageFunc
, or None
to use the default one
fn set_page_complete(&self, page: &impl IsA<Widget>, complete: bool)
fn set_page_complete(&self, page: &impl IsA<Widget>, complete: bool)
fn set_page_has_padding(&self, page: &impl IsA<Widget>, has_padding: bool)
fn set_page_has_padding(&self, page: &impl IsA<Widget>, has_padding: bool)
Sets whether the assistant is adding padding around the page.
page
a page of self
has_padding
whether this page has padding
fn set_page_title(&self, page: &impl IsA<Widget>, title: &str)
fn set_page_title(&self, page: &impl IsA<Widget>, title: &str)
fn set_page_type(&self, page: &impl IsA<Widget>, type_: AssistantPageType)
fn set_page_type(&self, page: &impl IsA<Widget>, type_: AssistantPageType)
Forces self
to recompute the buttons state.
GTK+ automatically takes care of this in most situations, e.g. when the user goes to a different page, or when the visibility or completeness of a page changes.
One situation where it can be necessary to call this function is when changing a value on the current page affects the future page flow of the assistant.
fn use_header_bar(&self) -> i32
fn use_header_bar(&self) -> i32
fn child_page_type<T: IsA<Widget>>(&self, item: &T) -> AssistantPageType
fn set_child_page_type<T: IsA<Widget>>(
&self,
item: &T,
page_type: AssistantPageType
)
fn connect_apply<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
fn connect_apply<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
The ::apply signal is emitted when the apply button is clicked.
The default behavior of the Assistant
is to switch to the page
after the current page, unless the current page is the last one.
A handler for the ::apply signal should carry out the actions for
which the wizard has collected data. If the action takes a long time
to complete, you might consider putting a page of type
AssistantPageType::Progress
after the confirmation page and handle
this operation within the signal::Assistant::prepare
signal of the progress
page.
fn connect_cancel<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
fn connect_cancel<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
The ::cancel signal is emitted when then the cancel button is clicked.
fn connect_close<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
fn connect_close<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
The ::close signal is emitted either when the close button of
a summary page is clicked, or when the apply button in the last
page in the flow (of type AssistantPageType::Confirm
) is clicked.
fn connect_escape<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
fn emit_escape(&self)
fn connect_prepare<F: Fn(&Self, &Widget) + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_prepare<F: Fn(&Self, &Widget) + 'static>(
&self,
f: F
) -> SignalHandlerId
The ::prepare signal is emitted when a new page is set as the assistant’s current page, before making the new page visible.
A handler for this signal can do any preparations which are
necessary before showing page
.
page
the current page