/**
* Class that handles i18n.
- *
+ *
* @author David ‘Bombe’ Roden <bombe@freenetproject.org>
- * @version $Id$
*/
public class I18n {
/**
* Returns the translated value for a key. The translated values may contain
* placeholders that are replaced with the given parameters.
- *
+ *
* @see MessageFormat
* @param key
* The key to get
* Returns the keycode from the value of the given key. You can specify the
* constants in {@link KeyEvent} in the properties file, e.g. VK_S for the
* keycode ‘s’ when used for mnemonics.
- *
+ *
* @param key
* The key under which the keycode is stored
* @return The keycode
/**
* Returns a key stroke for use with swing accelerators.
- *
+ *
* @param key
* The key of the key stroke
* @return The key stroke, or <code>null</code> if no key stroke could be
modifierMask |= InputEvent.SHIFT_DOWN_MASK;
} else {
if (keyToken.startsWith("VK_")) {
+ if (keyToken.equals("VK_UNDEFINED")) {
+ return null;
+ }
try {
Field field = KeyEvent.class.getField(keyToken);
return KeyStroke.getKeyStroke(field.getInt(null), modifierMask);
/**
* Sets the current locale.
- *
+ *
* @param newLocale
* The new locale to use
*/
/**
* Sets the current locale.
- *
+ *
* @param newLocale
* The new locale to use
* @param notify
/**
* Returns the current locale.
- *
+ *
* @return The current locale
*/
public static Locale getLocale() {
/**
* Finds all available locales.
- *
+ *
* @return All available locales
*/
public static List<Locale> findAvailableLanguages() {
/**
* Registers the given I18nable to be updated when the language is changed.
- *
+ *
* @param i18nable
* The i18nable to register
*/
/**
* Deregisters the given I18nable to be updated when the language is
* changed.
- *
+ *
* @param i18nable
* The i18nable to register
*/
* Notifies all registered {@link I18nable}s that the language was changed.
*/
private static void notifyI18nables() {
- for (I18nable i18nable: i18nables) {
+ for (I18nable i18nable : i18nables) {
i18nable.updateI18n();
}
}