Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

CollatorFactory Class Reference

A factory, used with registerFactory, the creates multiple collators and provides display names for them. More...

#include <coll.h>

Inheritance diagram for CollatorFactory::

UObject UMemory List of all members.

Public Methods

virtual UBool visible (void) const
 Return true if this factory is visible. More...

virtual CollatorcreateCollator (const Locale &loc)=0
 Return a collator for the provided locale. More...

virtual UnicodeStringgetDisplayName (const Locale &objectLocale, const Locale &displayLocale, UnicodeString &result)
 Return the name of the collator for the objectLocale, localized for the displayLocale. More...

virtual const UnicodeStringgetSupportedIDs (int32_t &count, UErrorCode &status)=0
 Return an array of all the locale names directly supported by this factory. More...


Detailed Description

A factory, used with registerFactory, the creates multiple collators and provides display names for them.

A factory supports some number of locales-- these are the locales for which it can create collators. The factory can be visible, in which case the supported locales will be enumerated by getAvailableLocales, or invisible, in which they are not. Invisible locales are still supported, they are just not listed by getAvailableLocales.

If standard locale display names are sufficient, Collator instances can be registered using registerInstance instead.

Note: if the collators are to be used from C APIs, they must be instances of RuleBasedCollator.

Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 918 of file coll.h.


Member Function Documentation

virtual Collator* CollatorFactory::createCollator const Locale   loc [pure virtual]
 

Return a collator for the provided locale.

If the locale is not supported, return NULL.

Parameters:
loc  the locale identifying the collator to be created.
Returns:
a new collator if the locale is supported, otherwise NULL.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

virtual UnicodeString& CollatorFactory::getDisplayName const Locale   objectLocale,
const Locale   displayLocale,
UnicodeString   result
[virtual]
 

Return the name of the collator for the objectLocale, localized for the displayLocale.

If objectLocale is not supported, or the factory is not visible, set the result string to bogus.

Parameters:
objectLocale  the locale identifying the collator
displayLocale  the locale for which the display name of the collator should be localized
result  an output parameter for the display name, set to bogus if not supported.
Returns:
the display name
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

virtual const UnicodeString* CollatorFactory::getSupportedIDs int32_t &    count,
UErrorCode   status
[pure virtual]
 

Return an array of all the locale names directly supported by this factory.

The number of names is returned in count. This array is owned by the factory. Its contents must never change.

Parameters:
count  output parameter for the number of locales supported by the factory
status  the in/out error code
Returns:
a pointer to an array of count UnicodeStrings.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

virtual UBool CollatorFactory::visible void    const [virtual]
 

Return true if this factory is visible.

Default is true. If not visible, the locales supported by this factory will not be listed by getAvailableLocales.

Returns:
true if the factory is visible.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.


The documentation for this class was generated from the following file:
Generated on Mon Nov 24 14:36:25 2003 for ICU 2.8 by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001