Java Reference
In-Depth Information
Writing Internationalization Convenience Routines
Problem
You want convenience.
Solution
I've got it.
Discussion
Convenience routines are mini-implementations that can be more convenient and effective
than the general-purpose routines. Here I present the convenience routines to create buttons,
menus, etc. First, a simple one, mkMenu() :
/** Convenience routine to make up a Menu with its name L10N'd */
Menu mkMenu(ResourceBundle b, String menuName) {
String label;
try { label = b.getString(menuName+".label"); }
catch (MissingResourceException e) { label=menuName; }
return new Menu(label);
}
There are many such routines that you might need; I have consolidated several of them into
my class I18N.java , which is part of the com.darwinsys.swingui package. All methods are
static , and can be used without having to instantiate an I18N object because they do not
maintain any state across calls. The method mkButton() creates and returns a localized But-
ton , and so on. The method mkDialog is slightly misnamed because the JOptionPane meth-
od showMessageDialog() doesn't create and return a Dialog object, but it seemed more
consistent to write it as shown here:
package
package com . darwinsys . swingui ;
import
import java.util.MissingResourceException
java.util.MissingResourceException ;
import
import java.util.ResourceBundle
java.util.ResourceBundle ;
import
import javax.swing.*
javax.swing.* ;
Search WWH ::




Custom Search