Wt  3.3.8
Public Member Functions | List of all members
Wt::WCombinedLocalizedStrings Class Reference

A localized string resolver that bundles multiple string resolvers. More...

#include <Wt/WCombinedLocalizedStrings>

Inheritance diagram for Wt::WCombinedLocalizedStrings:
Inheritance graph
[legend]

Public Member Functions

 WCombinedLocalizedStrings ()
 Constructor.
 
void add (WLocalizedStrings *resolver)
 Adds a string resolver. More...
 
void insert (int index, WLocalizedStrings *resolver)
 Inserts a string resolver. More...
 
void remove (WLocalizedStrings *resolver)
 Removes a string resolver. More...
 
const std::vector< WLocalizedStrings * > & items () const
 Returns the list of resolvers. More...
 
virtual void refresh ()
 Rereads the message resources. More...
 
virtual void hibernate ()
 Purges memory resources, if possible. More...
 
virtual bool resolveKey (const std::string &key, std::string &result)
 Resolves a key in the current locale. More...
 
virtual bool resolvePluralKey (const std::string &key, std::string &result,::uint64_t amount)
 Resolves the plural form of a key in the current locale. More...
 
- Public Member Functions inherited from Wt::WLocalizedStrings
virtual ~WLocalizedStrings ()
 Destructor.
 

Additional Inherited Members

- Static Public Member Functions inherited from Wt::WLocalizedStrings
static int evaluatePluralExpression (const std::string &expression,::uint64_t n)
 Utility method to evaluate a plural expression. More...
 

Detailed Description

A localized string resolver that bundles multiple string resolvers.

This class implements the localized strings interface and delegates WString::tr() string resolution to one or more string resolvers. You will typically use this class if you want to combine different methods of string resolution (e.g. some from files, and other strings using a database).

See also
WApplication::setLocalizedStrings()

Member Function Documentation

void Wt::WCombinedLocalizedStrings::add ( WLocalizedStrings resolver)

Adds a string resolver.

The order in which string resolvers are added is significant: resolveKey() will consult each string resolver in the order they have been added, until a match is found.

Ownership of the resolver is transferred.

void Wt::WCombinedLocalizedStrings::hibernate ( )
virtual

Purges memory resources, if possible.

This is called afer event handling, and is an opportunity to conserve memory inbetween events, by freeing memory used for cached key/value bindings, if applicable.

The default implementation does nothing.

Reimplemented from Wt::WLocalizedStrings.

void Wt::WCombinedLocalizedStrings::insert ( int  index,
WLocalizedStrings resolver 
)

Inserts a string resolver.

See also
add()
const std::vector< WLocalizedStrings * > & Wt::WCombinedLocalizedStrings::items ( ) const

Returns the list of resolvers.

See also
add(), remove()
void Wt::WCombinedLocalizedStrings::refresh ( )
virtual

Rereads the message resources.

Purge any cached key/values, if applicable.

The default implementation does nothing.

Reimplemented from Wt::WLocalizedStrings.

void Wt::WCombinedLocalizedStrings::remove ( WLocalizedStrings resolver)

Removes a string resolver.

This returns ownership of the resolver.

See also
add()
bool Wt::WCombinedLocalizedStrings::resolveKey ( const std::string &  key,
std::string &  result 
)
virtual

Resolves a key in the current locale.

This method is used by WString to obtain the UTF8 value corresponding to a key in the current locale.

Returns true if the key could be resolved. The value is written in result, encoded using UTF8.

See also
WApplication::locale(), WString::tr()

Implements Wt::WLocalizedStrings.

bool Wt::WCombinedLocalizedStrings::resolvePluralKey ( const std::string &  key,
std::string &  result,
::uint64_t  amount 
)
virtual

Resolves the plural form of a key in the current locale.

This method is used by WString to obtain the UTF8 value corresponding to a key in the current locale, taking into account the possibility of multiple plural forms, and chosing the right plural form based on the amount passed.

Throws a std::logic_error if the underlying implementation does not provide support for plural internationalized strings.

Returns true if the key could be resolved. The value is written in result, encoded as UTF8.

See also
WApplication::locale(), WString::trn()

Reimplemented from Wt::WLocalizedStrings.


Generated on Mon Sep 4 2017 for the C++ Web Toolkit (Wt) by doxygen 1.8.11