Blob Blame History Raw
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IBusObject: IBus Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
<link rel="home" href="index.html" title="IBus Reference Manual">
<link rel="up" href="ch06.html" title="Internal">
<link rel="prev" href="ibus-ibuserror.html" title="ibuserror">
<link rel="next" href="ibus-ibusshare.html" title="ibusshare">
<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#IBusObject.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                  <a href="#IBusObject.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_signals">  <span class="dim">|</span> 
                  <a href="#IBusObject.signals" class="shortcut">Signals</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="ch06.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="ibus-ibuserror.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="ibus-ibusshare.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="IBusObject"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="IBusObject.top_of_page"></a>IBusObject</span></h2>
<p>IBusObject — Base object of IBus.</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="IBusObject.stability-level"></a><h2>Stability Level</h2>
<acronym title="The intention of a Stable interface is to enable arbitrary third parties to
develop applications to these interfaces, release them, and have confidence that
they will run on all minor releases of the product (after the one in which the
interface was introduced, and within the same major release). Even at a major
release, incompatible changes are expected to be rare, and to have strong
justifications.
"><span class="acronym">Stable</span></acronym>, unless otherwise indicated
</div>
<div class="refsect1">
<a name="IBusObject.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_return">
<col class="functions_name">
</colgroup>
<tbody>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="IBusObject.html#IBUS-OBJECT-FLAGS:CAPS" title="IBUS_OBJECT_FLAGS()">IBUS_OBJECT_FLAGS</a><span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="IBusObject.html#IBUS-OBJECT-SET-FLAGS:CAPS" title="IBUS_OBJECT_SET_FLAGS()">IBUS_OBJECT_SET_FLAGS</a><span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="IBusObject.html#IBUS-OBJECT-UNSET-FLAGS:CAPS" title="IBUS_OBJECT_UNSET_FLAGS()">IBUS_OBJECT_UNSET_FLAGS</a><span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="IBusObject.html#IBUS-OBJECT-IN-DESTRUCTION:CAPS" title="IBUS_OBJECT_IN_DESTRUCTION()">IBUS_OBJECT_IN_DESTRUCTION</a><span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="IBusObject.html#IBUS-OBJECT-DESTROYED:CAPS" title="IBUS_OBJECT_DESTROYED()">IBUS_OBJECT_DESTROYED</a><span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="IBusObject.html" title="IBusObject"><span class="returnvalue">IBusObject</span></a> *
</td>
<td class="function_name">
<a class="link" href="IBusObject.html#ibus-object-new" title="ibus_object_new ()">ibus_object_new</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="IBusObject.html#ibus-object-destroy" title="ibus_object_destroy ()">ibus_object_destroy</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="IBusObject.signals"></a><h2>Signals</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="signals_return">
<col width="300px" class="signals_name">
<col width="200px" class="signals_flags">
</colgroup>
<tbody><tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="IBusObject.html#IBusObject-destroy" title="The “destroy” signal">destroy</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr></tbody>
</table></div>
</div>
<div class="refsect1">
<a name="IBusObject.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="name">
<col class="description">
</colgroup>
<tbody>
<tr>
<td class="datatype_keyword">enum</td>
<td class="function_name"><a class="link" href="IBusObject.html#IBusObjectFlags" title="enum IBusObjectFlags">IBusObjectFlags</a></td>
</tr>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="IBusObject.html#IBusObject-struct" title="struct IBusObject">IBusObject</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="IBusObject.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="screen">    <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GFlags</a>
    <span class="lineart">╰──</span> IBusObjectFlags
    <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct">GObject</a>
    <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
        <span class="lineart">╰──</span> IBusObject
            <span class="lineart">├──</span> <a class="link" href="IBusSerializable.html" title="IBusSerializable">IBusSerializable</a>
            <span class="lineart">├──</span> <a class="link" href="IBusBus.html" title="IBusBus">IBusBus</a>
            <span class="lineart">├──</span> <a class="link" href="IBusService.html" title="IBusService">IBusService</a>
            <span class="lineart">╰──</span> <a class="link" href="IBusKeymap.html" title="IBusKeymap">IBusKeymap</a>
