
Gnome::Gtk3::AppChooserButton
A button to launch an application chooser dialog

Description
The Gnome::Gtk3::AppChooserButton is a widget that lets the user select an application. It implements the Gnome::Gtk3::AppChooser interface.
Initially, a Gnome::Gtk3::AppChooserButton selects the first application in its list, which will either be the most-recently used application or, if show-default-item property is True
, the default application.
The list of applications shown in a Gnome::Gtk3::AppChooserButton includes the recommended applications for the given content type. When show-default-item is set, the default application is also included. To let the user choose other applications, you can set the show-dialog-item property, which allows to open a full Gnome::Gtk3::AppChooserDialog.
It is possible to add custom items to the list, using append-custom-item()
. These items cause the custom-item-activated signal to be emitted when they are selected.
To track changes in the selected application, use the changed signal.
Synopsis
Declaration
unit class Gnome::Gtk3::AppChooserButton; also is Gnome::Gtk3::ComboBox; also does Gnome::Gtk3::AppChooser;
Uml Diagram
Inheriting this class
Inheriting is done in a special way in that it needs a call from new() to get the native object created by the class you are inheriting from.
use Gnome::Gtk3::AppChooserButton:api<1>; unit class MyGuiClass; also is Gnome::Gtk3::AppChooserButton; submethod new ( |c ) { # let the Gnome::Gtk3::AppChooserButton class process the options self.bless( :GtkAppChooserButton, |c); } submethod BUILD ( ... ) { ... }
Methods
new
:content-type
Creates a new Gnome::Gtk3::AppChooserButton for applications that can handle content of the given type.
multi method new ( Str :$content-type! )
:native-object
Create a AppChooserButton object using a native object from elsewhere. See also Gnome::N::TopLevelClassSupport.
multi method new ( N-GObject :$native-object! )
:build-id
Create a AppChooserButton object using a native object returned from a builder. See also Gnome::GObject::Object.
multi method new ( Str :$build-id! )
append-custom-item
Appends a custom item to the list of applications that is shown in the popup; the item name must be unique per-widget. Clients can use the provided name as a detail for the custom-item-activated signal, to add a callback for the activation of a particular custom item in the list. See also append-separator()
.
method append-custom-item ( Str $name, Str $label, N-GObject() $icon )
$name; the name of the custom item
$label; the label for the custom item
$icon; the icon for the custom item
append-separator
Appends a separator to the list of applications that is shown in the popup.
method append-separator ( )
get-heading
Returns the text to display at the top of the dialog.
Returns: the text to display at the top of the dialog, or undefined
, in which case a default text is displayed
method get-heading ( --> Str )
get-show-default-item
Returns the current value of the show-default-item property.
Returns: the value of show-default-item
method get-show-default-item ( --> Bool )
get-show-dialog-item
Returns the current value of the show-dialog-item property.
Returns: the value of show-dialog-item
method get-show-dialog-item ( --> Bool )
set-active-custom-item
Selects a custom item previously added with append-custom-item()
.
Use Gnome::Gtk3::AppChooser.refresh()
to bring the selection to its initial state.
method set-active-custom-item ( Str $name )
$name; the name of the custom item
set-heading
Sets the text to display at the top of the dialog. If the heading is not set, the dialog displays a default text.
method set-heading ( Str $heading )
$heading; a string containing Pango markup
set-show-default-item
Sets whether the dropdown menu of this button should show the default application for the given content type at top.
method set-show-default-item ( Bool $setting )
$setting; the new value for show-default-item
set-show-dialog-item
Sets whether the dropdown menu of this button should show an entry to trigger a Gnome::Gtk3::AppChooserDialog.
method set-show-dialog-item ( Bool $setting )
$setting; the new value for show-dialog-item
_gtk_app_chooser_button_new
Creates a new Gnome::Gtk3::AppChooserButton for applications that can handle content of the given type.
Returns: a newly created Gnome::Gtk3::AppChooserButton
method _gtk_app_chooser_button_new ( Str $content_type --> N-GObject )
$content_type; the content type to show applications for
Signals
custom-item-activated
Emitted when a custom item, previously added with append_custom_item()
, is activated from the dropdown menu.
method handler ( Str $item_name, Gnome::Gtk3::AppChooserButton :_widget($button), Int :$_handler-id, N-GObject :$_native-object, *%user-options )
$item_name; the name of the activated item
$button; The instance which registered the signal
$_handler-id; The handler id which is returned from the registration
$_native-object; The native object provided by the caller wrapped in the Raku object.
%user-options; A list of named arguments provided at the
register-signal()
method
Properties
heading
The text to show at the top of the dialog
The Gnome::GObject::Value type of property heading is G_TYPE_STRING
.
Parameter is readable and writable.
Default value is undefined.
show-default-item
Whether the combobox should show the default application on top
The Gnome::GObject::Value type of property show-default-item is G_TYPE_BOOLEAN
.
Parameter is readable and writable.
Parameter is set on construction of object.
Default value is FALSE.
show-dialog-item
Whether the combobox should include an item that triggers a GtkAppChooserDialog
The Gnome::GObject::Value type of property show-dialog-item is G_TYPE_BOOLEAN
.
Parameter is readable and writable.
Parameter is set on construction of object.
Default value is FALSE.