Sophie

Sophie

distrib > * > 2010.0 > * > by-pkgid > e30a327878e3ba1e4fc6c751cb1f95c0 > files > 110

libscim-devel-1.4.9-2mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<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.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;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 class="current"><a href="annotated.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="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="a00157.html">scim</a>::<a class="el" href="a00050.html">IMEngineFactoryBase</a>
  </div>
</div>
<div class="contents">
<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 &lt;scim_imengine.h&gt;</code>
<p>

<p>
<a href="a00253.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">&nbsp;</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&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#f34738c7fe9e863466c25495387fb087">~IMEngineFactoryBase</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Virtual destructor.  <a href="#f34738c7fe9e863466c25495387fb087"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#649b93485005351fcdd3d78113af6897">validate_encoding</a> (const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> &amp;encoding) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if an encoding is supported by this IMEngineFactory.  <a href="#649b93485005351fcdd3d78113af6897"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</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> &amp;locale) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</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>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#cbc15b70af002f557ccd3e41496ab983">get_language</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the supported language of this input method engine.  <a href="#cbc15b70af002f557ccd3e41496ab983"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a>&nbsp;</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> &amp;str)</td></tr>

<tr><td class="mdescLeft">&nbsp;</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>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#2d1b1e09dcc5aa2d720505129b253b8c">get_default_locale</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the default locale of this input method engine.  <a href="#2d1b1e09dcc5aa2d720505129b253b8c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#b27d1aea4863f8d3fceeafaa16d5d58e">get_default_encoding</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the default encoding of this input method engine.  <a href="#b27d1aea4863f8d3fceeafaa16d5d58e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#e23b86d2be7aa7c1173b4a2b851d7afa">get_locales</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a list of all supported locales, separated by comma.  <a href="#e23b86d2be7aa7c1173b4a2b851d7afa"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#13f14e2895051ac58be1789400895921">get_encodings</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a list of all supported encodings, separated by comma.  <a href="#13f14e2895051ac58be1789400895921"></a><br></td></tr>
<tr><td colspan="2"><div class="groupHeader">Pure virtual members.</div></td></tr>
<tr><td colspan="2"><div class="groupText">These member functions must be implemented in derived classes. <br><br></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#6921eee2666fee7ab3da416e53a7f2f6">get_name</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the name of this input method engine.  <a href="#6921eee2666fee7ab3da416e53a7f2f6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#7b3e039734251007df6947cf9d9b6c3a">get_uuid</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the UUID of this input method engine.  <a href="#7b3e039734251007df6947cf9d9b6c3a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#dc57c3a8c80ee4bcb830fd35a7111063">get_icon_file</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the icon file path of this input method engine.  <a href="#dc57c3a8c80ee4bcb830fd35a7111063"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#69dc66f38c39eabbade99f63467f1b6b">get_authors</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the authors information of this input method engine.  <a href="#69dc66f38c39eabbade99f63467f1b6b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#c4b3d29d8b9d90dff700a795a3170db3">get_credits</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the credits information of this input method engine.  <a href="#c4b3d29d8b9d90dff700a795a3170db3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="a00157.html#850f268430a53180832d6677ba9d27a8">WideString</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#d077870f447a106341e252794d1709ec">get_help</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the help information of this input method engine.  <a href="#d077870f447a106341e252794d1709ec"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="a00070.html">IMEngineInstancePointer</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00050.html#a7e2ee7629f23b4079ba1dd1e23f7dea">create_instance</a> (const <a class="el" href="a00157.html#e6432a785654dd7fbfe52e8dd8cd7799">String</a> &amp;encoding, int id=-1)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new IMEngineInstance object.  <a href="#a7e2ee7629f23b4079ba1dd1e23f7dea"></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&nbsp;</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> &amp;locales)</td></tr>

<tr><td class="mdescLeft">&nbsp;</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&nbsp;</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> &amp;languages)</td></tr>

<tr><td class="mdescLeft">&nbsp;</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" title="The base class of the real input methods&#39; IMEngineFactory classes.">scim::IMEngineFactoryBase</a>, which takes charge of holding shared data, creating IMEngineInstances etc. <hr><h2>Constructor &amp; 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>&nbsp;)&nbsp;</td>
          <td></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>&nbsp;)&nbsp;</td>
          <td><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="6921eee2666fee7ab3da416e53a7f2f6"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_name" ref="6921eee2666fee7ab3da416e53a7f2f6" 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>&nbsp;)&nbsp;</td>
          <td> 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#6a00b436255e3e5dda3fd940467569a2">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#930689a9a94bb0bc50e32868ed048204">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#4b1f0c4dca2afca32bf51e999ac8248b">scim::DummyIMEngineFactory</a>.</p>

</div>
</div><p>
<a class="anchor" name="7b3e039734251007df6947cf9d9b6c3a"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_uuid" ref="7b3e039734251007df6947cf9d9b6c3a" 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>&nbsp;)&nbsp;</td>
          <td> 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#4229ae829bfb9ce79df99d339dbcb818">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#3f2c6f8acd3ae7fc30f318910a599332">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#af015cfdac0fa23729c4adbdf9143bee">scim::DummyIMEngineFactory</a>.</p>

</div>
</div><p>
<a class="anchor" name="dc57c3a8c80ee4bcb830fd35a7111063"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_icon_file" ref="dc57c3a8c80ee4bcb830fd35a7111063" 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>&nbsp;)&nbsp;</td>
          <td> 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#b4cec54624d68f0d012a46087ae66b2d">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#c8f3cc13159decd1e12f50958d294dcf">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#604b020c0369c034d12f5f21401004f1">scim::DummyIMEngineFactory</a>.</p>

