#include <Wt/WMessageResourceBundle>
Public Member Functions | |
void | use (const std::string &path, bool loadInMemory=true) |
Add a (series) of message resource files to be used. | |
std::wstring | getValue (const WString &s) |
Get the value for a particular string in the current locale. | |
std::string | getUTF8Value (const WString &s) |
Get the UTF8-encoded value for a particular string in the current locale. | |
void | refresh () |
Reread the message resources. |
The resource bundle manages a number of resource files, which allow the developer to conceptually manage its messages in a number of libraries.
For example, a WApplication may have a generic message library, that is shared with many other libraries, with re-occurring messages (such as 'welcome', 'add to shopping cart', and 'pay'), and a specific message library for specific messages.
void Wt::WMessageResourceBundle::use | ( | const std::string & | path, | |
bool | loadInMemory = true | |||
) |
Add a (series) of message resource files to be used.
The path is not a URI, and relative paths will be resolved with respect to the working directory of the server. The XML files do not need to be deployed in the web server's docroot.
When you give as path: /path/to/name, then the following message resource files will be used:
The message file that is used depends on the application's locale.
A Message resource file must be formatted as follows:
<?xml version="1.0" encoding="UTF8"?> <messages> <message id='welcome-text'> Welcome dear visiter, {1} of the WFooBar magic website ! </message> <message id='company-policy'> The company policy is to <b>please our share-holders</b>. </message> </messages>
The encodings supported are ASCII, UTF8 (recommended) or UTF16.
To refer the two messages defined in this resource file, use WString::tr("welcome-text").arg(userName) or WWidget::tr("company-policy").