gtkmm 4.14.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Symbols | List of all members
Gtk::UriLauncher Class Reference

A Gtk::UriLauncher object collects the arguments that are needed to open a uri with an application. More...

#include <gtkmm/urilauncher.h>

Inheritance diagram for Gtk::UriLauncher:
Inheritance graph
[legend]

Public Member Functions

 UriLauncher (UriLauncher &&src) noexcept
 
UriLauncheroperator= (UriLauncher &&src) noexcept
 
 ~UriLauncher () noexcept override
 
GtkUriLaunchergobj ()
 Provides access to the underlying C GObject.
 
const GtkUriLaunchergobj () const
 Provides access to the underlying C GObject.
 
GtkUriLaunchergobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
 
Glib::ustring get_uri () const
 Gets the uri that will be opened.
 
void set_uri (const Glib::ustring &uri)
 Sets the uri that will be opened.
 
void launch (Window & parent, const Gio::SlotAsyncReady &slot, const Glib::RefPtr< Gio::Cancellable > &cancellable={}) const
 Launch an application to open the uri.
 
void launch (const Gio::SlotAsyncReady &slot, const Glib::RefPtr< Gio::Cancellable > &cancellable={}) const
 A launch() convenience overload.
 
bool launch_finish (const Glib::RefPtr< Gio::AsyncResult > &result) const
 Finishes the launch() call and returns the result.
 
Glib::PropertyProxy< Glib::ustring > property_uri ()
 The uri to launch.
 
Glib::PropertyProxy_ReadOnly< Glib::ustring > property_uri () const
 The uri to launch.
 

Static Public Member Functions

static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system.
 
static Glib::RefPtr< UriLaunchercreate (const Glib::ustring &uri={})
 Creates a new Gtk::UriLauncher object.
 

Protected Member Functions

 UriLauncher (const Glib::ustring &uri)
 

Related Symbols

(Note that these are not member symbols.)

Glib::RefPtr< Gtk::UriLauncherwrap (GtkUriLauncher *object, bool take_copy=false)
 A Glib::wrap() method for this object.
 

Detailed Description

A Gtk::UriLauncher object collects the arguments that are needed to open a uri with an application.

Depending on system configuration, user preferences and available APIs, this may or may not show an app chooser dialog or launch the default application right away.

The operation is started with the launch() method. This API follows the GIO async pattern, and the result can be obtained by calling launch_finish().

To launch a file, use Gtk::FileLauncher.

Since gtkmm 4.10:

Constructor & Destructor Documentation

◆ UriLauncher() [1/2]

Gtk::UriLauncher::UriLauncher ( UriLauncher &&  src)
noexcept

◆ ~UriLauncher()

Gtk::UriLauncher::~UriLauncher ( )
overridenoexcept

◆ UriLauncher() [2/2]

Gtk::UriLauncher::UriLauncher ( const Glib::ustring &  uri)
explicitprotected

Member Function Documentation

◆ create()

static Glib::RefPtr< UriLauncher > Gtk::UriLauncher::create ( const Glib::ustring &  uri = {})
static

Creates a new Gtk::UriLauncher object.

Since gtkmm 4.10:
Parameters
uriThe uri to open, or an empty string to specify the uri later with set_uri().
Returns
The new Gtk::UriLauncher.

◆ get_type()

static GType Gtk::UriLauncher::get_type ( )
static

Get the GType for this class, for use with the underlying GObject type system.

◆ get_uri()

Glib::ustring Gtk::UriLauncher::get_uri ( ) const

Gets the uri that will be opened.

Since gtkmm 4.10:
Returns
The uri.

◆ gobj() [1/2]

GtkUriLauncher * Gtk::UriLauncher::gobj ( )
inline

Provides access to the underlying C GObject.

◆ gobj() [2/2]

const GtkUriLauncher * Gtk::UriLauncher::gobj ( ) const
inline

Provides access to the underlying C GObject.

◆ gobj_copy()

GtkUriLauncher * Gtk::UriLauncher::gobj_copy ( )

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

◆ launch() [1/2]

void Gtk::UriLauncher::launch ( const Gio::SlotAsyncReady &  slot,
const Glib::RefPtr< Gio::Cancellable > &  cancellable = {} 
) const

A launch() convenience overload.

◆ launch() [2/2]

void Gtk::UriLauncher::launch ( Window parent,
const Gio::SlotAsyncReady &  slot,
const Glib::RefPtr< Gio::Cancellable > &  cancellable = {} 
) const

Launch an application to open the uri.

This may present an app chooser dialog to the user.

The slot will be called when the operation is completed. It should call launch_finish() to obtain the result.

Since gtkmm 4.10:
Parameters
parentThe parent Gtk::Window.
cancellableA Cancellable to cancel the operation.
slotA callback to call when the operation is complete.

◆ launch_finish()

bool Gtk::UriLauncher::launch_finish ( const Glib::RefPtr< Gio::AsyncResult > &  result) const

Finishes the launch() call and returns the result.

Since gtkmm 4.10:
Parameters
resultA Gio::AsyncResult.
Returns
true if an application was launched, or false and error is set.
Exceptions
Gtk::DialogError
Gio::Error

◆ operator=()

UriLauncher & Gtk::UriLauncher::operator= ( UriLauncher &&  src)
noexcept

◆ property_uri() [1/2]

Glib::PropertyProxy< Glib::ustring > Gtk::UriLauncher::property_uri ( )

The uri to launch.

Since gtkmm 4.10:

Default value: ""

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

◆ property_uri() [2/2]

Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::UriLauncher::property_uri ( ) const

The uri to launch.

Since gtkmm 4.10:

Default value: ""

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ set_uri()

void Gtk::UriLauncher::set_uri ( const Glib::ustring &  uri)

Sets the uri that will be opened.

Since gtkmm 4.10:
Parameters
uriThe uri.

Friends And Related Symbol Documentation

◆ wrap()

Glib::RefPtr< Gtk::UriLauncher > wrap ( GtkUriLauncher object,
bool  take_copy = false 
)
related

A Glib::wrap() method for this object.

Parameters
objectThe C instance.
take_copyFalse if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns
A C++ instance that wraps this C instance.