Update to version 2.33.1
[profile/ivi/glib2.git] / docs / reference / gio / html / GRemoteActionGroup.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5 <title>GRemoteActionGroup</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7 <link rel="home" href="index.html" title="GIO Reference Manual">
8 <link rel="up" href="application.html" title="Application support">
9 <link rel="prev" href="GSimpleAction.html" title="GSimpleAction">
10 <link rel="next" href="gio-GActionGroup-exporter.html" title="GActionGroup exporter">
11 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
13 </head>
14 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16 <tr valign="middle">
17 <td><a accesskey="p" href="GSimpleAction.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18 <td><a accesskey="u" href="application.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20 <th width="100%" align="center">GIO Reference Manual</th>
21 <td><a accesskey="n" href="gio-GActionGroup-exporter.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22 </tr>
23 <tr><td colspan="5" class="shortcuts">
24 <a href="#GRemoteActionGroup.synopsis" class="shortcut">Top</a>
25                    | 
26                   <a href="#GRemoteActionGroup.description" class="shortcut">Description</a>
27                    | 
28                   <a href="#GRemoteActionGroup.object-hierarchy" class="shortcut">Object Hierarchy</a>
29                    | 
30                   <a href="#GRemoteActionGroup.prerequisites" class="shortcut">Prerequisites</a>
31                    | 
32                   <a href="#GRemoteActionGroup.implementations" class="shortcut">Known Implementations</a>
33 </td></tr>
34 </table>
35 <div class="refentry">
36 <a name="GRemoteActionGroup"></a><div class="titlepage"></div>
37 <div class="refnamediv"><table width="100%"><tr>
38 <td valign="top">
39 <h2><span class="refentrytitle"><a name="GRemoteActionGroup.top_of_page"></a>GRemoteActionGroup</span></h2>
40 <p>GRemoteActionGroup — a <a class="link" href="GActionGroup.html" title="GActionGroup"><span class="type">GActionGroup</span></a> that interacts with other processes</p>
41 </td>
42 <td valign="top" align="right"></td>
43 </tr></table></div>
44 <div class="refsynopsisdiv">
45 <a name="GRemoteActionGroup.synopsis"></a><h2>Synopsis</h2>
46 <pre class="synopsis">                    <a class="link" href="GRemoteActionGroup.html#GRemoteActionGroup-struct" title="GRemoteActionGroup">GRemoteActionGroup</a>;
47 struct              <a class="link" href="GRemoteActionGroup.html#GRemoteActionGroupInterface" title="struct GRemoteActionGroupInterface">GRemoteActionGroupInterface</a>;
48
49 <span class="returnvalue">void</span>                <a class="link" href="GRemoteActionGroup.html#g-remote-action-group-activate-action-full" title="g_remote_action_group_activate_action_full ()">g_remote_action_group_activate_action_full</a>
50                                                         (<em class="parameter"><code><a class="link" href="GRemoteActionGroup.html" title="GRemoteActionGroup"><span class="type">GRemoteActionGroup</span></a> *remote</code></em>,
51                                                          <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *action_name</code></em>,
52                                                          <em class="parameter"><code><a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *parameter</code></em>,
53                                                          <em class="parameter"><code><a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *platform_data</code></em>);
54 <span class="returnvalue">void</span>                <a class="link" href="GRemoteActionGroup.html#g-remote-action-group-change-action-state-full" title="g_remote_action_group_change_action_state_full ()">g_remote_action_group_change_action_state_full</a>
55                                                         (<em class="parameter"><code><a class="link" href="GRemoteActionGroup.html" title="GRemoteActionGroup"><span class="type">GRemoteActionGroup</span></a> *remote</code></em>,
56                                                          <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *action_name</code></em>,
57                                                          <em class="parameter"><code><a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *value</code></em>,
58                                                          <em class="parameter"><code><a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *platform_data</code></em>);
59 </pre>
60 </div>
61 <div class="refsect1">
62 <a name="GRemoteActionGroup.object-hierarchy"></a><h2>Object Hierarchy</h2>
63 <pre class="synopsis">
64   GInterface
65    +----GRemoteActionGroup
66 </pre>
67 </div>
68 <div class="refsect1">
69 <a name="GRemoteActionGroup.prerequisites"></a><h2>Prerequisites</h2>
70 <p>
71 GRemoteActionGroup requires
72  <a class="link" href="GActionGroup.html" title="GActionGroup">GActionGroup</a> and  <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#GObject">GObject</a>.</p>
73 </div>
74 <div class="refsect1">
75 <a name="GRemoteActionGroup.implementations"></a><h2>Known Implementations</h2>
76 <p>
77 GRemoteActionGroup is implemented by
78  <a class="link" href="GDBusActionGroup.html" title="GDBusActionGroup">GDBusActionGroup</a>.</p>
79 </div>
80 <div class="refsect1">
81 <a name="GRemoteActionGroup.description"></a><h2>Description</h2>
82 <p>
83 The GRemoteActionGroup interface is implemented by <a class="link" href="GActionGroup.html" title="GActionGroup"><span class="type">GActionGroup</span></a>
84 instances that either transmit action invocations to other processes
85 or receive action invocations in the local process from other
86 processes.
87 </p>
88 <p>
89 The interface has <code class="literal">_full</code> variants of the two
90 methods on <a class="link" href="GActionGroup.html" title="GActionGroup"><span class="type">GActionGroup</span></a> used to activate actions:
91 <a class="link" href="GActionGroup.html#g-action-group-activate-action" title="g_action_group_activate_action ()"><code class="function">g_action_group_activate_action()</code></a> and
92 <a class="link" href="GActionGroup.html#g-action-group-change-action-state" title="g_action_group_change_action_state ()"><code class="function">g_action_group_change_action_state()</code></a>.  These variants allow a
93 "platform data" <a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> to be specified: a dictionary providing
94 context for the action invocation (for example: timestamps, startup
95 notification IDs, etc).
96 </p>
97 <p>
98 <a class="link" href="GDBusActionGroup.html" title="GDBusActionGroup"><span class="type">GDBusActionGroup</span></a> implements <a class="link" href="GRemoteActionGroup.html" title="GRemoteActionGroup"><span class="type">GRemoteActionGroup</span></a>.  This provides a
99 mechanism to send platform data for action invocations over D-Bus.
100 </p>
101 <p>
102 Additionally, <a class="link" href="gio-GActionGroup-exporter.html#g-dbus-connection-export-action-group" title="g_dbus_connection_export_action_group ()"><code class="function">g_dbus_connection_export_action_group()</code></a> will check if
103 the exported <a class="link" href="GActionGroup.html" title="GActionGroup"><span class="type">GActionGroup</span></a> implements <a class="link" href="GRemoteActionGroup.html" title="GRemoteActionGroup"><span class="type">GRemoteActionGroup</span></a> and use the
104 <code class="literal">_full</code> variants of the calls if available.  This
105 provides a mechanism by which to receive platform data for action
106 invocations that arrive by way of D-Bus.
107 </p>
108 </div>
109 <div class="refsect1">
110 <a name="GRemoteActionGroup.details"></a><h2>Details</h2>
111 <div class="refsect2">
112 <a name="GRemoteActionGroup-struct"></a><h3>GRemoteActionGroup</h3>
113 <pre class="programlisting">typedef struct _GRemoteActionGroup GRemoteActionGroup;</pre>
114 </div>
115 <hr>
116 <div class="refsect2">
117 <a name="GRemoteActionGroupInterface"></a><h3>struct GRemoteActionGroupInterface</h3>
118 <pre class="programlisting">struct GRemoteActionGroupInterface {
119   GTypeInterface g_iface;
120
121   void (* activate_action_full)     (GRemoteActionGroup *remote,
122                                      const gchar        *action_name,
123                                      GVariant           *parameter,
124                                      GVariant           *platform_data);
125
126   void (* change_action_state_full) (GRemoteActionGroup *remote,
127                                      const gchar        *action_name,
128                                      GVariant           *value,
129                                      GVariant           *platform_data);
130 };
131 </pre>
132 <p>
133 The virtual function table for <a class="link" href="GRemoteActionGroup.html" title="GRemoteActionGroup"><span class="type">GRemoteActionGroup</span></a>.
134 </p>
135 <div class="variablelist"><table border="0">
136 <col align="left" valign="top">
137 <tbody>
138 <tr>
139 <td><p><span class="term"><a href="./../gobject/gobject/gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GRemoteActionGroupInterface.g-iface"></a>g_iface</code></em>;</span></p></td>
140 <td></td>
141 </tr>
142 <tr>
143 <td><p><span class="term"><em class="structfield"><code><a name="GRemoteActionGroupInterface.activate-action-full"></a>activate_action_full</code></em> ()</span></p></td>
144 <td>the virtual function pointer for <a class="link" href="GRemoteActionGroup.html#g-remote-action-group-activate-action-full" title="g_remote_action_group_activate_action_full ()"><code class="function">g_remote_action_group_activate_action_full()</code></a>
145 </td>
146 </tr>
147 <tr>
148 <td><p><span class="term"><em class="structfield"><code><a name="GRemoteActionGroupInterface.change-action-state-full"></a>change_action_state_full</code></em> ()</span></p></td>
149 <td>the virtual function pointer for <a class="link" href="GRemoteActionGroup.html#g-remote-action-group-change-action-state-full" title="g_remote_action_group_change_action_state_full ()"><code class="function">g_remote_action_group_change_action_state_full()</code></a>
150 </td>
151 </tr>
152 </tbody>
153 </table></div>
154 <p class="since">Since 2.32</p>
155 </div>
156 <hr>
157 <div class="refsect2">
158 <a name="g-remote-action-group-activate-action-full"></a><h3>g_remote_action_group_activate_action_full ()</h3>
159 <pre class="programlisting"><span class="returnvalue">void</span>                g_remote_action_group_activate_action_full
160                                                         (<em class="parameter"><code><a class="link" href="GRemoteActionGroup.html" title="GRemoteActionGroup"><span class="type">GRemoteActionGroup</span></a> *remote</code></em>,
161                                                          <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *action_name</code></em>,
162                                                          <em class="parameter"><code><a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *parameter</code></em>,
163                                                          <em class="parameter"><code><a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *platform_data</code></em>);</pre>
164 <p>
165 Activates the remote action.
166 </p>
167 <p>
168 This is the same as <a class="link" href="GActionGroup.html#g-action-group-activate-action" title="g_action_group_activate_action ()"><code class="function">g_action_group_activate_action()</code></a> except that it
169 allows for provision of "platform data" to be sent along with the
170 activation request.  This typically contains details such as the user
171 interaction timestamp or startup notification information.
172 </p>
173 <p>
174 <em class="parameter"><code>platform_data</code></em> must be non-<a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and must have the type
175 <a href="./../glib/glib/glib-GVariantType.html#G-VARIANT-TYPE-VARDICT:CAPS"><code class="literal">G_VARIANT_TYPE_VARDICT</code></a>.  If it is floating, it will be consumed.
176 </p>
177 <div class="variablelist"><table border="0">
178 <col align="left" valign="top">
179 <tbody>
180 <tr>
181 <td><p><span class="term"><em class="parameter"><code>remote</code></em> :</span></p></td>
182 <td>a <a class="link" href="GDBusActionGroup.html" title="GDBusActionGroup"><span class="type">GDBusActionGroup</span></a>
183 </td>
184 </tr>
185 <tr>
186 <td><p><span class="term"><em class="parameter"><code>action_name</code></em> :</span></p></td>
187 <td>the name of the action to activate</td>
188 </tr>
189 <tr>
190 <td><p><span class="term"><em class="parameter"><code>parameter</code></em> :</span></p></td>
191 <td>the optional parameter to the activation. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
192 </td>
193 </tr>
194 <tr>
195 <td><p><span class="term"><em class="parameter"><code>platform_data</code></em> :</span></p></td>
196 <td>the platform data to send</td>
197 </tr>
198 </tbody>
199 </table></div>
200 <p class="since">Since 2.32</p>
201 </div>
202 <hr>
203 <div class="refsect2">
204 <a name="g-remote-action-group-change-action-state-full"></a><h3>g_remote_action_group_change_action_state_full ()</h3>
205 <pre class="programlisting"><span class="returnvalue">void</span>                g_remote_action_group_change_action_state_full
206                                                         (<em class="parameter"><code><a class="link" href="GRemoteActionGroup.html" title="GRemoteActionGroup"><span class="type">GRemoteActionGroup</span></a> *remote</code></em>,
207                                                          <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *action_name</code></em>,
208                                                          <em class="parameter"><code><a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *value</code></em>,
209                                                          <em class="parameter"><code><a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *platform_data</code></em>);</pre>
210 <p>
211 Changes the state of a remote action.
212 </p>
213 <p>
214 This is the same as <a class="link" href="GActionGroup.html#g-action-group-change-action-state" title="g_action_group_change_action_state ()"><code class="function">g_action_group_change_action_state()</code></a> except that
215 it allows for provision of "platform data" to be sent along with the
216 state change request.  This typically contains details such as the
217 user interaction timestamp or startup notification information.
218 </p>
219 <p>
220 <em class="parameter"><code>platform_data</code></em> must be non-<a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and must have the type
221 <a href="./../glib/glib/glib-GVariantType.html#G-VARIANT-TYPE-VARDICT:CAPS"><code class="literal">G_VARIANT_TYPE_VARDICT</code></a>.  If it is floating, it will be consumed.
222 </p>
223 <div class="variablelist"><table border="0">
224 <col align="left" valign="top">
225 <tbody>
226 <tr>
227 <td><p><span class="term"><em class="parameter"><code>remote</code></em> :</span></p></td>
228 <td>a <a class="link" href="GRemoteActionGroup.html" title="GRemoteActionGroup"><span class="type">GRemoteActionGroup</span></a>
229 </td>
230 </tr>
231 <tr>
232 <td><p><span class="term"><em class="parameter"><code>action_name</code></em> :</span></p></td>
233 <td>the name of the action to change the state of</td>
234 </tr>
235 <tr>
236 <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
237 <td>the new requested value for the state</td>
238 </tr>
239 <tr>
240 <td><p><span class="term"><em class="parameter"><code>platform_data</code></em> :</span></p></td>
241 <td>the platform data to send</td>
242 </tr>
243 </tbody>
244 </table></div>
245 <p class="since">Since 2.32</p>
246 </div>
247 </div>
248 </div>
249 <div class="footer">
250 <hr>
251           Generated by GTK-Doc V1.18</div>
252 </body>
253 </html>