File: classGFC_1_1Gtk_1_1Socket.html

package info (click to toggle)
gfcui 2.3.1-2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 43,420 kB
  • ctags: 18,023
  • sloc: cpp: 53,967; sh: 31,555; makefile: 1,322; perl: 108
file content (302 lines) | stat: -rw-r--r-- 19,572 bytes parent folder | download | duplicates (3)
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
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=ISO-8859-1"
 http-equiv="content-type">
  <title>GTK+ Foundation Classes</title>
  <link href="gfc.css" rel="stylesheet" type="text/css">
  <meta content="The GFC Development Team" name="author">
  <meta content="Core Library Reference Manual" name="description">
</head>
<body style="color: rgb(0, 0, 0); background-color: rgb(243, 244, 248);"
 alink="#000099" link="#000099" vlink="#990099">
<table style="text-align: left; width: 1227px; height: 117px;"
 border="0" cellpadding="0" cellspacing="0">
  <tbody>
    <tr>
      <td
 style="text-align: center; background-color: rgb(255, 255, 255); width: 220px; vertical-align: top;"><img
 alt="GFC Logo" src="../images/gfc.png"
 style="width: 207px; height: 92px;"></td>
      <td
 style="text-align: center; background-color: rgb(87, 107, 152); vertical-align: middle;"><img
 alt="GFC Title Logo" src="../images/gfc-title.png"
 style="width: 418px; height: 76px;"><br>
      </td>
    </tr>
    <tr>
      <td
 style="text-align: center; background-color: rgb(65, 77, 104); vertical-align: middle;"><big><span
 style="color: rgb(255, 255, 153); font-weight: bold;">Reference Manual</span></big><br>
      </td>
      <td
 style="text-align: center; background-color: rgb(148, 164, 200); vertical-align: middle;"><small
 style="font-family: helvetica,arial,sans-serif;"><a
 href="../html/index.html">Main Page</a>&nbsp; |&nbsp; <a
 href="../html/namespaces.html">Namespace List</a>&nbsp; |&nbsp; <a
 href="classes.html">Alphabetical List</a>&nbsp; |&nbsp; <a
 href="../html/annotated.html">Class List</a>&nbsp; |&nbsp; <a
 href="../html/files.html">File List</a></small><br>
      </td>
    </tr>
  </tbody>
