glibmm: Gio::AppLaunchContext Class Reference

This is used to handle, for instance, startup notification and launching of the new application on the same screen as the launching window. More...

#include <giomm/applaunchcontext.h>

Inheritance diagram for Gio::AppLaunchContext:

Public Member Functions

 AppLaunchContext (AppLaunchContext&& src) noexcept
 
AppLaunchContextoperator= (AppLaunchContext&& src) noexcept
 
 ~AppLaunchContext () noexcept override
 
GAppLaunchContext* gobj ()
 Provides access to the underlying C GObject. More...

 
const GAppLaunchContext* gobj () const
 Provides access to the underlying C GObject. More...

 
GAppLaunchContext* gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...

 
void setenv (const Glib::ustring& variable, const Glib::ustring& value)
 Arranges for variable to be set to value in the child's environment when context is used to launch an application. More...

 
void unsetenv (const Glib::ustring& variable)
 Arranges for variable to be unset in the child's environment when context is used to launch an application. More...

 
std::vector< Glib::ustringget_environment () const
 Gets the complete environment variable list to be passed to the child process when context is used to launch an application. More...

 
std::string get_display (const Glib::RefPtr< AppInfo >& info, const std::vector< Glib::RefPtr< Gio::File >>& files)
 Gets the display string for the context. More...

 
std::string get_startup_notify_id (const Glib::RefPtr< AppInfo >& info, const std::vector< Glib::RefPtr< Gio::File >>& files)
 Initiates startup notification for the application and returns the DESKTOP_STARTUP_ID for the launched operation, if supported. More...

 
void launch_failed (const std::string& startup_notify_id)
 Called when an application has failed to launch, so that it can cancel the application startup notification started in g_app_launch_context_get_startup_notify_id(). More...

 
- Public Member Functions inherited from Glib::Object
 Object (const Object&)=delete
 
Objectoperator= (const Object&)=delete
 
 Object (Object&& src) noexcept
 
Objectoperator= (Object&& src) noexcept
 
void* get_data (const QueryQuark& key)
 
void set_data (const Quark& key, void* data)
 
void set_data (const Quark& key, void* data, DestroyNotify notify)
 
void remove_data (const QueryQuark& quark)
 
void* steal_data (const QueryQuark& quark)
 
- Public Member Functions inherited from Glib::ObjectBase
 ObjectBase (const ObjectBase&)=delete
 
ObjectBaseoperator= (const ObjectBase&)=delete
 
void set_property_value (const Glib::ustring& property_name, const Glib::ValueBase& value)
 You probably want to use a specific property_*() accessor method instead. More...

 
void get_property_value (const Glib::ustring& property_name, Glib::ValueBase& value) const
 You probably want to use a specific property_*() accessor method instead. More...

 
template<class PropertyType >
void set_property (const Glib::ustring& property_name, const PropertyType& value)
 You probably want to use a specific property_*() accessor method instead. More...

 
template<class PropertyType >
void get_property (const Glib::ustring& property_name, PropertyType& value) const
 You probably want to use a specific property_*() accessor method instead. More...

 
template<class PropertyType >
PropertyType get_property (const Glib::ustring& property_name) const
 You probably want to use a specific property_*() accessor method instead. More...

 
sigc::connection connect_property_changed (const Glib::ustring& property_name, const sigc::slot< void()>& slot)
 You can use the signal_changed() signal of the property proxy instead. More...

 
sigc::connection connect_property_changed (const Glib::ustring& property_name, sigc::slot< void()>&& slot)
 You can use the signal_changed() signal of the property proxy instead. More...

 
void freeze_notify ()
 Increases the freeze count on object. More...

 
void thaw_notify ()
 Reverts the effect of a previous call to freeze_notify(). More...

 
virtual void reference () const
 Increment the reference count for this object. More...

 
virtual void unreference () const
 Decrement the reference count for this object. More...

 
GObject* gobj ()
 Provides access to the underlying C GObject. More...

 
const GObject* gobj () const
 Provides access to the underlying C GObject. More...

 
GObject* gobj_copy () const
 Give a ref-ed copy to someone. Use for direct struct access. More...

 
- Public Member Functions inherited from sigc::trackable
 trackable () noexcept
 
 trackable (const trackable &src) noexcept
 
 trackable (trackable &&src) noexcept
 
 ~trackable ()
 
void add_destroy_notify_callback (notifiable *data, func_destroy_notify func) const
 
void notify_callbacks ()
 
trackableoperator= (const trackable &src)
 
trackableoperator= (trackable &&src) noexcept
 
void remove_destroy_notify_callback (notifiable *data) const
 

Static Public Member Functions

static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...

 
static Glib::RefPtr< AppLaunchContextcreate ()
 

Protected Member Functions

 AppLaunchContext ()
 
