<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>LocaleMgr class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.2.15 --> <center> <a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="namespaces.html">Namespace List</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="classes.html">Alphabetical List</a> <a class="qindex" href="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Compound Members</a> </center> <hr><h1>LocaleMgr Class Reference</h1>The LocaleMgr class handles all the different locales of Sword. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="localemgr_8h-source.html">localemgr.h</a>></code> <p> Collaboration diagram for LocaleMgr:<p><center><img src="class_locale_mgr__coll__graph.png" border="0" usemap="#_locale_mgr__coll__map" alt="Collaboration graph"></center> <map name="_locale_mgr__coll__map"> </map> <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="class_locale_mgr-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0> <tr><td colspan=2><br><h2>Public Methods</h2></td></tr> <tr><td nowrap align=right valign=top><a name="a0" doxytag="LocaleMgr::LocaleMgr"></a> </td><td valign=bottom><a class="el" href="class_locale_mgr.html#a0">LocaleMgr</a> (const char *iConfigPath=0)</td></tr> <tr><td> </td><td><font size=-1><em>Default constructor of LocaleMgr You do normally not need this constructor, use <a class="el" href="class_locale_mgr.html#p0">LocaleMgr::systemLocaleMgr</a> instead.</em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a name="a1" doxytag="LocaleMgr::~LocaleMgr"></a> virtual </td><td valign=bottom><a class="el" href="class_locale_mgr.html#a1">~LocaleMgr</a> ()</td></tr> <tr><td> </td><td><font size=-1><em>Default destructor of LocaleMgr.</em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual <a class="el" href="class_s_w_locale.html">SWLocale</a> * </td><td valign=bottom><a class="el" href="class_locale_mgr.html#a2">getLocale</a> (const char *name)</td></tr> <tr><td> </td><td><font size=-1><em>Get the locale connected with the name "name".</em> <a href="#a2">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual list< string > </td><td valign=bottom><a class="el" href="class_locale_mgr.html#a3">getAvailableLocales</a> ()</td></tr> <tr><td> </td><td><font size=-1><em>Get the list of available locales.</em> <a href="#a3">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual const char * </td><td valign=bottom><a class="el" href="class_locale_mgr.html#a4">translate</a> (const char *text, const char *localeName=0)</td></tr> <tr><td> </td><td><font size=-1><em>Returns translated text.</em> <a href="#a4">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual const char * </td><td valign=bottom><a class="el" href="class_locale_mgr.html#a5">getDefaultLocaleName</a> ()</td></tr> <tr><td> </td><td><font size=-1><em>Get the default locale name.</em> <a href="#a5">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="class_locale_mgr.html#a6">setDefaultLocaleName</a> (const char *name)</td></tr> <tr><td> </td><td><font size=-1><em>Set the new standard locale of Sword.</em> <a href="#a6">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a name="a7" doxytag="LocaleMgr::loadConfigDir"></a> virtual void </td><td valign=bottom><a class="el" href="class_locale_mgr.html#a7">loadConfigDir</a> (const char *ipath)</td></tr> <tr><td> </td><td><font size=-1><em>Augment this localmgr with all locale.conf files in a directory.</em></font><br><br></td></tr> <tr><td colspan=2><br><h2>Static Public Attributes</h2></td></tr> <tr><td nowrap align=right valign=top>LocaleMgr </td><td valign=bottom><a class="el" href="class_locale_mgr.html#p0">systemLocaleMgr</a></td></tr> <tr><td> </td><td><font size=-1><em>The LocaleMgr object used globally in the Sword world.</em> <a href="#p0">More...</a><em></em></font><br><br></td></tr> <tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr> <tr><td nowrap align=right valign=top><a name="n0" doxytag="LocaleMgr::locales"></a> LocaleMap </td><td valign=bottom><b>locales</b></td></tr> <tr><td colspan=2><br><h2>Private Methods</h2></td></tr> <tr><td nowrap align=right valign=top><a name="c0" doxytag="LocaleMgr::deleteLocales"></a> void </td><td valign=bottom><b>deleteLocales</b> ()</td></tr> <tr><td colspan=2><br><h2>Private Attributes</h2></td></tr> <tr><td nowrap align=right valign=top><a name="o0" doxytag="LocaleMgr::defaultLocaleName"></a> char * </td><td valign=bottom><b>defaultLocaleName</b></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> The LocaleMgr class handles all the different locales of Sword. <p> It provides functions to get a list of all available locales, to get the default locale name and to get it. The other functions are not interesting for frontend programmers. <p> To get the default locale name use <dl compact><dt><b> See also: </b><dd> <a class="el" href="class_locale_mgr.html#a5">getDefaultLocaleName</a> To set the default locale name use , <a class="el" href="class_locale_mgr.html#a6">setDefaultLocaleName</a> To get the locale for a language name use , <a class="el" href="class_locale_mgr.html#a2">getLocale</a> To get a list of availble locales use , <a class="el" href="class_locale_mgr.html#a3">getAvailableLocales</a> </dl> <p> <p> Definition at line <a class="el" href="localemgr_8h-source.html#l00049">49</a> of file <a class="el" href="localemgr_8h-source.html">localemgr.h</a>.<hr><h2>Member Function Documentation</h2> <a name="a3" doxytag="LocaleMgr::getAvailableLocales"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> list< string > LocaleMgr::getAvailableLocales </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap><code> [virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Get the list of available locales. <p> @ret Returns a list of strings, which contains the names of the available locales. <p> Definition at line <a class="el" href="localemgr_8cpp-source.html#l00156">156</a> of file <a class="el" href="localemgr_8cpp-source.html">localemgr.cpp</a>. <p> <div class="fragment"><pre>00156 { 00157 list <string> retVal; 00158 <font class="keywordflow">for</font> (LocaleMap::iterator it = locales.begin(); it != locales.end(); it++) 00159 retVal.push_back((*it).second->getName()); 00160 00161 <font class="keywordflow">return</font> retVal; 00162 } </pre></div> </td> </tr> </table> <a name="a5" doxytag="LocaleMgr::getDefaultLocaleName"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> const char * LocaleMgr::getDefaultLocaleName </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap><code> [virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Get the default locale name. <p> To set it use <dl compact><dt><b> See also: </b><dd> <a class="el" href="class_locale_mgr.html#a6">setDefaultLocaleName</a></dl>@ret Returns the default locale name <p> Definition at line <a class="el" href="localemgr_8cpp-source.html#l00177">177</a> of file <a class="el" href="localemgr_8cpp-source.html">localemgr.cpp</a>. <p> Referenced by <a class="el" href="localemgr_8cpp-source.html#l00165">translate</a>(). <p> <div class="fragment"><pre>00177 { 00178 <font class="keywordflow">return</font> defaultLocaleName; 00179 } </pre></div> </td> </tr> </table> <a name="a2" doxytag="LocaleMgr::getLocale"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="class_s_w_locale.html">SWLocale</a> * LocaleMgr::getLocale </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const char * </td> <td class="mdname1" valign="top" nowrap> <em>name</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap><code> [virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Get the locale connected with the name "name". <p> <dl compact><dt><b> Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>name</em> </td><td> The name of the locale you want to have. For example use getLocale("de") to get the locale for the German language. </td></tr> </table> </dl><dl compact><dt><b> Returns: </b><dd> Returns the locale object if the locale with the name given as parameter was found. If it wasn't found return NULL. </dl> <p> Definition at line <a class="el" href="localemgr_8cpp-source.html#l00145">145</a> of file <a class="el" href="localemgr_8cpp-source.html">localemgr.cpp</a>. <p> Referenced by <a class="el" href="localemgr_8cpp-source.html#l00165">translate</a>(). <p> <div class="fragment"><pre>00145 { 00146 LocaleMap::iterator it; 00147 00148 it = locales.find(name); 00149 <font class="keywordflow">if</font> (it != locales.end()) 00150 <font class="keywordflow">return</font> (*it).second; 00151 00152 <font class="keywordflow">return</font> 0; 00153 } </pre></div> </td> </tr> </table> <a name="a6" doxytag="LocaleMgr::setDefaultLocaleName"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void LocaleMgr::setDefaultLocaleName </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const char * </td> <td class="mdname1" valign="top" nowrap> <em>name</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap><code> [virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Set the new standard locale of Sword. <p> <dl compact><dt><b> Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>name</em> </td><td> The name of the new default locale </td></tr> </table> </dl> <p> Definition at line <a class="el" href="localemgr_8cpp-source.html#l00182">182</a> of file <a class="el" href="localemgr_8cpp-source.html">localemgr.cpp</a>. <p> Referenced by <a class="el" href="localemgr_8cpp-source.html#l00046">LocaleMgr</a>(). <p> <div class="fragment"><pre>00182 { 00183 stdstr(&defaultLocaleName, name); 00184 } </pre></div> </td> </tr> </table> <a name="a4" doxytag="LocaleMgr::translate"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> const char * LocaleMgr::translate </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const char * </td> <td class="mdname" nowrap> <em>text</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>const char * </td> <td class="mdname" nowrap> <em>localeName</em> = 0</td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Returns translated text. <p> This function uses both parameters to return the translated version of the given text.<dl compact><dt><b> Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>The</em> </td><td> text to translate into the language given by the first parameter. </td></tr> <tr><td valign=top><em>localeName</em> </td><td> The name of the locale Sword should use </td></tr> </table> </dl><dl compact><dt><b> Returns: </b><dd> Returns the translated text. </dl> <p> Definition at line <a class="el" href="localemgr_8cpp-source.html#l00165">165</a> of file <a class="el" href="localemgr_8cpp-source.html">localemgr.cpp</a>. <p> References <a class="el" href="localemgr_8cpp-source.html#l00177">getDefaultLocaleName</a>(), <a class="el" href="localemgr_8cpp-source.html#l00145">getLocale</a>(), and <a class="el" href="swlocale_8cpp-source.html#l00069">SWLocale::translate</a>(). <p> <div class="fragment"><pre>00165 { 00166 <a class="code" href="class_s_w_locale.html">SWLocale</a> *target; 00167 <font class="keywordflow">if</font> (!localeName) { 00168 localeName = <a class="code" href="class_locale_mgr.html#a5">getDefaultLocaleName</a>(); 00169 } 00170 target = <a class="code" href="class_locale_mgr.html#a2">getLocale</a>(localeName); 00171 <font class="keywordflow">if</font> (target) 00172 <font class="keywordflow">return</font> target-><a class="code" href="class_s_w_locale.html#a4">translate</a>(text); 00173 <font class="keywordflow">return</font> text; 00174 } </pre></div> </td> </tr> </table> <hr><h2>Member Data Documentation</h2> <a name="p0" doxytag="LocaleMgr::systemLocaleMgr"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> LocaleMgr LocaleMgr::systemLocaleMgr<code> [static]</code> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> The LocaleMgr object used globally in the Sword world. <p> Do not create your own LocaleMgr, use this static object instead. <p> Definition at line <a class="el" href="localemgr_8cpp-source.html#l00043">43</a> of file <a class="el" href="localemgr_8cpp-source.html">localemgr.cpp</a>. <p> Referenced by <a class="el" href="versekey_8cpp-source.html#l00048">VerseKey::init</a>(). </td> </tr> </table> <hr>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="localemgr_8h-source.html">localemgr.h</a><li><a class="el" href="localemgr_8cpp-source.html">localemgr.cpp</a></ul> <hr><address align="right"><small>Generated on Thu Jun 20 22:13:02 2002 for The Sword Project by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.15 </small></address> </body> </html>