Localization is facilitated by the use of string tables (see STRINGTABLE}.
One method of accomplishing localization is to create a base string table that contains non-translatable strings. Give this string table a file name consisting of a base file name followed by .properties. Then for each language, create a string table file which uses the base file name, followed by _xx.properties where xx is replaced by the two letter language code for the language the string table is used for.
For example:
FramesResources.properties contains non-translatable strings such as background colors. It also contains default strings to be used if a language is specified for which no string table exists.
FramesResources_en.properties contains the strings that are used for English.
FramesResources_fr.properties contains the strings that are used for French.
In the build process, you may want to concatenate the contents of FramesResources_en.properties to FramesResources.properties. This makes English the default language, which is useful in the case where a non-existent language code is specified.