- Protected Member Functions inherited from Glib::Object
 Object ()
 
 Object (const Glib::ConstructParams& construct_params)
 
 Object (GObject* castitem)
 
 ~Object () noexcept override
 
- Protected Member Functions inherited from Glib::ObjectBase
 ObjectBase ()
 This default constructor is called implicitly from the constructor of user-derived classes, even if, for instance, Gtk::Button calls a different ObjectBase constructor. More...

 
 ObjectBase (const char* custom_type_name)
 A derived constructor always overrides this choice. More...

 
 ObjectBase (const std::type_info& custom_type_info)
 This constructor is a special feature to allow creation of derived types on the fly, without having to use g_object_new() manually. More...

 
 ObjectBase (ObjectBase&& src) noexcept
 
ObjectBaseoperator= (ObjectBase&& src) noexcept
 
virtual ~ObjectBase () noexcept=0
 
void initialize (GObject* castitem)
 
void initialize_move (GObject* castitem, Glib::ObjectBase* previous_wrapper)
 

Related Functions

(Note that these are not member functions.)

Glib::RefPtr< Gio::AppLaunchContextwrap (GAppLaunchContext* object, bool take_copy=false)
 A Glib::wrap() method for this object. More...

 

Additional Inherited Members

- Public Types inherited from Glib::Object
using DestroyNotify = void(*)(gpointer data)
 
- Public Types inherited from sigc::trackable
typedef internal::func_destroy_notify func_destroy_notify
 
- Public Types inherited from sigc::notifiable
typedef internal::func_destroy_notify func_destroy_notify
 

Detailed Description

This is used to handle, for instance, startup notification and launching of the new application on the same screen as the launching window.

See also AppInfo.

Since glibmm 2.16:

Constructor & Destructor Documentation

Gio::AppLaunchContext::AppLaunchContext ( AppLaunchContext&&  src)
noexcept
Gio::AppLaunchContext::~AppLaunchContext ( )
overridenoexcept
Gio::AppLaunchContext::AppLaunchContext ( )
protected

Member Function Documentation

static Glib::RefPtr<AppLaunchContext> Gio::AppLaunchContext::create ( )
static
std::string Gio::AppLaunchContext::get_display ( const Glib::RefPtr< AppInfo >&  info,
const std::vector< Glib::RefPtr< Gio::File >>&  files 
)

Gets the display string for the context.

This is used to ensure new applications are started on the same display as the launching application, by setting the DISPLAY environment variable.

Parameters
infoA AppInfo.
filesA List of File objects.
Returns
A display string for the display.
std::vector<Glib::ustring> Gio::AppLaunchContext::get_environment ( ) const

Gets the complete environment variable list to be passed to the child process when context is used to launch an application.

This is a nullptr-terminated array of strings, where each string has the form KEY=VALUE.

Since glibmm 2.32:
Returns
The child's environment.
std::string Gio::AppLaunchContext::get_startup_notify_id ( const Glib::RefPtr< AppInfo >&  info,
const std::vector< Glib::RefPtr< Gio::File >>&  files 
)

Initiates startup notification for the application and returns the DESKTOP_STARTUP_ID for the launched operation, if supported.

Startup notification IDs are defined in the FreeDesktop.Org Startup Notifications standard.

Parameters
infoA AppInfo.
filesA List of of File objects.
Returns
A startup notification ID for the application, or nullptr if not supported.
static GType Gio::AppLaunchContext::get_type ( )
static

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

GAppLaunchContext* Gio::AppLaunchContext::gobj ( )
inline

Provides access to the underlying C GObject.

const GAppLaunchContext* Gio::AppLaunchContext::gobj ( ) const
inline

Provides access to the underlying C GObject.

GAppLaunchContext* Gio::AppLaunchContext::gobj_copy ( )

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

void Gio::AppLaunchContext::launch_failed ( const std::string startup_notify_id)

Called when an application has failed to launch, so that it can cancel the application startup notification started in g_app_launch_context_get_startup_notify_id().

Parameters
startup_notify_idThe startup notification id that was returned by g_app_launch_context_get_startup_notify_id().
AppLaunchContext& Gio::AppLaunchContext::operator= ( AppLaunchContext&&  src)
noexcept
void Gio::AppLaunchContext::setenv ( const Glib::ustring variable,
const Glib::ustring value 
)

Arranges for variable to be set to value in the child's environment when context is used to launch an application.

Since glibmm 2.32:
Parameters
variableThe environment variable to set.
valueThe value for to set the variable to.
void Gio::AppLaunchContext::unsetenv ( const Glib::ustring variable)

Arranges for variable to be unset in the child's environment when context is used to launch an application.

Since glibmm 2.32:
Parameters
variableThe environment variable to remove.

Friends And Related Function Documentation

Glib::RefPtr< Gio::AppLaunchContext > wrap ( GAppLaunchContext *  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.