2
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
3
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
4
<refentry id="GeditMessage">
6
<refentrytitle role="top_of_page" id="GeditMessage.top_of_page">GeditMessage</refentrytitle>
7
<manvolnum>3</manvolnum>
8
<refmiscinfo>GEDIT Library</refmiscinfo>
12
<refname>GeditMessage</refname>
13
<refpurpose>message bus message object</refpurpose>
16
<refsynopsisdiv id="GeditMessage.synopsis" role="synopsis">
17
<title role="synopsis.title">Synopsis</title>
21
#include <gedit/gedit-message.h>
23
<link linkend="GeditMessage-struct">GeditMessage</link>;
24
<link linkend="void">void</link> <link linkend="gedit-message-get">gedit_message_get</link> (<link linkend="GeditMessage">GeditMessage</link> *message,
26
<link linkend="void">void</link> <link linkend="gedit-message-get-valist">gedit_message_get_valist</link> (<link linkend="GeditMessage">GeditMessage</link> *message,
27
<link linkend="va-list">va_list</link> var_args);
28
<link linkend="void">void</link> <link linkend="gedit-message-get-value">gedit_message_get_value</link> (<link linkend="GeditMessage">GeditMessage</link> *message,
29
const <link linkend="gchar">gchar</link> *key,
30
<link linkend="GValue">GValue</link> *value);
31
<link linkend="void">void</link> <link linkend="gedit-message-set">gedit_message_set</link> (<link linkend="GeditMessage">GeditMessage</link> *message,
33
<link linkend="void">void</link> <link linkend="gedit-message-set-valist">gedit_message_set_valist</link> (<link linkend="GeditMessage">GeditMessage</link> *message,
34
<link linkend="va-list">va_list</link> var_args);
35
<link linkend="void">void</link> <link linkend="gedit-message-set-value">gedit_message_set_value</link> (<link linkend="GeditMessage">GeditMessage</link> *message,
36
const <link linkend="gchar">gchar</link> *key,
37
<link linkend="GValue">GValue</link> *value);
38
<link linkend="void">void</link> <link linkend="gedit-message-set-valuesv">gedit_message_set_valuesv</link> (<link linkend="GeditMessage">GeditMessage</link> *message,
39
const <link linkend="gchar">gchar</link> **keys,
40
<link linkend="GValue">GValue</link> *values,
41
<link linkend="gint">gint</link> n_values);
42
const <link linkend="gchar">gchar</link> * <link linkend="gedit-message-get-object-path">gedit_message_get_object_path</link> (<link linkend="GeditMessage">GeditMessage</link> *message);
43
const <link linkend="gchar">gchar</link> * <link linkend="gedit-message-get-method">gedit_message_get_method</link> (<link linkend="GeditMessage">GeditMessage</link> *message);
44
<link linkend="gboolean">gboolean</link> <link linkend="gedit-message-has-key">gedit_message_has_key</link> (<link linkend="GeditMessage">GeditMessage</link> *message,
45
const <link linkend="gchar">gchar</link> *key);
46
<link linkend="GType">GType</link> <link linkend="gedit-message-get-key-type">gedit_message_get_key_type</link> (<link linkend="GeditMessage">GeditMessage</link> *message,
47
const <link linkend="gchar">gchar</link> *key);
48
<link linkend="gboolean">gboolean</link> <link linkend="gedit-message-validate">gedit_message_validate</link> (<link linkend="GeditMessage">GeditMessage</link> *message);
52
<refsect1 id="GeditMessage.object-hierarchy" role="object_hierarchy">
53
<title role="object_hierarchy.title">Object Hierarchy</title>
55
<link linkend="GObject">GObject</link>
64
<refsect1 id="GeditMessage.properties" role="properties">
65
<title role="properties.title">Properties</title>
67
"<link linkend="GeditMessage--method">method</link>" <link linkend="gchar">gchar</link>* : Read
68
"<link linkend="GeditMessage--object-path">object-path</link>" <link linkend="gchar">gchar</link>* : Read
69
"<link linkend="GeditMessage--type">type</link>" <link linkend="GeditMessageType">GeditMessageType</link>* : Read / Write / Construct Only
75
<refsect1 id="GeditMessage.description" role="desc">
76
<title role="desc.title">Description</title>
79
Communication on a <link linkend="GeditMessageBus"><type>GeditMessageBus</type></link> is done through messages. Messages are
80
sent over the bus and received by connecting callbacks on the message bus.
81
A <link linkend="GeditMessage"><type>GeditMessage</type></link> is an instantiation of a <link linkend="GeditMessageType"><type>GeditMessageType</type></link>, containing
82
values for the arguments as specified in the message type.
85
A message can be seen as a method call, or signal emission depending on
86
who is the sender and who is the receiver. There is no explicit distinction
87
between methods and signals.</para>
92
<refsect1 id="GeditMessage.details" role="details">
93
<title role="details.title">Details</title>
94
<refsect2 id="GeditMessage-struct" role="struct">
95
<title>GeditMessage</title>
96
<indexterm zone="GeditMessage-struct"><primary>GeditMessage</primary></indexterm>
97
<programlisting>typedef struct _GeditMessage GeditMessage;</programlisting>
100
<refsect2 id="gedit-message-get" role="function">
101
<title>gedit_message_get ()</title>
102
<indexterm zone="gedit-message-get"><primary>gedit_message_get</primary></indexterm>
103
<programlisting><link linkend="void">void</link> gedit_message_get (<link linkend="GeditMessage">GeditMessage</link> *message,
104
...);</programlisting>
106
Get values of message arguments. The supplied <parameter>var_args</parameter> should contain
107
pairs of keys and pointers to variables which are set to the argument
108
value for the specified key.</para>
110
</para><variablelist role="params">
111
<varlistentry><term><parameter>message</parameter> :</term>
112
<listitem><simpara> the <link linkend="GeditMessage"><type>GeditMessage</type></link>
113
</simpara></listitem></varlistentry>
114
<varlistentry><term><parameter>...</parameter> :</term>
115
<listitem><simpara> a NULL variable argument list of key/value container pairs
116
</simpara></listitem></varlistentry>
117
</variablelist></refsect2>
118
<refsect2 id="gedit-message-get-valist" role="function">
119
<title>gedit_message_get_valist ()</title>
120
<indexterm zone="gedit-message-get-valist"><primary>gedit_message_get_valist</primary></indexterm>
121
<programlisting><link linkend="void">void</link> gedit_message_get_valist (<link linkend="GeditMessage">GeditMessage</link> *message,
122
<link linkend="va-list">va_list</link> var_args);</programlisting>
124
Get values of message arguments. The supplied <parameter>var_args</parameter> should contain
125
pairs of keys and pointers to variables which are set to the argument
126
value for the specified key.</para>
128
</para><variablelist role="params">
129
<varlistentry><term><parameter>message</parameter> :</term>
130
<listitem><simpara> the <link linkend="GeditMessage"><type>GeditMessage</type></link>
131
</simpara></listitem></varlistentry>
132
<varlistentry><term><parameter>var_args</parameter> :</term>
133
<listitem><simpara> a NULL variable argument list of key/value container pairs
134
</simpara></listitem></varlistentry>
135
</variablelist></refsect2>
136
<refsect2 id="gedit-message-get-value" role="function">
137
<title>gedit_message_get_value ()</title>
138
<indexterm zone="gedit-message-get-value"><primary>gedit_message_get_value</primary></indexterm>
139
<programlisting><link linkend="void">void</link> gedit_message_get_value (<link linkend="GeditMessage">GeditMessage</link> *message,
140
const <link linkend="gchar">gchar</link> *key,
141
<link linkend="GValue">GValue</link> *value);</programlisting>
143
Get the value of a specific message argument. <parameter>value</parameter> will be initialized
144
with the correct type.</para>
146
</para><variablelist role="params">
147
<varlistentry><term><parameter>message</parameter> :</term>
148
<listitem><simpara> the <link linkend="GeditMessage"><type>GeditMessage</type></link>
149
</simpara></listitem></varlistentry>
150
<varlistentry><term><parameter>key</parameter> :</term>
151
<listitem><simpara> the argument key
152
</simpara></listitem></varlistentry>
153
<varlistentry><term><parameter>value</parameter> :</term>
154
<listitem><simpara> value return container
155
</simpara></listitem></varlistentry>
156
</variablelist></refsect2>
157
<refsect2 id="gedit-message-set" role="function">
158
<title>gedit_message_set ()</title>
159
<indexterm zone="gedit-message-set"><primary>gedit_message_set</primary></indexterm>
160
<programlisting><link linkend="void">void</link> gedit_message_set (<link linkend="GeditMessage">GeditMessage</link> *message,
161
...);</programlisting>
163
Set values of message arguments. The supplied <parameter>var_args</parameter> should contain
164
pairs of keys and argument values.</para>
166
</para><variablelist role="params">
167
<varlistentry><term><parameter>message</parameter> :</term>
168
<listitem><simpara> the <link linkend="GeditMessage"><type>GeditMessage</type></link>
169
</simpara></listitem></varlistentry>
170
<varlistentry><term><parameter>...</parameter> :</term>
171
<listitem><simpara> a NULL terminated variable list of key/value pairs
172
</simpara></listitem></varlistentry>
173
</variablelist></refsect2>
174
<refsect2 id="gedit-message-set-valist" role="function">
175
<title>gedit_message_set_valist ()</title>
176
<indexterm zone="gedit-message-set-valist"><primary>gedit_message_set_valist</primary></indexterm>
177
<programlisting><link linkend="void">void</link> gedit_message_set_valist (<link linkend="GeditMessage">GeditMessage</link> *message,
178
<link linkend="va-list">va_list</link> var_args);</programlisting>
180
Set values of message arguments. The supplied <parameter>var_args</parameter> should contain
181
pairs of keys and argument values.</para>
183
</para><variablelist role="params">
184
<varlistentry><term><parameter>message</parameter> :</term>
185
<listitem><simpara> the <link linkend="GeditMessage"><type>GeditMessage</type></link>
186
</simpara></listitem></varlistentry>
187
<varlistentry><term><parameter>var_args</parameter> :</term>
188
<listitem><simpara> a NULL terminated variable list of key/value pairs
189
</simpara></listitem></varlistentry>
190
</variablelist></refsect2>
191
<refsect2 id="gedit-message-set-value" role="function">
192
<title>gedit_message_set_value ()</title>
193
<indexterm zone="gedit-message-set-value"><primary>gedit_message_set_value</primary></indexterm>
194
<programlisting><link linkend="void">void</link> gedit_message_set_value (<link linkend="GeditMessage">GeditMessage</link> *message,
195
const <link linkend="gchar">gchar</link> *key,
196
<link linkend="GValue">GValue</link> *value);</programlisting>
198
Set value of message argument <parameter>key</parameter> to <parameter>value</parameter>.</para>
200
</para><variablelist role="params">
201
<varlistentry><term><parameter>message</parameter> :</term>
202
<listitem><simpara> the <link linkend="GeditMessage"><type>GeditMessage</type></link>
203
</simpara></listitem></varlistentry>
204
<varlistentry><term><parameter>key</parameter> :</term>
205
<listitem><simpara> the argument key
206
</simpara></listitem></varlistentry>
207
<varlistentry><term><parameter>value</parameter> :</term>
208
<listitem><simpara> the argument value
209
</simpara></listitem></varlistentry>
210
</variablelist></refsect2>
211
<refsect2 id="gedit-message-set-valuesv" role="function">
212
<title>gedit_message_set_valuesv ()</title>
213
<indexterm zone="gedit-message-set-valuesv"><primary>gedit_message_set_valuesv</primary></indexterm>
214
<programlisting><link linkend="void">void</link> gedit_message_set_valuesv (<link linkend="GeditMessage">GeditMessage</link> *message,
215
const <link linkend="gchar">gchar</link> **keys,
216
<link linkend="GValue">GValue</link> *values,
217
<link linkend="gint">gint</link> n_values);</programlisting>
219
Set message argument values.</para>
221
</para><variablelist role="params">
222
<varlistentry><term><parameter>message</parameter> :</term>
223
<listitem><simpara> the <link linkend="GeditMessage"><type>GeditMessage</type></link>
224
</simpara></listitem></varlistentry>
225
<varlistentry><term><parameter>keys</parameter> :</term>
226
<listitem><simpara> keys to set values for
227
</simpara></listitem></varlistentry>
228
<varlistentry><term><parameter>values</parameter> :</term>
229
<listitem><simpara> values to set
230
</simpara></listitem></varlistentry>
231
<varlistentry><term><parameter>n_values</parameter> :</term>
232
<listitem><simpara> number of arguments to set values for
233
</simpara></listitem></varlistentry>
234
</variablelist></refsect2>
235
<refsect2 id="gedit-message-get-object-path" role="function">
236
<title>gedit_message_get_object_path ()</title>
237
<indexterm zone="gedit-message-get-object-path"><primary>gedit_message_get_object_path</primary></indexterm>
238
<programlisting>const <link linkend="gchar">gchar</link> * gedit_message_get_object_path (<link linkend="GeditMessage">GeditMessage</link> *message);</programlisting>
240
Get the message object path.</para>
242
</para><variablelist role="params">
243
<varlistentry><term><parameter>message</parameter> :</term>
244
<listitem><simpara> the <link linkend="GeditMessage"><type>GeditMessage</type></link>
245
</simpara></listitem></varlistentry>
246
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the message object path
248
</simpara></listitem></varlistentry>
249
</variablelist></refsect2>
250
<refsect2 id="gedit-message-get-method" role="function">
251
<title>gedit_message_get_method ()</title>
252
<indexterm zone="gedit-message-get-method"><primary>gedit_message_get_method</primary></indexterm>
253
<programlisting>const <link linkend="gchar">gchar</link> * gedit_message_get_method (<link linkend="GeditMessage">GeditMessage</link> *message);</programlisting>
255
Get the message method.</para>
257
</para><variablelist role="params">
258
<varlistentry><term><parameter>message</parameter> :</term>
259
<listitem><simpara> the <link linkend="GeditMessage"><type>GeditMessage</type></link>
260
</simpara></listitem></varlistentry>
261
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the message method
263
</simpara></listitem></varlistentry>
264
</variablelist></refsect2>
265
<refsect2 id="gedit-message-has-key" role="function">
266
<title>gedit_message_has_key ()</title>
267
<indexterm zone="gedit-message-has-key"><primary>gedit_message_has_key</primary></indexterm>
268
<programlisting><link linkend="gboolean">gboolean</link> gedit_message_has_key (<link linkend="GeditMessage">GeditMessage</link> *message,
269
const <link linkend="gchar">gchar</link> *key);</programlisting>
271
Check whether the message has a specific key.</para>
273
</para><variablelist role="params">
274
<varlistentry><term><parameter>message</parameter> :</term>
275
<listitem><simpara> the <link linkend="GeditMessage"><type>GeditMessage</type></link>
276
</simpara></listitem></varlistentry>
277
<varlistentry><term><parameter>key</parameter> :</term>
278
<listitem><simpara> the argument key
279
</simpara></listitem></varlistentry>
280
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if <parameter>message</parameter> has argument <parameter>key</parameter>
282
</simpara></listitem></varlistentry>
283
</variablelist></refsect2>
284
<refsect2 id="gedit-message-get-key-type" role="function">
285
<title>gedit_message_get_key_type ()</title>
286
<indexterm zone="gedit-message-get-key-type"><primary>gedit_message_get_key_type</primary></indexterm>
287
<programlisting><link linkend="GType">GType</link> gedit_message_get_key_type (<link linkend="GeditMessage">GeditMessage</link> *message,
288
const <link linkend="gchar">gchar</link> *key);</programlisting>
290
Get the type of a message argument.</para>
292
</para><variablelist role="params">
293
<varlistentry><term><parameter>message</parameter> :</term>
294
<listitem><simpara> the <link linkend="GeditMessage"><type>GeditMessage</type></link>
295
</simpara></listitem></varlistentry>
296
<varlistentry><term><parameter>key</parameter> :</term>
297
<listitem><simpara> the argument key
298
</simpara></listitem></varlistentry>
299
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the type of <parameter>key</parameter>
301
</simpara></listitem></varlistentry>
302
</variablelist></refsect2>
303
<refsect2 id="gedit-message-validate" role="function">
304
<title>gedit_message_validate ()</title>
305
<indexterm zone="gedit-message-validate"><primary>gedit_message_validate</primary></indexterm>
306
<programlisting><link linkend="gboolean">gboolean</link> gedit_message_validate (<link linkend="GeditMessage">GeditMessage</link> *message);</programlisting>
308
Validates the message arguments according to the message type.</para>
310
</para><variablelist role="params">
311
<varlistentry><term><parameter>message</parameter> :</term>
312
<listitem><simpara> the <link linkend="GeditMessage"><type>GeditMessage</type></link>
313
</simpara></listitem></varlistentry>
314
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the message is valid
316
</simpara></listitem></varlistentry>
317
</variablelist></refsect2>
320
<refsect1 id="GeditMessage.property-details" role="property_details">
321
<title role="property_details.title">Property Details</title>
322
<refsect2 id="GeditMessage--method" role="property"><title>The <literal>"method"</literal> property</title>
323
<indexterm zone="GeditMessage--method"><primary>GeditMessage:method</primary></indexterm>
324
<programlisting> "method" <link linkend="gchar">gchar</link>* : Read</programlisting>
326
The messages method.</para>
328
</para><para>Default value: NULL</para>
330
<refsect2 id="GeditMessage--object-path" role="property"><title>The <literal>"object-path"</literal> property</title>
331
<indexterm zone="GeditMessage--object-path"><primary>GeditMessage:object-path</primary></indexterm>
332
<programlisting> "object-path" <link linkend="gchar">gchar</link>* : Read</programlisting>
333
<para>The message object path.</para><para>Default value: NULL</para>
335
<refsect2 id="GeditMessage--type" role="property"><title>The <literal>"type"</literal> property</title>
336
<indexterm zone="GeditMessage--type"><primary>GeditMessage:type</primary></indexterm>
337
<programlisting> "type" <link linkend="GeditMessageType">GeditMessageType</link>* : Read / Write / Construct Only</programlisting>
338
<para>The message type.</para></refsect2>