File: classGtk_1_1Socket.html

package info (click to toggle)
gtkmm2.4 1%3A2.20.3-1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 73,860 kB
  • ctags: 20,553
  • sloc: xml: 79,575; sh: 10,120; cpp: 8,347; makefile: 290
file content (379 lines) | stat: -rw-r--r-- 27,294 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>gtkmm: Gtk::Socket Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespaceGtk.html">Gtk</a>::<a class="el" href="classGtk_1_1Socket.html">Socket</a>
  </div>
</div>
<div class="contents">
<h1>Gtk::Socket Class Reference<br/>
<small>
[<a class="el" href="group__Widgets.html">Widgets</a>,&#160;<a class="el" href="group__Containers.html">Container Widgets</a>]</small>
</h1><!-- doxytag: class="Gtk::Socket" --><!-- doxytag: inherits="Gtk::Container" -->
<p><a class="el" href="classGtk_1_1Container.html" title="Abstract container class.">Container</a> for widgets from other processes. <a href="#_details">More...</a></p>

<p>Inherits <a class="el" href="classGtk_1_1Container.html">Gtk::Container</a>.</p>
<div class="dynheader">
Collaboration diagram for Gtk::Socket:</div>
<div class="dynsection">
<div class="center"><img src="classGtk_1_1Socket__coll__graph.png" border="0" usemap="#Gtk_1_1Socket_coll__map" alt="Collaboration graph"/></div>
<map name="Gtk_1_1Socket_coll__map" id="Gtk_1_1Socket_coll__map">
<area shape="rect" href="classGtk_1_1Container.html" title="Abstract container class." alt="" coords="61,392,165,421"/><area shape="rect" href="classGtk_1_1Widget.html" title="Abstract Widget (Base class for all widgets)." alt="" coords="68,315,159,344"/><area shape="rect" href="classGtk_1_1Object.html" title="Gtk::Object is the base class for all widgets, and for a few non&#45;widget objects such..." alt="" coords="5,237,93,267"/><area shape="rect" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1Object.html" title="Glib::Object" alt="" coords="5,160,96,189"/><area shape="rect" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1ObjectBase.html" title="Glib::ObjectBase" alt="" coords="51,83,171,112"/><area shape="rect" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1Interface.html" title="Glib::Interface" alt="" coords="123,160,227,189"/><area shape="rect" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html" title="sigc::trackable" alt="" coords="57,5,164,35"/><area shape="rect" href="classAtk_1_1Implementor.html" title="Atk::Implementor" alt="" coords="117,237,237,267"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classGtk_1_1Socket-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1Socket.html#ae969afb32aff0425fbba6c74728525d5">~Socket</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">GtkSocket*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1Socket.html#a8db159ba10c1e0af31dcf42a03a4265c">gobj</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GtkObject. <a href="#a8db159ba10c1e0af31dcf42a03a4265c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const GtkSocket*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1Socket.html#a94390f29a2553cbb30b5d17ed089b26a">gobj</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GtkObject. <a href="#a94390f29a2553cbb30b5d17ed089b26a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1Socket.html#ae1e8129b8da37b2f7a0c4d70a59307fb">Socket</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1Socket.html#a78302d12dea4720a2eb7376151e4e2c2">add_id</a> (<a class="el" href="namespaceGdk.html#abc645cff9ee57146245d4a5b4da7abac">Gdk::NativeWindow</a> window_id)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds an XEMBED client, such as a <a class="el" href="classGtk_1_1Plug.html">Gtk::Plug</a>, to the <a class="el" href="classGtk_1_1Socket.html" title="Container for widgets from other processes.">Gtk::Socket</a>. <a href="#a78302d12dea4720a2eb7376151e4e2c2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceGdk.html#abc645cff9ee57146245d4a5b4da7abac">Gdk::NativeWindow</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1Socket.html#a91f8165e6191f4c97d2bc2d4749bbe7a">get_id</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the window ID of a <a class="el" href="classGtk_1_1Socket.html" title="Container for widgets from other processes.">Gtk::Socket</a> widget, which can then be used to create a client embedded inside the socket, for instance with Gtk::Plug::new(). <a href="#a91f8165e6191f4c97d2bc2d4749bbe7a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGdk_1_1Window.html">Gdk::Window</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1Socket.html#a44789a3ac36cc710d5f4630e38bb65e9">get_plug_window</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves the window of the plug. <a href="#a44789a3ac36cc710d5f4630e38bb65e9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; const <a class="el" href="classGdk_1_1Window.html">Gdk::Window</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1Socket.html#a12a63edab85944b08a4ead299803d44e">get_plug_window</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves the window of the plug. <a href="#a12a63edab85944b08a4ead299803d44e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1SignalProxy0.html">Glib::SignalProxy0</a>&lt; void &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1Socket.html#a9aadb73b6a429dc345057f50e7fe2317">signal_plug_added</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1SignalProxy0.html">Glib::SignalProxy0</a>&lt; bool &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1Socket.html#abd64fc5bbf0b383912578c1eca7e2ac8">signal_plug_removed</a> ()</td></tr>
<tr><td colspan="2"><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1Socket.html#afb6fdb1e21c47565510bd57b3d817c59">on_plug_added</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1Socket.html#ae889153786cc66c35b3db61ec857456c">on_plug_removed</a> ()</td></tr>
<tr><td colspan="2"><h2>Related Functions</h2></td></tr>
<tr><td colspan="2"><p>(Note that these are not member functions.) </p>
<br/><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGtk_1_1Socket.html">Gtk::Socket</a>*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1Socket.html#a9ad8d2c8cba37b3583cb23dfaa8795de">wrap</a> (GtkSocket* object, bool take_copy=false)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object. <a href="#a9ad8d2c8cba37b3583cb23dfaa8795de"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p><a class="el" href="classGtk_1_1Container.html" title="Abstract container class.">Container</a> for widgets from other processes. </p>
<p>Together with <a class="el" href="classGtk_1_1Plug.html">Gtk::Plug</a>, <a class="el" href="classGtk_1_1Socket.html" title="Container for widgets from other processes.">Gtk::Socket</a> provides the ability to embed widgets from one process into another process in a fashion that is transparent to the user. One process creates a <a class="el" href="classGtk_1_1Socket.html" title="Container for widgets from other processes.">Gtk::Socket</a> widget and, passes the that widget's window ID to the other process, which then creates a <a class="el" href="classGtk_1_1Plug.html">Gtk::Plug</a> with that window ID. Any widgets contained in the <a class="el" href="classGtk_1_1Plug.html">Gtk::Plug</a> then will appear inside the first applications window.</p>
<p>The socket's window ID is obtained by using <a class="el" href="classGtk_1_1Socket.html#a91f8165e6191f4c97d2bc2d4749bbe7a" title="Gets the window ID of a Gtk::Socket widget, which can then be used to create a client...">get_id()</a>. Before using this function, the socket must have been realized, and for hence, have been added to its parent.</p>
<div class="fragment"><pre class="fragment"> <a class="code" href="classGtk_1_1Socket.html" title="Container for widgets from other processes.">Gtk::Socket</a> socket;
 parent.add(socket);

 <span class="comment">// The following call is only necessary if one of the ancestors of the</span>
 <span class="comment">// socket is not yet visible</span>
 socket.<a class="code" href="classGtk_1_1Widget.html#a3331962a5e38bf2bb107ecc3c8c24f39" title="Creates the GDK (windowing system) resources associated with a widget.">realize</a>();

 <a class="codeRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01116.html#aaf93fdf0812752e0e02c501dea1b38f0">cout</a> &lt;&lt; <span class="stringliteral">&quot;The ID of the sockets window is: &quot;</span> &lt;&lt; socket.<a class="code" href="classGtk_1_1Socket.html#a91f8165e6191f4c97d2bc2d4749bbe7a" title="Gets the window ID of a Gtk::Socket widget, which can then be used to create a client...">get_id</a>() &lt;&lt; <a class="codeRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01116.html#a9e2ba1ed9813a1f03adc9a87dbf491a5">endl</a>;
</pre></div><p>Note that if you pass the window ID of the socket to another process that will create a plug in the socket, you must make sure that the socket widget is not destroyed until that plug is created. Violating this rule will cause unpredictable consequences, the most likely consequence being that the plug will appear as a separate toplevel window. You can check if the plug has been created by examining the plug_window member of the GtkSocket structure returned by <a class="el" href="classGtk_1_1Socket.html#a8db159ba10c1e0af31dcf42a03a4265c" title="Provides access to the underlying C GtkObject.">gobj()</a>. If this field is non-NULL, then the plug has been successfully created inside of the socket.</p>
<p>When gtkmm is notified that the embedded window has been destroyed, then it will destroy the socket as well. You should always, therefore, be prepared for your sockets to be destroyed at any time when the main event loop is running.</p>
<p>The communication between a <a class="el" href="classGtk_1_1Socket.html" title="Container for widgets from other processes.">Gtk::Socket</a> and a <a class="el" href="classGtk_1_1Plug.html">Gtk::Plug</a> follows the XEmbed protocol. This protocol has also been implemented in other toolkits, e.g. Qt, allowing the same level of integration when embedding a Qt widget in gtkmm or vice versa. </p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ae969afb32aff0425fbba6c74728525d5"></a><!-- doxytag: member="Gtk::Socket::~Socket" ref="ae969afb32aff0425fbba6c74728525d5" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual Gtk::Socket::~Socket </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="ae1e8129b8da37b2f7a0c4d70a59307fb"></a><!-- doxytag: member="Gtk::Socket::Socket" ref="ae1e8129b8da37b2f7a0c4d70a59307fb" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Gtk::Socket::Socket </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a78302d12dea4720a2eb7376151e4e2c2"></a><!-- doxytag: member="Gtk::Socket::add_id" ref="a78302d12dea4720a2eb7376151e4e2c2" args="(Gdk::NativeWindow window_id)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gtk::Socket::add_id </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceGdk.html#abc645cff9ee57146245d4a5b4da7abac">Gdk::NativeWindow</a>&#160;</td>
          <td class="paramname"> <em>window_id</em></td>
          <td>&#160;)&#160;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds an XEMBED client, such as a <a class="el" href="classGtk_1_1Plug.html">Gtk::Plug</a>, to the <a class="el" href="classGtk_1_1Socket.html" title="Container for widgets from other processes.">Gtk::Socket</a>. </p>
<p>The client may be in the same process or in a different process.</p>
<p>To embed a <a class="el" href="classGtk_1_1Plug.html">Gtk::Plug</a> in a <a class="el" href="classGtk_1_1Socket.html" title="Container for widgets from other processes.">Gtk::Socket</a>, you can either create the <a class="el" href="classGtk_1_1Plug.html">Gtk::Plug</a> with &lt;literal&gt;gtk_plug_new (0)&lt;/literal&gt;, call <a class="el" href="classGtk_1_1Plug.html#abd188811f808309d02681f3f814c107d" title="Gets the window ID of a Gtk::Plug widget, which can then be used to embed this window...">Gtk::Plug::get_id()</a> to get the window ID of the plug, and then pass that to the <a class="el" href="classGtk_1_1Socket.html#a78302d12dea4720a2eb7376151e4e2c2" title="Adds an XEMBED client, such as a Gtk::Plug, to the Gtk::Socket.">add_id()</a>, or you can call <a class="el" href="classGtk_1_1Socket.html#a91f8165e6191f4c97d2bc2d4749bbe7a" title="Gets the window ID of a Gtk::Socket widget, which can then be used to create a client...">get_id()</a> to get the window ID for the socket, and call Gtk::Plug::new() passing in that ID.</p>
<p>The <a class="el" href="classGtk_1_1Socket.html" title="Container for widgets from other processes.">Gtk::Socket</a> must have already be added into a toplevel window before you can make this call. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>window_id</em>&#160;</td><td>The window ID of a client participating in the XEMBED protocol. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a91f8165e6191f4c97d2bc2d4749bbe7a"></a><!-- doxytag: member="Gtk::Socket::get_id" ref="a91f8165e6191f4c97d2bc2d4749bbe7a" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceGdk.html#abc645cff9ee57146245d4a5b4da7abac">Gdk::NativeWindow</a> Gtk::Socket::get_id </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Gets the window ID of a <a class="el" href="classGtk_1_1Socket.html" title="Container for widgets from other processes.">Gtk::Socket</a> widget, which can then be used to create a client embedded inside the socket, for instance with Gtk::Plug::new(). </p>
<p>The <a class="el" href="classGtk_1_1Socket.html" title="Container for widgets from other processes.">Gtk::Socket</a> must have already be added into a toplevel window before you can make this call. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>The window ID for the socket. </dd></dl>

</div>
</div>
<a class="anchor" id="a12a63edab85944b08a4ead299803d44e"></a><!-- doxytag: member="Gtk::Socket::get_plug_window" ref="a12a63edab85944b08a4ead299803d44e" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;const <a class="el" href="classGdk_1_1Window.html">Gdk::Window</a>&gt; Gtk::Socket::get_plug_window </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieves the window of the plug. </p>
<p>Use this to check if the plug has been created inside of the socket.</p>
<dl class="since_2_14"><dt><b><a class="el" href="since_2_14.html#_since_2_14000135">Since gtkmm 2.14:</a></b></dt><dd></dd></dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The window of the plug if available, or <code>0</code>. </dd></dl>

</div>
</div>
<a class="anchor" id="a44789a3ac36cc710d5f4630e38bb65e9"></a><!-- doxytag: member="Gtk::Socket::get_plug_window" ref="a44789a3ac36cc710d5f4630e38bb65e9" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;<a class="el" href="classGdk_1_1Window.html">Gdk::Window</a>&gt; Gtk::Socket::get_plug_window </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieves the window of the plug. </p>
<p>Use this to check if the plug has been created inside of the socket.</p>
<dl class="since_2_14"><dt><b><a class="el" href="since_2_14.html#_since_2_14000134">Since gtkmm 2.14:</a></b></dt><dd></dd></dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The window of the plug if available, or <code>0</code>. </dd></dl>

</div>
</div>
<a class="anchor" id="a94390f29a2553cbb30b5d17ed089b26a"></a><!-- doxytag: member="Gtk::Socket::gobj" ref="a94390f29a2553cbb30b5d17ed089b26a" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const GtkSocket* Gtk::Socket::gobj </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Provides access to the underlying C GtkObject. </p>

<p>Reimplemented from <a class="el" href="classGtk_1_1Container.html#ab80be58ac27710f10f329120587e7d60">Gtk::Container</a>.</p>

</div>
</div>
<a class="anchor" id="a8db159ba10c1e0af31dcf42a03a4265c"></a><!-- doxytag: member="Gtk::Socket::gobj" ref="a8db159ba10c1e0af31dcf42a03a4265c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GtkSocket* Gtk::Socket::gobj </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Provides access to the underlying C GtkObject. </p>

<p>Reimplemented from <a class="el" href="classGtk_1_1Container.html#a1b45ff015f4b09b143699bad9d4e423d">Gtk::Container</a>.</p>

</div>
</div>
<a class="anchor" id="afb6fdb1e21c47565510bd57b3d817c59"></a><!-- doxytag: member="Gtk::Socket::on_plug_added" ref="afb6fdb1e21c47565510bd57b3d817c59" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Gtk::Socket::on_plug_added </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="ae889153786cc66c35b3db61ec857456c"></a><!-- doxytag: member="Gtk::Socket::on_plug_removed" ref="ae889153786cc66c35b3db61ec857456c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Gtk::Socket::on_plug_removed </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a9aadb73b6a429dc345057f50e7fe2317"></a><!-- doxytag: member="Gtk::Socket::signal_plug_added" ref="a9aadb73b6a429dc345057f50e7fe2317" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1SignalProxy0.html">Glib::SignalProxy0</a>&lt; void &gt; Gtk::Socket::signal_plug_added </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="user"><dt><b>Prototype:</b></dt><dd><code>void on_my_plug_added()</code> </dd></dl>

</div>
</div>
<a class="anchor" id="abd64fc5bbf0b383912578c1eca7e2ac8"></a><!-- doxytag: member="Gtk::Socket::signal_plug_removed" ref="abd64fc5bbf0b383912578c1eca7e2ac8" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1SignalProxy0.html">Glib::SignalProxy0</a>&lt; bool &gt; Gtk::Socket::signal_plug_removed </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&#160;)&#160;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="user"><dt><b>Prototype:</b></dt><dd><code>bool on_my_plug_removed()</code> </dd></dl>

</div>
</div>
<hr/><h2>Friends And Related Function Documentation</h2>
<a class="anchor" id="a9ad8d2c8cba37b3583cb23dfaa8795de"></a><!-- doxytag: member="Gtk::Socket::wrap" ref="a9ad8d2c8cba37b3583cb23dfaa8795de" args="(GtkSocket *object, bool take_copy=false)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGtk_1_1Socket.html">Gtk::Socket</a>* wrap </td>
          <td>(</td>
          <td class="paramtype">GtkSocket *&#160;</td>
          <td class="paramname"> <em>object</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"> <em>take_copy</em> = <code>false</code></td><td>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>A <a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>object</em>&#160;</td><td>The C instance. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>take_copy</em>&#160;</td><td>False if the result should take ownership of the C instance. True if it should take a new copy or ref. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>A C++ instance that wraps this C instance. </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>gtkmm/socket.h</li>
</ul>
</div>
<hr size="1"/><address style="text-align: right;"><small>Generated on Tue May 4 13:22:02 2010 for gtkmm by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
</body>
</html>