glibmm  2.31.22
Public Member Functions | Static Public Member Functions | Related Functions
Gio::RemoteActionGroup Class Reference

RemoteActionGroup - a ActionGroup that interacts with other processes. More...

#include <giomm/remoteactiongroup.h>

Inheritance diagram for Gio::RemoteActionGroup:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~RemoteActionGroup ()
GRemoteActionGroup* gobj ()
 Provides access to the underlying C GObject.
const GRemoteActionGroup* gobj () const
 Provides access to the underlying C GObject.
void activate_action (const Glib::ustring& action_name, const Glib::VariantBase& parameter, const Glib::VariantBase& platform_data)
 Activates the remote action.
void change_action_state (const Glib::ustring& action_name, const Glib::VariantBase&value, const Glib::VariantBase& platform_data)
 Changes the state of a remote action.
virtual void activate_action_vfunc (const Glib::ustring& action_name, const Glib::VariantBase& parameter, const Glib::VariantBase& platform_data)
virtual void change_action_state_vfunc (const Glib::ustring& action_name, const Glib::VariantBase&value, const Glib::VariantBase& platform_data)

Static Public Member Functions

static void add_interface (GType gtype_implementer)

Related Functions

(Note that these are not member functions.)

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

Detailed Description

RemoteActionGroup - a ActionGroup that interacts with other processes.

The RemoteActionGroup interface is implemented by ActionGroup instances that either transmit action invocations to other processes or receive action invocations in the local process from other processes.

The interface has variants of the two methods on ActionGroup used to activate actions: Gio::ActionGroup::activate_action() and Gio::ActionGroup::change_action_state(). These variants allow a "platform data" Glib::VariantBase to be specified: a dictionary providing context for the action invocation (for example: timestamps, startup notification IDs, etc).

Gio::DBus::ActionGroup implements RemoteActionGroup. This provides a mechanism to send platform data for action invocations over D-Bus.

Additionally, Gio::DBus::Connection::export_action_group() will check if the exported ActionGroup implements RemoteActionGroup and use the variants of the calls if available. This provides a mechanism by which to receive platform data for action invocations that arrive by way of D-Bus.

Since glibmm 2.32:

Constructor & Destructor Documentation


Member Function Documentation

void Gio::RemoteActionGroup::activate_action ( const Glib::ustring action_name,
const Glib::VariantBase parameter,
const Glib::VariantBase platform_data 
)

Activates the remote action.

This is the same as g_action_group_activate_action() except that it allows for provision of "platform data" to be sent along with the activation request. This typically contains details such as the user interaction timestamp or startup notification information.

platform_data must be non-0 and must have the type VARIANT_TYPE_VARDICT. If it is floating, it will be consumed.

Since glibmm 2.32:
Parameters:
action_nameThe name of the action to activate.
parameterThe optional parameter to the activation.
platform_dataThe platform data to send.
virtual void Gio::RemoteActionGroup::activate_action_vfunc ( const Glib::ustring action_name,
const Glib::VariantBase parameter,
const Glib::VariantBase platform_data 
) [virtual]
static void Gio::RemoteActionGroup::add_interface ( GType  gtype_implementer) [static]
void Gio::RemoteActionGroup::change_action_state ( const Glib::ustring action_name,
const Glib::VariantBase value,
const Glib::VariantBase platform_data 
)

Changes the state of a remote action.

This is the same as g_action_group_change_action_state() except that it allows for provision of "platform data" to be sent along with the state change request. This typically contains details such as the user interaction timestamp or startup notification information.

platform_data must be non-0 and must have the type VARIANT_TYPE_VARDICT. If it is floating, it will be consumed.

Since glibmm 2.32:
Parameters:
action_nameThe name of the action to change the state of.
valueThe new requested value for the state.
platform_dataThe platform data to send.
virtual void Gio::RemoteActionGroup::change_action_state_vfunc ( const Glib::ustring action_name,
const Glib::VariantBase value,
const Glib::VariantBase platform_data 
) [virtual]
GRemoteActionGroup* Gio::RemoteActionGroup::gobj ( ) [inline]

Provides access to the underlying C GObject.

Reimplemented from Glib::Interface.

Reimplemented in Gio::DBus::ActionGroup.

const GRemoteActionGroup* Gio::RemoteActionGroup::gobj ( ) const [inline]

Provides access to the underlying C GObject.

Reimplemented from Glib::Interface.

Reimplemented in Gio::DBus::ActionGroup.


Friends And Related Function Documentation

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