</pre>
</div>
<div class="refsect1">
<a name="IBusObject.description"></a><h2>Description</h2>
<p>IBusObject is the base object for all objects in IBus.</p>
</div>
<div class="refsect1">
<a name="IBusObject.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="IBUS-OBJECT-FLAGS:CAPS"></a><h3>IBUS_OBJECT_FLAGS()</h3>
<pre class="programlisting">#define IBUS_OBJECT_FLAGS(obj)             (IBUS_OBJECT (obj)-&gt;flags)
</pre>
</div>
<hr>
<div class="refsect2">
<a name="IBUS-OBJECT-SET-FLAGS:CAPS"></a><h3>IBUS_OBJECT_SET_FLAGS()</h3>
<pre class="programlisting">#define IBUS_OBJECT_SET_FLAGS(obj,flag)    G_STMT_START{ (IBUS_OBJECT_FLAGS (obj) |= (flag)); }G_STMT_END
</pre>
</div>
<hr>
<div class="refsect2">
<a name="IBUS-OBJECT-UNSET-FLAGS:CAPS"></a><h3>IBUS_OBJECT_UNSET_FLAGS()</h3>
<pre class="programlisting">#define IBUS_OBJECT_UNSET_FLAGS(obj,flag)  G_STMT_START{ (IBUS_OBJECT_FLAGS (obj) &amp;= ~(flag)); }G_STMT_END
</pre>
</div>
<hr>
<div class="refsect2">
<a name="IBUS-OBJECT-IN-DESTRUCTION:CAPS"></a><h3>IBUS_OBJECT_IN_DESTRUCTION()</h3>
<pre class="programlisting">#define IBUS_OBJECT_IN_DESTRUCTION(obj)    (IBUS_OBJECT_FLAGS (obj) &amp; IBUS_IN_DESTRUCTION)
</pre>
</div>
<hr>
<div class="refsect2">
<a name="IBUS-OBJECT-DESTROYED:CAPS"></a><h3>IBUS_OBJECT_DESTROYED()</h3>
<pre class="programlisting">#define IBUS_OBJECT_DESTROYED(obj)         (IBUS_OBJECT_FLAGS (obj) &amp; IBUS_DESTROYED)
</pre>
</div>
<hr>
<div class="refsect2">
<a name="ibus-object-new"></a><h3>ibus_object_new ()</h3>
<pre class="programlisting"><a class="link" href="IBusObject.html" title="IBusObject"><span class="returnvalue">IBusObject</span></a> *
ibus_object_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Creates  a new <a class="link" href="IBusObject.html" title="IBusObject"><span class="type">IBusObject</span></a>.</p>
<div class="refsect3">
<a name="ibus-object-new.returns"></a><h4>Returns</h4>
<p> A newly allocated <a class="link" href="IBusObject.html" title="IBusObject"><span class="type">IBusObject</span></a></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ibus-object-destroy"></a><h3>ibus_object_destroy ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
ibus_object_destroy (<em class="parameter"><code><a class="link" href="IBusObject.html" title="IBusObject"><span class="type">IBusObject</span></a> *object</code></em>);</pre>
<p>Emit the "destory" signal notifying all reference holders that they should
release the <a class="link" href="IBusObject.html" title="IBusObject"><span class="type">IBusObject</span></a>.</p>
<p>The memory for the object itself won't be deleted until its reference count
actually drops to 0; ibus_object_destroy merely asks reference holders to
release their references. It does not free the object.</p>
<div class="refsect3">
<a name="ibus-object-destroy.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>object</p></td>
<td class="parameter_description"><p>an <a class="link" href="IBusObject.html" title="IBusObject"><span class="type">IBusObject</span></a> to destroy.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
</div>
</div>
<div class="refsect1">
<a name="IBusObject.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="IBusObjectFlags"></a><h3>enum IBusObjectFlags</h3>
<p>The flags are used internally.</p>
<div class="refsect3">
<a name="IBusObjectFlags.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
<col class="enum_members_description">
<col width="200px" class="enum_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="enum_member_name"><p><a name="IBUS-IN-DESTRUCTION:CAPS"></a>IBUS_IN_DESTRUCTION</p></td>
<td class="enum_member_description">
<p>Used in GObjectClass::dispose</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="IBUS-DESTROYED:CAPS"></a>IBUS_DESTROYED</p></td>
<td class="enum_member_description">
<p>Used during emitting IBusObject::destroy signal.</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="IBUS-RESERVED-1:CAPS"></a>IBUS_RESERVED_1</p></td>
<td class="enum_member_description">
<p>Reserved.</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="IBUS-RESERVED-2:CAPS"></a>IBUS_RESERVED_2</p></td>
<td class="enum_member_description">
<p>Reserved.</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="IBusObject-struct"></a><h3>struct IBusObject</h3>
<pre class="programlisting">struct IBusObject;</pre>
<p>All the fields in the <span class="structname">IBusObject</span> structure are
private to the <a class="link" href="IBusObject.html" title="IBusObject"><span class="type">IBusObject</span></a> and should never be accessed directly.</p>
</div>
</div>
<div class="refsect1">
<a name="IBusObject.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="IBusObject-destroy"></a><h3>The <code class="literal">“destroy”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="IBusObject.html" title="IBusObject"><span class="type">IBusObject</span></a> *object,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>Destroy and free an IBusObject</p>
<p>See also:  <a class="link" href="IBusObject.html#ibus-object-destroy" title="ibus_object_destroy ()"><code class="function">ibus_object_destroy()</code></a>.</p>
<div class="note"><p>Argument <em class="parameter"><code>user_data</code></em> is ignored in this function.</p></div>
<div class="refsect3">
<a name="IBusObject-destroy.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>object</p></td>
<td class="parameter_description"><p>An IBusObject.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.28</div>
</body>
</html>