</table>
<small> </small>
</body>
</html>
<!-- Generated by Doxygen 1.3.8 -->
<h1>GFC::Gtk::Socket Class Reference</h1>A GtkSocket C++ wrapper class.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="socket_8hh-source.html">gfc/gtk/socket.hh</a>&gt;</code>
<p>
<p>Inheritance diagram for GFC::Gtk::Socket:
<p><center><img src="classGFC_1_1Gtk_1_1Socket.png" usemap="#GFC::Gtk::Socket_map" border="0" alt=""></center>
<map name="GFC::Gtk::Socket_map">
<area href="classGFC_1_1Gtk_1_1Container.html" alt="GFC::Gtk::Container" shape="rect" coords="73,280,210,304">
<area href="classGFC_1_1Gtk_1_1Widget.html" alt="GFC::Gtk::Widget" shape="rect" coords="73,224,210,248">
<area href="classGFC_1_1Gtk_1_1Object.html" alt="GFC::Gtk::Object" shape="rect" coords="0,168,137,192">
<area href="classGFC_1_1Atk_1_1Implementor.html" alt="GFC::Atk::Implementor" shape="rect" coords="147,168,284,192">
<area doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Object.html" alt="GFC::G::Object" shape="rect" coords="0,112,137,136">
<area doxygen="gfccore.tag:" href="classGFC_1_1G_1_1TypeInterface.html" alt="GFC::G::TypeInterface" shape="rect" coords="147,112,284,136">
<area doxygen="gfccore.tag:" href="classGFC_1_1G_1_1TypeInstance.html" alt="GFC::G::TypeInstance" shape="rect" coords="0,56,137,80">
<area doxygen="gfccore.tag:" href="classGFC_1_1G_1_1TypeInstance.html" alt="GFC::G::TypeInstance" shape="rect" coords="147,56,284,80">
<area doxygen="gfccore.tag:" href="classGFC_1_1Trackable.html" alt="GFC::Trackable" shape="rect" coords="0,0,137,24">
<area doxygen="gfccore.tag:" href="classGFC_1_1Trackable.html" alt="GFC::Trackable" shape="rect" coords="147,0,284,24">
</map>
<a href="classGFC_1_1Gtk_1_1Socket-members.html">List of all members.</a><h2>Signal Prototypes</h2>
<ul>
<li>const <a class="elRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">PlugAddedSignalType</a> <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z816_4">plug_added_signal</a>
<dl class="el"><dd class="mdescRight"><a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Plug</a> added signal (see <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z820_0">sig_plug_added()</a>).  <a href="#z816_4"></a><br></dl><li>const <a class="elRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">PlugRemovedSignalType</a> <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z816_5">plug_removed_signal</a>
<dl class="el"><dd class="mdescRight"><a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Plug</a> removed signal (see <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z820_1">sig_plug_removed()</a>).  <a href="#z816_5"></a><br></dl></ul>
<h2>Public Member Functions</h2>
<tr><td colspan="2"><div class="groupHeader">Constructors</div></td></tr>
<ul>
<li><a class="anchor" name="z817_0" doxytag="GFC::Gtk::Socket::Socket" ></a>
<a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z817_0">Socket</a> ()
<dl class="el"><dd class="mdescRight">Construct a new socket. <br></dl><li><a class="anchor" name="z817_1" doxytag="GFC::Gtk::Socket::~Socket" ></a>
virtual <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z817_1">~Socket</a> ()
<dl class="el"><dd class="mdescRight">Destructor. <br></dl></ul>
<tr><td colspan="2"><div class="groupHeader">Accessors</div></td></tr>
<ul>
<li><a class="anchor" name="z818_0" doxytag="GFC::Gtk::Socket::gtk_socket" ></a>
GtkSocket * <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z818_0">gtk_socket</a> () const
<dl class="el"><dd class="mdescRight">Get a pointer to the GtkSocket structure. <br></dl><li><a class="anchor" name="z818_1" doxytag="GFC::Gtk::Socket::operator GtkSocket *" ></a>
<a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z818_1">operator GtkSocket *</a> () const
<dl class="el"><dd class="mdescRight">Conversion operator; safely converts a <a class="el" href="classGFC_1_1Gtk_1_1Socket.html">Socket</a> to a GtkSocket pointer. <br></dl><li><a class="anchor" name="z818_2" doxytag="GFC::Gtk::Socket::has_plug" ></a>
bool <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z818_2">has_plug</a> () const
<dl class="el"><dd class="mdescRight">Returns true if this socket has a plug. <br></dl><li><a class="anchor" name="z818_3" doxytag="GFC::Gtk::Socket::plug_window" ></a>
<a class="el" href="classGFC_1_1Gdk_1_1Window.html">Gdk::Window</a> * <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z818_3">plug_window</a> () const
<dl class="el"><dd class="mdescRight">Returns the <a class="el" href="classGFC_1_1Gdk_1_1Window.html">Gdk::Window</a> for the plug. <br></dl><li><a class="anchor" name="z818_4" doxytag="GFC::Gtk::Socket::plug_widget" ></a>
<a class="el" href="classGFC_1_1Gtk_1_1Widget.html">Widget</a> * <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z818_4">plug_widget</a> () const
<dl class="el"><dd class="mdescRight">Returns the widget embedded into the socket. <br></dl><li><a class="anchor" name="z818_5" doxytag="GFC::Gtk::Socket::same_app" ></a>
bool <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z818_5">same_app</a> () const
<dl class="el"><dd class="mdescRight">Returns true if the plug and socket are in the same application. <br></dl><li>GdkNativeWindow <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z818_6">get_id</a> () const
<dl class="el"><dd class="mdescRight">Gets the window ID of a <a class="el" href="classGFC_1_1Gtk_1_1Socket.html">Socket</a> widget, which can then be used to create a client embedded inside the socket, for instance with <a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Gtk::Plug</a>.  <a href="#z818_6"></a><br></dl></ul>
<tr><td colspan="2"><div class="groupHeader">Methods</div></td></tr>
<ul>
<li>void <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z819_0">add_id</a> (GdkNativeWindow window_id)
<dl class="el"><dd class="mdescRight">Adds an XEMBED client, such as a <a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Plug</a>, to the <a class="el" href="classGFC_1_1Gtk_1_1Socket.html">Socket</a>.  <a href="#z819_0"></a><br></dl></ul>
<tr><td colspan="2"><div class="groupHeader">Signal Proxies</div></td></tr>
<ul>
<li><a class="anchor" name="z820_0" doxytag="GFC::Gtk::Socket::sig_plug_added" ></a>
const <a class="elRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">PlugAddedSignalProxy</a> <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z820_0">sig_plug_added</a> ()
<dl class="el"><dd class="mdescRight">Connect to the plug_added_signal; emitted when a widget is embedded into a socket. <br></dl><li><a class="anchor" name="z820_1" doxytag="GFC::Gtk::Socket::sig_plug_removed" ></a>
const <a class="elRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">PlugRemovedSignalProxy</a> <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z820_1">sig_plug_removed</a> ()
<dl class="el"><dd class="mdescRight">Connect to the plug_removed_signal; emitted when a widget is removed from a socket. <br></dl></ul>
<h2>Protected Member Functions</h2>
<tr><td colspan="2"><div class="groupHeader">Constructors</div></td></tr>
<ul>
<li><a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z815_0">Socket</a> (GtkSocket *socket, bool <a class="elRef" doxygen="gfccore.tag:" href="classGFC_1_1Trackable.html#z143_1">owns_reference</a>=false)
<dl class="el"><dd class="mdescRight">Construct a new <a class="el" href="classGFC_1_1Gtk_1_1Socket.html">Socket</a> from an existing GtkSocket.  <a href="#z815_0"></a><br></dl></ul>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A GtkSocket C++ wrapper class. 
<p>
Together with <a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Plug</a>, <a class="el" href="classGFC_1_1Gtk_1_1Socket.html">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="classGFC_1_1Gtk_1_1Socket.html">Socket</a> widget and, passes that widget's window ID to the other process, which then creates a <a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Plug</a> with that window ID. Any widgets contained in the <a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Plug</a> will then appear inside the first applications window.<p>
The socket's window ID is obtained by using <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z818_6">get_id()</a>. Before using this method, the socket must have been realized, and hence, have been added to its parent.<p>
<b>Example:</b> Obtaining the window ID of a socket. <div class="fragment"><pre>    Gtk::Socket *socket = <span class="keyword">new</span> Gtk::Socket;
    socket-&gt;show();
    parent-&gt;add(*socket);
   
    <span class="comment">// The following call is only necessary if one of</span>
    <span class="comment">// the ancestors of the socket is not yet visible.</span>
    socket-&gt;realize();
    g_print(<span class="stringliteral">"The ID of the sockets window is %x\n"</span>, gtk_socket_get_id (socket));
</pre></div>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 <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z818_3">plug_window()</a>. If this accessor is non-null, then the plug has been successfully created inside of the socket.<p>
When GTK+ 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. The communication between a <a class="el" href="classGFC_1_1Gtk_1_1Socket.html">Socket</a> and a <a class="el" href="classGFC_1_1Gtk_1_1Plug.html">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 GTK or vice versa. 
<p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="z815_0" doxytag="GFC::Gtk::Socket::Socket" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> GFC::Gtk::Socket::Socket           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">GtkSocket *&nbsp;</td>
          <td class="mdname" nowrap> <em>socket</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td></td>
          <td class="md" nowrap>bool&nbsp;</td>
          <td class="mdname" nowrap> <em>owns_reference</em> = <code>false</code></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [explicit, protected]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Construct a new <a class="el" href="classGFC_1_1Gtk_1_1Socket.html">Socket</a> from an existing GtkSocket. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td></td><td valign=top><em>socket</em>&nbsp;</td><td>A pointer to a GtkSocket. </td></tr>
    <tr><td></td><td valign=top><em>owns_reference</em>&nbsp;</td><td>Set false if the initial reference count is floating, set true if it's not.</td></tr>
  </table>
</dl>
<br>
The <em>socket</em> can be a newly created GtkSocket or an existing GtkSocket (see <a class="elRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Object.html#z68_0">G::Object::Object</a>).     </td>
  </tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="z819_0" doxytag="GFC::Gtk::Socket::add_id" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> void GFC::Gtk::Socket::add_id           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">GdkNativeWindow&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>window_id</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Adds an XEMBED client, such as a <a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Plug</a>, to the <a class="el" href="classGFC_1_1Gtk_1_1Socket.html">Socket</a>. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td></td><td valign=top><em>window_id</em>&nbsp;</td><td>The window ID of a client participating in the XEMBED protocol.</td></tr>
  </table>
</dl>
<br>
The client may be in the same process or in a different process. To embed a <a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Plug</a> in a <a class="el" href="classGFC_1_1Gtk_1_1Socket.html">Socket</a>, you can either create a new <a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Plug</a>, or call <a class="el" href="classGFC_1_1Gtk_1_1Plug.html#z697_5">Gtk::Plug::get_id()</a> to get the window ID of the plug, and then pass that to <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z819_0">add_id()</a>, or you can call <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z818_6">Gtk::Socket::get_id()</a> to get the window ID for the socket, and pass to <a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Gtk::Plug</a> in the ID. The <a class="el" href="classGFC_1_1Gtk_1_1Socket.html">Socket</a> must have already be added into a toplevel window before you can make this call.     </td>
  </tr>
</table>
<a class="anchor" name="z818_6" doxytag="GFC::Gtk::Socket::get_id" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> GdkNativeWindow GFC::Gtk::Socket::get_id           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Gets the window ID of a <a class="el" href="classGFC_1_1Gtk_1_1Socket.html">Socket</a> widget, which can then be used to create a client embedded inside the socket, for instance with <a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Gtk::Plug</a>. 
<p>
<dl compact><dt><b>Returns:</b></dt><dd>The window ID for the socket.</dd></dl>
<br>
The <a class="el" href="classGFC_1_1Gtk_1_1Socket.html">Socket</a> must have already been added into a toplevel window before you can make this call.     </td>
  </tr>
</table>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="z816_4" doxytag="GFC::Gtk::Socket::plug_added_signal" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> const <a class="elRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">PlugAddedSignalType</a> <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z816_4">GFC::Gtk::Socket::plug_added_signal</a><code> [static, protected]</code>          </td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Plug</a> added signal (see <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z820_0">sig_plug_added()</a>). 
<p>
Calls a slot with the signature: <div class="fragment"><pre>             <span class="keywordtype">void</span> function();
</pre></div>    </td>
  </tr>
</table>
<a class="anchor" name="z816_5" doxytag="GFC::Gtk::Socket::plug_removed_signal" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> const <a class="elRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">PlugRemovedSignalType</a> <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z816_5">GFC::Gtk::Socket::plug_removed_signal</a><code> [static, protected]</code>          </td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<a class="el" href="classGFC_1_1Gtk_1_1Plug.html">Plug</a> removed signal (see <a class="el" href="classGFC_1_1Gtk_1_1Socket.html#z820_1">sig_plug_removed()</a>). 
<p>
Calls a slot with the signature: <div class="fragment"><pre>             <span class="keywordtype">bool</span> function();
</pre></div>    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="socket_8hh-source.html">socket.hh</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Tue Aug 24 00:34:42 2004 for GFC-UI by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 ></a> 1.3.8 </small></address>
</body>
</html>