<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>scim: scim::IMEngineFactoryBase Class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.0 --> <div class="tabs"> <ul> <li><a href="main.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li id="current"><a href="classes.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul></div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul></div> <div class="nav"> <a class="el" href="a00157.html">scim</a>::<a class="el" href="a00050.html">IMEngineFactoryBase</a></div> <h1>scim::IMEngineFactoryBase Class Reference<br> <small> [<a class="el" href="a00160.html">IMEngine</a>]</small> </h1><!-- doxytag: class="scim::IMEngineFactoryBase" --><!-- doxytag: inherits="scim::ReferencedObject" -->The base class of the real input methods' IMEngineFactory classes. <a href="#_details">More...</a> <p> <code>#include <scim_imengine.h></code> <p> Inheritance diagram for scim::IMEngineFactoryBase:<p><center><img src="a00374.png" border="0" usemap="#a00375" alt="Inheritance graph"></center> <map name="a00375"> <area href="a00012.html" shape="rect" coords="7,157,183,181" alt=""> <area href="a00022.html" shape="rect" coords="207,157,404,181" alt=""> <area href="a00026.html" shape="rect" coords="428,157,604,181" alt=""> <area href="a00072.html" shape="rect" coords="220,8,391,32" alt=""> </map> <center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for scim::IMEngineFactoryBase:<p><center><img src="a00376.png" border="0" usemap="#a00377" alt="Collaboration graph"></center> <map name="a00377"> <area href="a00072.html" shape="rect" coords="16,8,187,32" alt=""> </map> <center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="a00378.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#fc2a40c113d6aace917cf3233e8c76c5">IMEngineFactoryBase</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#f34738c7fe9e863466c25495387fb087">~IMEngineFactoryBase</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Virtual destructor. <a href="#f34738c7fe9e863466c25495387fb087"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#8149111b68c2b10a515a307b7476ae6c">validate_encoding</a> (const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> &encoding) const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Check if an encoding is supported by this IMEngineFactory. <a href="#8149111b68c2b10a515a307b7476ae6c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#f9ca6ba3bcff44112df84cd98b02c88f">validate_locale</a> (const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> &locale) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Check if a locale is supported by this IMEngineFactory. <a href="#f9ca6ba3bcff44112df84cd98b02c88f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#b31e429533cd515fad47c045cc5bb711">get_language</a> () const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the supported language of this input method engine. <a href="#b31e429533cd515fad47c045cc5bb711"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#8e0f6c3450532bb3b4fa84de3a97c8fe">inverse_query</a> (const <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> &str)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the original key string of a composed string. <a href="#8e0f6c3450532bb3b4fa84de3a97c8fe"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#3aee494ae23acadfb69625145d49563c">get_default_locale</a> () const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the default locale of this input method engine. <a href="#3aee494ae23acadfb69625145d49563c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#0b37cdc2635983040c58a66af237d0af">get_default_encoding</a> () const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the default encoding of this input method engine. <a href="#0b37cdc2635983040c58a66af237d0af"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#d2e040e0bef80a4983b8bdbcfbe1c963">get_locales</a> () const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a list of all supported locales, separated by comma. <a href="#d2e040e0bef80a4983b8bdbcfbe1c963"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#ff733d093c78b02ed4b084de5d20bca7">get_encodings</a> () const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a list of all supported encodings, separated by comma. <a href="#ff733d093c78b02ed4b084de5d20bca7"></a><br></td></tr> <tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#7d4152be0afd1a95f13973e0e180632a">set_locales</a> (const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> &locales)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the locales supported by this input method engine. <a href="#7d4152be0afd1a95f13973e0e180632a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#bce1c79de9d82a2b14c0a45c634dc1fe">set_languages</a> (const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> &languages)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the languages supported by this input method engine. <a href="#bce1c79de9d82a2b14c0a45c634dc1fe"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> The base class of the real input methods' IMEngineFactory classes. <p> Each input method should implement a class derived from <a class="el" href="a00050.html">scim::IMEngineFactoryBase</a>, which takes charge of holding shared data, creating IMEngineInstances etc. <p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="fc2a40c113d6aace917cf3233e8c76c5"></a><!-- doxytag: member="scim::IMEngineFactoryBase::IMEngineFactoryBase" ref="fc2a40c113d6aace917cf3233e8c76c5" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">scim::IMEngineFactoryBase::IMEngineFactoryBase </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="f34738c7fe9e863466c25495387fb087"></a><!-- doxytag: member="scim::IMEngineFactoryBase::~IMEngineFactoryBase" ref="f34738c7fe9e863466c25495387fb087" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual scim::IMEngineFactoryBase::~IMEngineFactoryBase </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Virtual destructor. <p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="20d91317ff7c2cc60725210049e705ea"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_name" ref="20d91317ff7c2cc60725210049e705ea" args="() const=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> scim::IMEngineFactoryBase::get_name </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the name of this input method engine. <p> This name should be a localized string.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A WideString containing the name. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#9fe5c5c50639a46aa5be867532b56bfc">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#9eaad8caabdd2ed6e4cae1c176f2fed0">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#bf5ea1bc138b387a4856bb92ca854d1a">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="189ce916ba791abcf6c2553d8ebc11e0"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_uuid" ref="189ce916ba791abcf6c2553d8ebc11e0" args="() const=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> scim::IMEngineFactoryBase::get_uuid </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the UUID of this input method engine. <p> Each input method engine has an unique UUID to distinguish itself from other engines.<p> You may use uuidgen command shipped with e2fsprogs package to generate this UUID.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A String containing an unique UUID. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#7889267ef151bbdae76e35b1ca5e5b9d">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#ef8a00920a42d0cdccb976c942675a4e">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#c181f2ba3e9382c95f23c0c1b5465242">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="f22c5cce4801400553d0686d58da3e9e"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_icon_file" ref="f22c5cce4801400553d0686d58da3e9e" args="() const=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> scim::IMEngineFactoryBase::get_icon_file </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the icon file path of this input method engine. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A String containing the icon file path on the local filesystem. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#5c8477108840d76bb4ed6761763d62c9">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#9eafcbda3c01c1a67a015ea6e952488e">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#79ed41a0a226ea323fcc261910146907">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="4874af640b799b0feb602d43fb016d22"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_authors" ref="4874af640b799b0feb602d43fb016d22" args="() const=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> scim::IMEngineFactoryBase::get_authors </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the authors information of this input method engine. <p> This string should be a localized string.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A WideString containing a list of the authors' name. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#5e2f0163300323ac17b4f544d014e56b">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#e516dde330d2baa99c747c0a6895ef8d">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#851319dfef054efc613470b1e2eeb160">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="80b752a4058c0a7866f0d772bd9193d6"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_credits" ref="80b752a4058c0a7866f0d772bd9193d6" args="() const=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> scim::IMEngineFactoryBase::get_credits </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the credits information of this input method engine. <p> This string should be a localized string.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A WideString containing the credits information. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#11a593ce4a6e72a267c2ef1cdc62419f">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#d1129c06b1cda357209f86df2fb0b932">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#8a57437e32167d97cefb84b403e398f9">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="aa4f1d3099956c7d7795df62aa0811f2"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_help" ref="aa4f1d3099956c7d7795df62aa0811f2" args="() const=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> scim::IMEngineFactoryBase::get_help </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the help information of this input method engine. <p> This string should be a localized string.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A WideString containing the help information. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#81a890dc520c5463f8c7da3f487cc906">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#b3d60924346b8de07341803de626c247">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#e5e52b19003d7c6583249ee4cbb558c1">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="a7e2ee7629f23b4079ba1dd1e23f7dea"></a><!-- doxytag: member="scim::IMEngineFactoryBase::create_instance" ref="a7e2ee7629f23b4079ba1dd1e23f7dea" args="(const String &encoding, int id=-1)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00070.html">IMEngineInstancePointer</a> scim::IMEngineFactoryBase::create_instance </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> & </td> <td class="paramname"> <em>encoding</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>id</em> = <code>-1</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Create a new IMEngineInstance object. <p> This method creates a new <a class="el" href="a00052.html">scim::IMEngineInstanceBase</a> object with the given encoding and id.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>encoding</em> </td><td>- the encoding supported by the client. </td></tr> <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>- the instance id, should be unique. </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A smart pointer points to this new IMEngineInstance object. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#3994313c8151a390834e7863286ed628">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#cbd863c653e886faa3891be6cb722052">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#9aa887267c901bb8be1b29466a1ed47c">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="8149111b68c2b10a515a307b7476ae6c"></a><!-- doxytag: member="scim::IMEngineFactoryBase::validate_encoding" ref="8149111b68c2b10a515a307b7476ae6c" args="(const String &encoding) const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool scim::IMEngineFactoryBase::validate_encoding </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> & </td> <td class="paramname"> <em>encoding</em> </td> <td> ) </td> <td width="100%"> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Check if an encoding is supported by this IMEngineFactory. <p> The default implementation of this virtual function validates the encoding against the locale list set by method set_locales.<p> It should be enough in most case.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>encoding</em> </td><td>- the encoding name to be checked. </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the encoding is supported, otherwise false. </dd></dl> <p> Reimplemented in <a class="el" href="a00012.html#84ea644f0d0c661af6726f2df7892150">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#866e4eb43785fce0e5a516c0dddbd3a2">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#15ac2a739fa20285032faac0a16b6a05">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="f9ca6ba3bcff44112df84cd98b02c88f"></a><!-- doxytag: member="scim::IMEngineFactoryBase::validate_locale" ref="f9ca6ba3bcff44112df84cd98b02c88f" args="(const String &locale) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool scim::IMEngineFactoryBase::validate_locale </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> & </td> <td class="paramname"> <em>locale</em> </td> <td> ) </td> <td width="100%"> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Check if a locale is supported by this IMEngineFactory. <p> The default implementation of this virtual function validates the locale against the locale list set by method set_locales.<p> It should be enough in most case.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>locale</em> </td><td>- the locale name to be checked. </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the locale is supported, otherwise false. </dd></dl> <p> Reimplemented in <a class="el" href="a00012.html#960cfdd285370bafd13cf313bedd0663">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#48d668ce1300b27ce30eb582127c3730">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#798b986e7006bb368b3252cf8855898e">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="b31e429533cd515fad47c045cc5bb711"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_language" ref="b31e429533cd515fad47c045cc5bb711" args="() const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> scim::IMEngineFactoryBase::get_language </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the supported language of this input method engine. <p> The language name conforms to glibc locale naming standard, like: zh_CN Simplified Chinese zh_TW Traditional Chinese ja_JP Japanese ru_RU for Russian<p> The second part of the name (territory id) can be omitted.<p> The default implementation of this method will get the language name according to the return value of get_default_locale () method.<p> This method maybe overwrited to return another language name, for example returning "~other" means other uncategorized languages. <p> Reimplemented in <a class="el" href="a00026.html#23b6c2e2dec13497fc2f9f849e9efc16">scim::FilterFactoryBase</a>. </div> </div><p> <a class="anchor" name="8e0f6c3450532bb3b4fa84de3a97c8fe"></a><!-- doxytag: member="scim::IMEngineFactoryBase::inverse_query" ref="8e0f6c3450532bb3b4fa84de3a97c8fe" args="(const WideString &str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> scim::IMEngineFactoryBase::inverse_query </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> & </td> <td class="paramname"> <em>str</em> </td> <td> ) </td> <td width="100%"><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the original key string of a composed string. <p> For example, in the pinyin input method of Simplified Chinese: the key string of composed string "中国" can be "zhongguo".<p> The default implementation just returns a empty string.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>str</em> </td><td>The composed string to be queried.</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>the original key string of the given composed string. </dd></dl> <p> Reimplemented in <a class="el" href="a00026.html#f0556243a1a02638f6b57c1fb5c81716">scim::FilterFactoryBase</a>. </div> </div><p> <a class="anchor" name="3aee494ae23acadfb69625145d49563c"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_default_locale" ref="3aee494ae23acadfb69625145d49563c" args="() const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> scim::IMEngineFactoryBase::get_default_locale </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Get the default locale of this input method engine. <p> The default locale is the first locale in the locale list, which is set by method set_locales.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>The default locale name. </dd></dl> </div> </div><p> <a class="anchor" name="0b37cdc2635983040c58a66af237d0af"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_default_encoding" ref="0b37cdc2635983040c58a66af237d0af" args="() const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> scim::IMEngineFactoryBase::get_default_encoding </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Get the default encoding of this input method engine. <p> The default encoding is the first locale's encoding in the locale list, which is set by method set_locales.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>The default encoding name. </dd></dl> </div> </div><p> <a class="anchor" name="d2e040e0bef80a4983b8bdbcfbe1c963"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_locales" ref="d2e040e0bef80a4983b8bdbcfbe1c963" args="() const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> scim::IMEngineFactoryBase::get_locales </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Get a list of all supported locales, separated by comma. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A comma separated locale list. </dd></dl> </div> </div><p> <a class="anchor" name="ff733d093c78b02ed4b084de5d20bca7"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_encodings" ref="ff733d093c78b02ed4b084de5d20bca7" args="() const" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> scim::IMEngineFactoryBase::get_encodings </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Get a list of all supported encodings, separated by comma. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A comma separated encoding list. </dd></dl> </div> </div><p> <a class="anchor" name="7d4152be0afd1a95f13973e0e180632a"></a><!-- doxytag: member="scim::IMEngineFactoryBase::set_locales" ref="7d4152be0afd1a95f13973e0e180632a" args="(const String &locales)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::IMEngineFactoryBase::set_locales </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> & </td> <td class="paramname"> <em>locales</em> </td> <td> ) </td> <td width="100%"><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set the locales supported by this input method engine. <p> This method should be called within the constructors of the derived classes.<p> set_locales () and set_languages () are exclusive with each other. Only one method should be used for one Factory object.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>locales</em> </td><td>- a comma separated list containing all valid locales should be supported by this input method engine. The first locale is the default one. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="bce1c79de9d82a2b14c0a45c634dc1fe"></a><!-- doxytag: member="scim::IMEngineFactoryBase::set_languages" ref="bce1c79de9d82a2b14c0a45c634dc1fe" args="(const String &languages)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void scim::IMEngineFactoryBase::set_languages </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> & </td> <td class="paramname"> <em>languages</em> </td> <td> ) </td> <td width="100%"><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set the languages supported by this input method engine. <p> This method should be called within the constructors of the derived classes.<p> set_locales () and set_languages () are exclusive with each other. Only one method should be used for one Factory object.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>languages</em> </td><td>- a comma separated list containing all valid languages should be supported by this input method engine. The first language is the default one. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="20d91317ff7c2cc60725210049e705ea"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_name" ref="20d91317ff7c2cc60725210049e705ea" args="() const=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> scim::IMEngineFactoryBase::get_name </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the name of this input method engine. <p> This name should be a localized string.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A WideString containing the name. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#9fe5c5c50639a46aa5be867532b56bfc">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#9eaad8caabdd2ed6e4cae1c176f2fed0">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#bf5ea1bc138b387a4856bb92ca854d1a">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="189ce916ba791abcf6c2553d8ebc11e0"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_uuid" ref="189ce916ba791abcf6c2553d8ebc11e0" args="() const=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> scim::IMEngineFactoryBase::get_uuid </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the UUID of this input method engine. <p> Each input method engine has an unique UUID to distinguish itself from other engines.<p> You may use uuidgen command shipped with e2fsprogs package to generate this UUID.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A String containing an unique UUID. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#7889267ef151bbdae76e35b1ca5e5b9d">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#ef8a00920a42d0cdccb976c942675a4e">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#c181f2ba3e9382c95f23c0c1b5465242">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="f22c5cce4801400553d0686d58da3e9e"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_icon_file" ref="f22c5cce4801400553d0686d58da3e9e" args="() const=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> scim::IMEngineFactoryBase::get_icon_file </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the icon file path of this input method engine. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A String containing the icon file path on the local filesystem. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#5c8477108840d76bb4ed6761763d62c9">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#9eafcbda3c01c1a67a015ea6e952488e">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#79ed41a0a226ea323fcc261910146907">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="4874af640b799b0feb602d43fb016d22"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_authors" ref="4874af640b799b0feb602d43fb016d22" args="() const=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> scim::IMEngineFactoryBase::get_authors </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the authors information of this input method engine. <p> This string should be a localized string.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A WideString containing a list of the authors' name. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#5e2f0163300323ac17b4f544d014e56b">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#e516dde330d2baa99c747c0a6895ef8d">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#851319dfef054efc613470b1e2eeb160">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="80b752a4058c0a7866f0d772bd9193d6"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_credits" ref="80b752a4058c0a7866f0d772bd9193d6" args="() const=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> scim::IMEngineFactoryBase::get_credits </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the credits information of this input method engine. <p> This string should be a localized string.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A WideString containing the credits information. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#11a593ce4a6e72a267c2ef1cdc62419f">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#d1129c06b1cda357209f86df2fb0b932">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#8a57437e32167d97cefb84b403e398f9">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="aa4f1d3099956c7d7795df62aa0811f2"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_help" ref="aa4f1d3099956c7d7795df62aa0811f2" args="() const=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a> scim::IMEngineFactoryBase::get_help </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the help information of this input method engine. <p> This string should be a localized string.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A WideString containing the help information. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#81a890dc520c5463f8c7da3f487cc906">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#b3d60924346b8de07341803de626c247">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#e5e52b19003d7c6583249ee4cbb558c1">scim::DummyIMEngineFactory</a>. </div> </div><p> <a class="anchor" name="a7e2ee7629f23b4079ba1dd1e23f7dea"></a><!-- doxytag: member="scim::IMEngineFactoryBase::create_instance" ref="a7e2ee7629f23b4079ba1dd1e23f7dea" args="(const String &encoding, int id=-1)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00070.html">IMEngineInstancePointer</a> scim::IMEngineFactoryBase::create_instance </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> & </td> <td class="paramname"> <em>encoding</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>id</em> = <code>-1</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Create a new IMEngineInstance object. <p> This method creates a new <a class="el" href="a00052.html">scim::IMEngineInstanceBase</a> object with the given encoding and id.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>encoding</em> </td><td>- the encoding supported by the client. </td></tr> <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>- the instance id, should be unique. </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A smart pointer points to this new IMEngineInstance object. </dd></dl> <p> Implemented in <a class="el" href="a00012.html#3994313c8151a390834e7863286ed628">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#cbd863c653e886faa3891be6cb722052">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#9aa887267c901bb8be1b29466a1ed47c">scim::DummyIMEngineFactory</a>. </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="a00136.html">scim_imengine.h</a></ul> <hr size="1"><address style="align: right;"><small>Generated on Thu Jun 28 14:12:39 2007 for scim by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address> </body> </html>