Nebula CDateTime Widget(Internationalization)
The CDateTime makes full use of Java's Locale object throughout. Upon creation, The locale is set
to set the system's default, but can be changed at runtime via the
Although most translations are provided through the java.util.SimpleDateFormat object, there a few
cases where CDateTime must rely upon external property files in order to be translated correctly.
Because this is a widget and not a full application, it is quite possible that multiple instances
may created with different locales. For this reason, the
Messages class does not hold a
static reference to a given properties file, but can map to multiple files as they are activated.
Presently a few translations are available
If you can help by creating a translation (a very simple one!), simply file a Feature Request for [I18N] and attach your translated version of the properties file.
View the properties file: English (US),
When the pattern is set with CDateTime's
setFormat method, the locale is fully
utilized to specify the appropriate fields, their order and style (ie 12 or 24 hour format).
However, when the pattern is set explicitly with CDateTime's
setPattern method, the
individual text fields will be translated appropriately, but their order and style will follow
the programmatical setting.
There is one exception though - the 'null string' cannot be translated via java.util.SimpleDateFormat, and the properties file is referenced in this particular case.
The most noteable difference from a locale specified format using
a custom one with
setPattern is changing the style of the Time Selector (aka Clock).
By using a 12 or 24 hour pattern, the locale will be overridden when creating the clock dial.
A similar affect can be achieved with the style settings by forcing one clock style over
another with either CLOCK_12_HOUR or CLOCK_24_HOUR.
The properties file is referenced for navigational items, such as "Next Month" and "Go to Today".