Internationalization Java

/*
Java Internationalization
By Andy Deitsch, David Czarnecki
ISBN: 0-596-00019-7
O'Reilly
*/
import java.awt.*;
import java.awt.event.*;
import java.text.*;
import java.util.*;
import javax.swing.*;
import javax.swing.border.TitledBorder;
public class SimpleExample extends JPanel {
  static JFrame frame;
  static Font smallFont;
  static Font mediumFont;
  static Font bigFont;
  private ResourceBundle resources;
  private ComponentOrientation co;
  private static void applyComponentOrientation(Component c, ComponentOrientation o) {
    c.setComponentOrientation(o);
    if (c instanceof JMenu) {
      JMenu menu = (JMenu)c;
      int ncomponents = menu.getMenuComponentCount();
      for (int i = 0 ; i < ncomponents ; ++i) {
        applyComponentOrientation( menu.getMenuComponent(i), o );
      }
    } else if (c instanceof Container) {
      Container container = (Container)c;
      int ncomponents = container.getComponentCount();
      for (int i = 0 ; i < ncomponents ; ++i) {
        applyComponentOrientation( container.getComponent(i), o );
      }
    }
  }
  private void loadResources() {
    try {
      resources = ResourceBundle.getBundle("Simple",
                        Locale.getDefault());
    } catch (MissingResourceException mre) {
      mre.printStackTrace();
      System.exit(1);
    }
  }
  private static JFrame getFrame() {
    return frame;
  }
  public SimpleExample() {
    // Load our resource bundle
    loadResources();
    JRadioButton oneButton, twoButton, threeButton;
    JButton button;
    GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
    ge.getAllFonts();
    // Setup the fonts
    smallFont = new Font("Bitstream Cyberbit", Font.PLAIN, 14);
    mediumFont = new Font("Bitstream Cyberbit", Font.PLAIN, 18);
    bigFont = new Font("Bitstream Cyberbit", Font.PLAIN, 20);
    co = ComponentOrientation.getOrientation(Locale.getDefault());
    setLayout(new BoxLayout(this,BoxLayout.Y_AXIS));
    String language = Locale.getDefault().getLanguage();
    // Create the buttons
    button = new JButton(resources.getString("Hello"));
    button.setToolTipText(resources.getString("HelloToolTip"));
    button.setFont(mediumFont);
    // Setup the buttons
    oneButton = new JRadioButton(resources.getString("One"));
    oneButton.setFont(mediumFont);
    oneButton.setMnemonic(resources.getString("OneMnemonic").charAt(0));
    oneButton.setHorizontalAlignment(JButton.TRAILING);
    oneButton.setHorizontalTextPosition(JButton.TRAILING);
    twoButton = new JRadioButton(resources.getString("Two"));
    twoButton.setFont(mediumFont);
    twoButton.setMnemonic(resources.getString("TwoMnemonic").charAt(0));
    twoButton.setHorizontalAlignment(JButton.TRAILING);
    twoButton.setHorizontalTextPosition(JButton.TRAILING);
    threeButton = new JRadioButton(resources.getString("Three"));
    threeButton.setFont(mediumFont);
    threeButton.setMnemonic(resources.getString("ThreeMnemonic").charAt(0));
    threeButton.setHorizontalAlignment(JButton.TRAILING);
    threeButton.setHorizontalTextPosition(JButton.TRAILING);
    // Group the radio buttons
    ButtonGroup group = new ButtonGroup();
    group.add(oneButton);
    group.add(twoButton);
    group.add(threeButton);
    // Register a listener for the radio buttons
    RadioListener myListener = new RadioListener();
    oneButton.addActionListener(myListener);
    twoButton.addActionListener(myListener);
    threeButton.addActionListener(myListener);
    // Setup the button panel
    JPanel buttonPanel = new JPanel();
    buttonPanel.setMaximumSize(new Dimension(Short.MAX_VALUE,100));
    TitledBorder tb = new TitledBorder(resources.getString("Numbers"));
    tb.setTitleFont(smallFont);
    tb.setTitleJustification(
        co.isLeftToRight() ? TitledBorder.LEFT : TitledBorder.RIGHT);
    buttonPanel.setBorder(tb);
    buttonPanel.setLayout(new FlowLayout());
    buttonPanel.add(button);
    buttonPanel.add(oneButton);
    buttonPanel.add(twoButton);
    buttonPanel.add(threeButton);
    add(buttonPanel, BorderLayout.CENTER);
    // Setup the date panel
    JPanel datePanel = new JPanel();
    datePanel.setMaximumSize(new Dimension(Short.MAX_VALUE,100));
    tb = new TitledBorder(resources.getString("Dates"));
    tb.setTitleFont(smallFont);
    tb.setTitleJustification(
        co.isLeftToRight() ? TitledBorder.LEFT : TitledBorder.RIGHT);
    datePanel.setBorder(tb);
    datePanel.setLayout(new BoxLayout(datePanel,BoxLayout.X_AXIS));
    datePanel.add(Box.createRigidArea(new Dimension(5,1)));
    DateFormatSymbols dfs = new DateFormatSymbols();
    JComboBox months = new JComboBox(dfs.getMonths());
    months.setFont(mediumFont);
    String weekDays[] = dfs.getWeekdays();
    JComboBox days = new JComboBox();
    days.setFont(mediumFont);
    // Determine what day is the first day of the week
    GregorianCalendar cal = new GregorianCalendar();
    int firstDayOfWeek = cal.getFirstDayOfWeek();
    int dayOfWeek;
    for (dayOfWeek = firstDayOfWeek; dayOfWeek < weekDays.length; dayOfWeek++)
      days.addItem(weekDays[dayOfWeek]);
    for (dayOfWeek = 0; dayOfWeek < firstDayOfWeek; dayOfWeek++)
      days.addItem(weekDays[dayOfWeek]);
    if (!co.isLeftToRight()) {
      datePanel.add(days);
      datePanel.add(Box.createRigidArea(new Dimension(5,1)));
      datePanel.add(months);
      datePanel.add(Box.createRigidArea(new Dimension(5,1)));
    } else {
      datePanel.add(months);
      datePanel.add(Box.createRigidArea(new Dimension(5,1)));
      datePanel.add(days);
      datePanel.add(Box.createRigidArea(new Dimension(5,1)));
    }
    add(datePanel);
    // Setup the formatting panel
    JPanel formatPanel = new JPanel();
    formatPanel.setMaximumSize(new Dimension(Short.MAX_VALUE,100));
    tb = new TitledBorder(resources.getString("Formats"));
    tb.setTitleFont(smallFont);
    tb.setTitleJustification(co.isLeftToRight() ?
          TitledBorder.LEFT : TitledBorder.RIGHT);
    formatPanel.setBorder(tb);
    formatPanel.setLayout(new BoxLayout(formatPanel,BoxLayout.X_AXIS));
    formatPanel.add(Box.createRigidArea(new Dimension(5,1)));
    double theNumber = 1234.56;
    NumberFormat nFormat = NumberFormat.getInstance();
    NumberFormat cFormat = NumberFormat.getCurrencyInstance();
    NumberFormat pFormat = NumberFormat.getPercentInstance();
    DateFormat dFormat = DateFormat.getDateInstance();
    JLabel numberLabel = new JLabel(nFormat.format(theNumber));
    numberLabel.setForeground(Color.black);
    numberLabel.setFont(bigFont);
    JLabel percentLabel = new JLabel(pFormat.format(theNumber));
    percentLabel.setForeground(Color.black);
    percentLabel.setFont(bigFont);
    JLabel currencyLabel = new JLabel(cFormat.format(theNumber));
    currencyLabel.setForeground(Color.black);
    currencyLabel.setFont(bigFont);
    JLabel dateLabel = new JLabel(dFormat.format(new Date()));
    dateLabel.setForeground(Color.black);
    dateLabel.setFont(bigFont);
    formatPanel.add(Box.createRigidArea(new Dimension(25,1)));
    if (co.isLeftToRight()) {
      formatPanel.add(numberLabel);
      formatPanel.add(Box.createRigidArea(new Dimension(25,1)));
      formatPanel.add(percentLabel);
      formatPanel.add(Box.createRigidArea(new Dimension(25,1)));
      formatPanel.add(currencyLabel);
      formatPanel.add(Box.createRigidArea(new Dimension(25,1)));
      formatPanel.add(dateLabel);
    } else {
      formatPanel.add(dateLabel);
      formatPanel.add(Box.createRigidArea(new Dimension(25,1)));
      formatPanel.add(currencyLabel);
      formatPanel.add(Box.createRigidArea(new Dimension(25,1)));
      formatPanel.add(percentLabel);
      formatPanel.add(Box.createRigidArea(new Dimension(25,1)));
      formatPanel.add(numberLabel);
    }
    formatPanel.add(Box.createRigidArea(new Dimension(25,1)));
    add(formatPanel);
  }
  public JMenuBar createMenuBar() {
    JMenuBar menuBar = new JMenuBar();
    JMenu file =
      (JMenu) menuBar.add(new JMenu(resources.getString("FileMenu")));
    file.setFont(mediumFont);
      file.setMnemonic(resources.getString("FileMenuMnemonic").charAt(0));
    JMenuItem exitItem = (JMenuItem)
      file.add(new JMenuItem(resources.getString("FileMenuExit")));
    exitItem.setFont(mediumFont);
      exitItem.setMnemonic(resources.getString("FileMenuExitMnemonic").charAt(0));
    exitItem.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
          System.exit(0);
        }
      });
    menuBar.add(new LocaleChanger());
    return menuBar;
  }
  public void reloadResources() {
    try {
      resources = ResourceBundle.getBundle("resources.Simple", Locale.getDefault());
    } catch (MissingResourceException mre) {
      mre.printStackTrace();
      System.exit(1);
    }
  }
  /**
   * An ActionListener that listens to the radio buttons
   */
  class RadioListener implements ActionListener {
    public void actionPerformed(ActionEvent e) {
      String lnfName = e.getActionCommand();
      Object[] options = { resources.getString("OK"), resources.getString("CANCEL") };
      Object[] arguments = { new Integer(3), lnfName };
      JOptionPane.showOptionDialog(null,
      MessageFormat.format(resources.getString("WarningMsg"), arguments),
          resources.getString("WarningTitle"),
          JOptionPane.DEFAULT_OPTION,
          JOptionPane.WARNING_MESSAGE,
          null, options, options[0]);
      try {
      } catch (Exception exc) {
        JRadioButton button = (JRadioButton)e.getSource();
        button.setEnabled(false);
      }
    }
  }
  /**
   * A class to change the locale for the application
   */
  class LocaleChanger extends JMenu implements ItemListener {
    public LocaleChanger() {
      super();
      setText(resources.getString("LanguageMenu"));
      setFont(mediumFont);
      setMnemonic(resources.getString("LanguageMenuMnemonic").charAt(0));
      ButtonGroup langGroup = new ButtonGroup();
      String language = Locale.getDefault().getLanguage();
      // Sort the language names according to the rules specific to each locale
      RuleBasedCollator rbc = (RuleBasedCollator)Collator.getInstance();
      ArrayList al = new ArrayList();
      al.add(resources.getString("Arabic"));
      al.add(resources.getString("Chinese"));
      al.add(resources.getString("English"));
      al.add(resources.getString("German"));
      al.add(resources.getString("Italian"));
      al.add(resources.getString("French"));
      al.add(resources.getString("Hebrew"));
      al.add(resources.getString("Japanese"));
      al.add(resources.getString("Russian"));
      Collections.sort(al, rbc);
      String langName = Locale.getDefault().getDisplayLanguage();
      for (int i = 0; i < al.size(); i++) {
        JRadioButtonMenuItem mi;
        mi = (JRadioButtonMenuItem)
          add(new JRadioButtonMenuItem((String)al.get(i)));
        mi.setFont(mediumFont);
        if (langName.equalsIgnoreCase((String)al.get(i)))
          mi.setSelected(true);
        mi.addItemListener(this);
        langGroup.add(mi);
      }
    }
    public void itemStateChanged(ItemEvent e) {
      JRadioButtonMenuItem rb = (JRadioButtonMenuItem) e.getSource();
      if (rb.isSelected()) {
        String selected = rb.getText();
        if (selected.equals(resources.getString("Arabic"))) {
          Locale.setDefault(new Locale("ar", "EG"));
          co = ComponentOrientation.RIGHT_TO_LEFT;
        } else if (selected.equals(resources.getString("English"))) {
          Locale.setDefault(Locale.US);
          co = ComponentOrientation.LEFT_TO_RIGHT;
        } else if (selected.equals(resources.getString("German"))) {
          Locale.setDefault(Locale.GERMANY);
          co = ComponentOrientation.LEFT_TO_RIGHT;
        } else if (selected.equals(resources.getString("Italian"))) {
          Locale.setDefault(Locale.ITALY);
          co = ComponentOrientation.LEFT_TO_RIGHT;
        } else if (selected.equals(resources.getString("French"))) {
          Locale.setDefault(Locale.FRANCE);
          co = ComponentOrientation.LEFT_TO_RIGHT;
        } else if (selected.equals(resources.getString("Hebrew"))) {
          Locale.setDefault(new Locale("iw", "IL"));
          co = ComponentOrientation.RIGHT_TO_LEFT;
        } else if (selected.equals(resources.getString("Chinese"))) {
          Locale.setDefault(Locale.CHINA);
          co = ComponentOrientation.LEFT_TO_RIGHT;
        } else if (selected.equals(resources.getString("Japanese"))) {
          Locale.setDefault(Locale.JAPAN);
          co = ComponentOrientation.LEFT_TO_RIGHT;
        } else if (selected.equals(resources.getString("Russian"))) {
          Locale.setDefault(new Locale("ru", "RU"));
          co = ComponentOrientation.LEFT_TO_RIGHT;
        }
      }
      SimpleExample panel = new SimpleExample();
      SimpleExample.frame.setVisible(false);
      SimpleExample.frame.getContentPane().removeAll();
      SimpleExample.frame.setJMenuBar(panel.createMenuBar());
      SimpleExample.frame.getContentPane().add("Center", panel);
      SimpleExample.frame.pack();
      SimpleExample.frame.show();
      applyComponentOrientation(SimpleExample.getFrame(), co);
    }
  }
  public static void main(String [] argv) {
    SimpleExample panel = new SimpleExample();
    frame = new JFrame("Simple Example");
    frame.addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowEvent e) {System.exit(0);}
    });
    frame.setJMenuBar(panel.createMenuBar());
    frame.getContentPane().add("Center", panel);
    frame.pack();
    frame.setVisible(true);
  }
}
//Simple_fr.properties
/*
Hello = Tiens! Mondial
HelloToolTip = Salut!
One = Une
OneMnemonic = u
Two = Deux
TwoMnemonic = d
Three = Troi
ThreeMnemonic = t
Dates = Dater
Numbers = Nombres
# Menus
FileMenu = Dossier
FileMenuMnemonic = D
FileMenuExit = Quitter
FileMenuExitMnemonic = q
LanguageMenu = Langue
LanguageMenuMnemonic = L
Arabic = Arabe
Chinese = Chinoise
English = Anglais
French = Fran\u00e7ais
German = Allemand
Hebrew = H\u00e9breu
Japanese = Japonais
Russian = Russe
WarningMsg = Faire un d\u00e9clic OK \u00e0 reprendre
WarningTitle = Sommation
OK = OK
CANCEL = Annulation
*/
//Simple_kr.properties
/*
Hello = Hello World!
HelloToolTip = Hey there!
One = One
OneMnemonic = o
Two = Two
TwoMnemonic = t
Three = Three
ThreeMnemonic = h
Dates = Dates
Numbers = Numbers
# Menus
FileMenu = File
FileMenuMnemonic = F
FileMenuExit = Exit
FileMenuExitMnemonic = x
LanguageMenu = Language
LanguageMenuMnemonic = L
Arabic = Arabic
Chinese = Chinese
English = English
French = French
German = German
Hebrew = Hebrew
Italian = Italian
Russian = Russian
Korean = \ud55c\uad74
WarningMsg = Click OK to continue
WarningTitle = Warning
OK = OK
CANCEL = CANCEL
*/
//Simple_ru.properties
/*
Hello = \u042d\u0434\u0440\u0430\u0432\u0441\u0442\u0432\u0443\u0439 \u041c\u0438\u0440
HelloToolTip = \u042d\u0434\u0440\u0430\u0432\u0441\u0442\u0432\u0443\u0439
One = \u041e\u0434\u0438\u043d
OneMnemonic = \u041e
Two = \u0414\u0432\u0430
TwoMnemonic = \u0414
Three = \u0422\u0440\u0438
ThreeMnemonic = \u0440
Dates = \u0414\u0430\u0442\u0430
Numbers = \u0427\u0438\u0441\u043b\u0430
Formats = \u0424\u043e\u0440\u043c\u0430\u0442\u044b
# Menus
FileMenu = \u0424\u0430\u0439\u043b
FileMenuMnemonic = \u0424
FileMenuExit = \u0412\u044b\u0445\u043e\u0434
FileMenuExitMnemonic = \u0412
LanguageMenu = \u042f\u0437\u044b\u043a
LanguageMenuMnemonic = \u042f
Arabic = \u0410\u0440\u0430\u0431\u0441\u043a\u0438\u0439
Chinese = \u041a\u0438\u0442\u0430\u0439\u0441\u043a\u0438\u0439
English = \u0410\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0439
French = \u0424\u0440\u0430\u043d\u0446\u0443\u0437\u0441\u043a\u0438\u0439
German = \u041d\u0435\u043c\u0435\u0446\u043a\u0438\u0439
Hebrew = \u0425\u0438\u0431\u0440\u0443
Italian = \u0418\u0442\u0430\u043b\u044c\u044f\u043d\u0441\u043a\u0438\u0439
Russian = \u0420\u0443\u0441\u0441\u043a\u0438\u0439
Japanese = \u042f\u043f\u043e\u043d\u0441\u043a\u0438\u0439
WarningMsg = Click OK to continue
WarningTitle = \u041e\u043f\u0435\u0434\u0441\u043e\u043f\u0435\u0434\u0445\u0440\u0435\u043a\u044d\u043c\u0449\u0438
OK = OK
CANCEL = CANCEL
*/
//Simple_zh.properties
/*
Hello = \u4f60\u597d
HelloToolTip = \u4f60\u597d
One = \u4e00
OneMnemonic = .
Two = \u4e8c
TwoMnemonic = .
Three = \u4e09
ThreeMnemonic = .
Dates = \u65e5\u671f
Numbers = \u6570\u76ee
# Menus
FileMenu = \u6587\u4ef6
FileMenuMnemonic = F
FileMenuExit = \u9000\u51fa
FileMenuExitMnemonic = x
LanguageMenu = \u8bed\u8a00
LanguageMenuMnemonic = L
Arabic = \u963f\u62c9\u4f2f\u8bed
Chinese = \u4e2d\u6587
English = \u82f1\u8bed
French = \u6cd5\u8bed
German = \u5fb7\u8bed
Hebrew = \u5e0c\u4f2f\u6765\u8bed
Italian = \u610f\u5927\u5229\u8bed
Japanese = \u65e5\u672c\u4eba
Russian = \u4fc4\u8bed
*/
//Simple_de.properties
/*
Hello = Guten label Welt!
HelloToolTip = Hallo!
One = Eins
OneMnemonic = e
Two = Zwei
TwoMnemonic = z
Three = Drei
ThreeMnemonic = d
Dates = Daten
Numbers = Anzahlen
# Menus
FileMenu = Datei
FileMenuMnemonic = D
FileMenuExit = Ende
FileMenuExitMnemonic = e
LanguageMenu = Sprachen
LanguageMenuMnemonic = S
Arabic = Arabisch
Chinese = Chinesisch
English = Englisch
French = Franz\u00f6sisch
German = Deutsch
Hebrew = Hebr\u00e4isch
Russian = Russisch
Japanese = Japanisch
WarningMsg = Datei {1} enth\u00e4lt {0,number,integer} Rechtschreibfehler.
WarningTitle = Warnung
OK = OK
CANCEL = CANCEL
*/
//Simple_ar.properties
/*
Hello = \u0623\u0647\u0644\u0627\u064b
HelloToolTip = \u0623\u0647\u0644\u0627\u064b
One = \u0648\u0627\u062d\u062f
OneMnemonic = \u0648
Two = \u0625\u062b\u0646\u064a\u0646
TwoMnemonic = \u0625
Three = \u062b\u0644\u0627\u062b\u0629
ThreeMnemonic = \u062b
Dates = \u062a\u0648\u0627\u0631\u064a\u062e
Numbers = \u0623\u0631\u0642\u0627\u0645
# Menus
FileMenu = \u0645\u0627\u0641
#FileMenuMnemonic = \u0645
#FileMenuExit = \u05d9\u05e6\u05d9\u05d0\u05d4
#FileMenuExitMnemonic = \u05d9
LanguageMenu = \u0644\u063a\u0629
LanguageMenuMnemonic = \u0644
Arabic = \u0627\u0644\u0639\u0631\u0628\u064a\u0629
Chinese = \u0627\u0644\u0635\u064a\u0646\u064a\u0629
English = \u0627\u0644\u0625\u0646\u062c\u0644\u064a\u0632\u064a\u0629
French = \u0627\u0644\u0641\u0631\u0646\u0633\u064a\u0629
German = \u0627\u0644\u0623\u0644\u0645\u0627\u0646\u064a\u0629
*/
//Simple.properties
/*
Hello = Hello World!
HelloToolTip = Hey there!
One = One
OneMnemonic = o
Two = Two
TwoMnemonic = t
Three = Three
ThreeMnemonic = h
Dates = Dates
Numbers = Numbers
Formats = Formats
# Menus
FileMenu = File
FileMenuMnemonic = F
FileMenuExit = Exit
FileMenuExitMnemonic = x
LanguageMenu = Language
LanguageMenuMnemonic = L
Arabic = Arabic
Chinese = Chinese
English = English
French = French
German = German
Hebrew = Hebrew
Italian = Italian
Japanese = Japanese
Korean = Korean
Russian = Russian
WarningMsg = There were {0,number,integer} spelling mistakes in file {1}
WarningTitle = Warning
OK = OK
CANCEL = CANCEL
*/
//Simple_ja.properties
/*
Hello = \u4eca\u65e5\u306f
HelloToolTip = \u4eca\u65e5\u306f
One = \u4e00
OneMnemonic = \u4e00
Two = \u4e8c
TwoMnemonic = \u4e8c
Three = \u4e09
ThreeMnemonic = \u4e09
Numbers=\u6570\u5b57
Dates=\u65e5\u6642
# Menus
FileMenu = \u30d5\u30a1\u30a4\u30eb (F)
FileMenuMnemonic = F
FileMenuExit = \u51fa\u5165\u308a\u53e3 (x)
FileMenuExitMnemonic = x
LanguageMenu = \u8a00\u8a9e (L)
LanguageMenuMnemonic = L
Arabic = \u30a2\u30e9\u30d3\u30a2\u8a9e
Chinese= \u4e2d\u56fd\u8a9e
English= \u82f1\u8a9e
French= \u30d5\u30e9\u30f3\u30b9\u8a9e
German= \u30c9\u30a4\u30c4\u8a9e
Hebrew = \u30d2\u30d6\u30e9\u30a4\u8a9e
Italian = \u4f0a\u8a9e
Japanese = \u65e5\u672c\u8a9e
Korean = \u97d3\u56fd\u8a9e
Russian = \u30ed\u30b7\u30a2\u8a9e
WarningMsg = \u30d5\u30a1\u30a4\u30eb\u306b\u306f {0,number,integer}\u30a2\u30a4\u30c6\u30e0\u304c\u3042\u308a\u307e\u3059.
WarningTitle = \u8b66\u543f
OK = \u826f\u3044
CANCEL = \u53d6\u308a\u6d88\u3057
*/
//Simple_iw.properties
/*
Hello = \u05e9\u05dc\u05d5\u05dd \u05e2\u05d5\u05dc\u05dd!
HelloToolTip = \u05e9\u05dc\u05d5\u05dd
One = \u05d0\u05d7\u05ea
OneMnemonic = \u05d0
Two = \u05e9\u05ea\u05d9\u05d9\u05dd
TwoMnemonic = \u05e9
Three = \u05e9\u05dc\u05d5\u05e9
ThreeMnemonic = \u05dc
Dates = \u05ea\u05d0\u05e8\u05d9\u05db\u05d9\u05dd
Numbers = \u05de\u05e1\u05e4\u05e8\u05d9\u05dd
# Menus
FileMenu = \u05e7\u05d5\u05d1\u05e5
FileMenuMnemonic = \u05e7
FileMenuExit = \u05d9\u05e6\u05d9\u05d0\u05d4
FileMenuExitMnemonic = \u05d9
LanguageMenu = \u05e1\u05e4\u05d5\u05ea
LanguageMenuMnemonic = \u05e1
Arabic = \u05e2\u05e8\u05d0\u05d1\u05d9\u05ea
Chinese = \u05e1\u05d9\u05e0\u05d9\u05ea
English = \u05d0\u05e0\u05d2\u05dc\u05d9\u05ea
French = \u05e6\u05e8\u05e4\u05ea\u05d9\u05ea
German = \u05d2\u05e8\u05de\u05e0\u05d9\u05ea
Hebrew = \u05e2\u05d1\u05e8\u05d9\u05ea
Russian = \u05e8\u05d5\u05e1\u05d9\u05ea
Italian = \u05d0\u05d9\u05d8\u05dc\u05e7\u05d9\u05ea
Japanese = \u05d9\u05e4\u05e0\u05d9\u05ea
*/
//Simple_it.properties
/*
Hello = Salve Mondiale!
HelloToolTip = Ciao!
One = Uno
OneMnemonic = u
Two = Due
TwoMnemonic = d
Three = Tre
ThreeMnemonic = t
Dates = Date
Numbers = Numeri
# Menus
FileMenu = Archivio
FileMenuMnemonic = A
FileMenuExit = Uscita
FileMenuExitMnemonic = u
LanguageMenu = Lingua
LanguageMenuMnemonic = L
Arabic = arabic
Chinese = cinese
English = inglese
French = francese
German = tedesco
Hebrew = ebreo
Italian = italiano
Japanese = giapponese
Russian = russo
WarningMsg = Scatto OK verso continuare
WarningTitle = di avvertimento
OK = OK
CANCEL = annullare
*/