</div>
</div><p>
<a class="anchor" name="69dc66f38c39eabbade99f63467f1b6b"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_authors" ref="69dc66f38c39eabbade99f63467f1b6b" 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>&nbsp;)&nbsp;</td>
          <td> 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#16a7a4d1735ff89c37e78d65fc97031b">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#c83514fbca70a716fe106d641e7c3fa3">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#1b14bf683afb91d990c3f1dfe1af282f">scim::DummyIMEngineFactory</a>.</p>

</div>
</div><p>
<a class="anchor" name="c4b3d29d8b9d90dff700a795a3170db3"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_credits" ref="c4b3d29d8b9d90dff700a795a3170db3" 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>&nbsp;)&nbsp;</td>
          <td> 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#f26de9ffee1ebfbdca5161fece8c7d49">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#10870e1d8ce9385a6d863656fd43400a">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#46f4a39c5c52c5faaab439430cac2a04">scim::DummyIMEngineFactory</a>.</p>

</div>
</div><p>
<a class="anchor" name="d077870f447a106341e252794d1709ec"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_help" ref="d077870f447a106341e252794d1709ec" 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>&nbsp;)&nbsp;</td>
          <td> 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#2fbb13b1b84952c87b743043e85d3914">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#4e1139cbaa51a76b87024b19e1d5ca9c">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#7d1a720e5dd7a61cd7e49ea60abe5392">scim::DummyIMEngineFactory</a>.</p>

</div>
</div><p>
<a class="anchor" name="a7e2ee7629f23b4079ba1dd1e23f7dea"></a><!-- doxytag: member="scim::IMEngineFactoryBase::create_instance" ref="a7e2ee7629f23b4079ba1dd1e23f7dea" args="(const String &amp;encoding, int id=&#45;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> &amp;&nbsp;</td>
          <td class="paramname"> <em>encoding</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>id</em> = <code>-1</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><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" title="The base class of the real input methods&#39; IMEngineInstance classes.">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>&nbsp;</td><td>- the encoding supported by the client. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>id</em>&nbsp;</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>.</p>

</div>
</div><p>
<a class="anchor" name="649b93485005351fcdd3d78113af6897"></a><!-- doxytag: member="scim::IMEngineFactoryBase::validate_encoding" ref="649b93485005351fcdd3d78113af6897" args="(const String &amp;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> &amp;&nbsp;</td>
          <td class="paramname"> <em>encoding</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> 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>&nbsp;</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#a0a2c89274d9b8e920002b4a3998c336">scim::ComposeKeyFactory</a>, <a class="el" href="a00026.html#0664b674ca07178632f0bdc2d07725ea">scim::FilterFactoryBase</a>, and <a class="el" href="a00022.html#74e85a453429e9f0d3b5409df3db046f">scim::DummyIMEngineFactory</a>.</p>

</div>
</div><p>
<a class="anchor" name="f9ca6ba3bcff44112df84cd98b02c88f"></a><!-- doxytag: member="scim::IMEngineFactoryBase::validate_locale" ref="f9ca6ba3bcff44112df84cd98b02c88f" args="(const String &amp;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> &amp;&nbsp;</td>
          <td class="paramname"> <em>locale</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> 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>&nbsp;</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>.</p>

</div>
</div><p>
<a class="anchor" name="cbc15b70af002f557ccd3e41496ab983"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_language" ref="cbc15b70af002f557ccd3e41496ab983" 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>&nbsp;)&nbsp;</td>
          <td> 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#70a35bd64ddcfb161738283b9997f960">scim::FilterFactoryBase</a>.</p>

</div>
</div><p>
<a class="anchor" name="8e0f6c3450532bb3b4fa84de3a97c8fe"></a><!-- doxytag: member="scim::IMEngineFactoryBase::inverse_query" ref="8e0f6c3450532bb3b4fa84de3a97c8fe" args="(const WideString &amp;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> &amp;&nbsp;</td>
          <td class="paramname"> <em>str</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><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>&nbsp;</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>.</p>

</div>
</div><p>
<a class="anchor" name="2d1b1e09dcc5aa2d720505129b253b8c"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_default_locale" ref="2d1b1e09dcc5aa2d720505129b253b8c" 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>&nbsp;)&nbsp;</td>
          <td> 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="b27d1aea4863f8d3fceeafaa16d5d58e"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_default_encoding" ref="b27d1aea4863f8d3fceeafaa16d5d58e" 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>&nbsp;)&nbsp;</td>
          <td> 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="e23b86d2be7aa7c1173b4a2b851d7afa"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_locales" ref="e23b86d2be7aa7c1173b4a2b851d7afa" 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>&nbsp;)&nbsp;</td>
          <td> 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="13f14e2895051ac58be1789400895921"></a><!-- doxytag: member="scim::IMEngineFactoryBase::get_encodings" ref="13f14e2895051ac58be1789400895921" 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>&nbsp;)&nbsp;</td>
          <td> 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 &amp;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> &amp;&nbsp;</td>
          <td class="paramname"> <em>locales</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><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>&nbsp;</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 &amp;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> &amp;&nbsp;</td>
          <td class="paramname"> <em>languages</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><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>&nbsp;</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>
<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>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Sun Apr 19 13:02:42 2009 for scim by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.7.1 </small></address>
</body>
</html>