156
155
<div class="example">
157
<a name="id519926"></a><p class="title"><b>Example 1. Registering a message type</b></p>
158
<div class="example-contents">
159
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
162
<td class="listing_lines" align="right"><pre>1
170
<td class="listing_code"><pre class="programlisting">GeditMessageBus *bus = gedit_message_bus_get_default ();
172
<span class="comment">// Register 'method' at '/plugins/example' with one required</span>
173
<span class="comment">// string argument 'arg1'</span>
174
GeditMessageType *message_type = gedit_message_bus_register (<span class="number">"/plugins/example"</span>, <span class="number">"method"</span>,
175
<span class="number">0</span>,
176
<span class="number">"arg1"</span>, G_TYPE_STRING,
177
<span class="number">NULL</span>);</pre></td>
156
<a name="id3116149"></a><p class="title"><b>Example 1. Registering a message type</b></p>
157
<div class="example-contents"><pre class="programlisting">
158
GeditMessageBus *bus = gedit_message_bus_get_default ();
160
// Register 'method' at '/plugins/example' with one required
161
// string argument 'arg1'
162
GeditMessageType *message_type = gedit_message_bus_register ("/plugins/example", "method",
164
"arg1", G_TYPE_STRING,
184
168
<p><br class="example-break">
186
170
<div class="example">
187
<a name="id519943"></a><p class="title"><b>Example 2. Connecting a callback</b></p>
188
<div class="example-contents">
189
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
192
<td class="listing_lines" align="right"><pre>1
211
<td class="listing_code"><pre class="programlisting"><span class="type">static</span> <span class="type">void</span>
171
<a name="id3116169"></a><p class="title"><b>Example 2. Connecting a callback</b></p>
172
<div class="example-contents"><pre class="programlisting">
212
174
example_method_cb (GeditMessageBus *bus,
213
175
GeditMessage *message,
214
176
gpointer userdata)
216
gchar *arg1 = <span class="number">NULL</span>;
218
gedit_message_get (message, <span class="number">"arg1"</span>, &arg1, <span class="number">NULL</span>);
219
g_message (<span class="number">"Evoked /plugins/example.method with: </span><span class="symbol">%s</span><span class="number">"</span>, arg1);
180
gedit_message_get (message, "arg1", &arg1, NULL);
181
g_message ("Evoked /plugins/example.method with: %s", arg1);
223
185
GeditMessageBus *bus = gedit_message_bus_get_default ();
225
guint id = gedit_message_bus_connect (bus,
226
<span class="number">"/plugins/example"</span>, <span class="number">"method"</span>,
187
guint id = gedit_message_bus_connect (bus,
188
"/plugins/example", "method",
227
189
example_method_cb,
228
<span class="number">NULL</span>,
229
<span class="number">NULL</span>);</pre></td>
236
195
<p><br class="example-break">
238
197
<div class="example">
239
<a name="id519962"></a><p class="title"><b>Example 3. Sending a message</b></p>
240
<div class="example-contents">
241
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
244
<td class="listing_lines" align="right"><pre>1
250
<td class="listing_code"><pre class="programlisting">GeditMessageBus *bus = gedit_message_bus_get_default ();
252
gedit_message_bus_send (bus,
253
<span class="number">"/plugins/example"</span>, <span class="number">"method"</span>,
254
<span class="number">"arg1"</span>, <span class="number">"Hello World"</span>,
255
<span class="number">NULL</span>);</pre></td>
198
<a name="id3116194"></a><p class="title"><b>Example 3. Sending a message</b></p>
199
<div class="example-contents"><pre class="programlisting">
200
GeditMessageBus *bus = gedit_message_bus_get_default ();
202
gedit_message_bus_send (bus,
203
"/plugins/example", "method",
204
"arg1", "Hello World",
262
208
<p><br class="example-break"></p>