01: package test;
02:
03: import java.awt.*;
04: import java.awt.event.KeyEvent;
05: import java.util.Locale;
06:
07: import javax.swing.*;
08:
09: public class TestRTL {
10: public static void main(String[] args) {
11: JFrame.setDefaultLookAndFeelDecorated(true);
12: JDialog.setDefaultLookAndFeelDecorated(true);
13: try {
14:
15: UIManager
16: .setLookAndFeel("net.beeger.squareness.SquarenessLookAndFeel");
17: } catch (ClassNotFoundException e) {
18: e.printStackTrace();
19: } catch (InstantiationException e) {
20: e.printStackTrace();
21: } catch (IllegalAccessException e) {
22: e.printStackTrace();
23: } catch (UnsupportedLookAndFeelException e) {
24: e.printStackTrace();
25: }
26:
27: Locale.setDefault(new Locale("iw"));
28:
29: JFrame frame = new JFrame("RTL Test");
30:
31: JMenu main = new JMenu("\u05e8\u05d0\u05e9\u05d9");
32: JMenuItem item = new JMenuItem("\u05d9\u05e6\u05d9\u05d0\u05d4");
33: item.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E,
34: KeyEvent.CTRL_DOWN_MASK));
35: item.setIcon(new SomeIcon());
36: main.add(item);
37: item = new JMenuItem("Test test test");
38: item.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E,
39: Event.CTRL_MASK | Event.ALT_MASK));
40: main.add(item);
41: JCheckBoxMenuItem checkBoxMenuItem = new JCheckBoxMenuItem(
42: "Test test test");
43: checkBoxMenuItem.setIcon(new SomeIcon());
44: checkBoxMenuItem.setAccelerator(KeyStroke.getKeyStroke(
45: KeyEvent.VK_J, KeyEvent.CTRL_DOWN_MASK));
46: main.add(checkBoxMenuItem);
47: main.add(new JMenu("bla"));
48:
49: JMenuBar mb = new JMenuBar();
50: mb.add(main);
51: frame.setJMenuBar(mb);
52:
53: frame
54: .applyComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
55: frame.setSize(200, 200);
56: frame.setVisible(true);
57: }
58:
59: private static class SomeIcon implements Icon {
60:
61: public void paintIcon(Component c, Graphics g, int x, int y) {
62: Color oldColor = g.getColor();
63: g.setColor(Color.GREEN);
64: g.fillRect(x, y, 7, 7);
65: g.setColor(oldColor);
66: }
67:
68: public int getIconWidth() {
69: return 7;
70: }
71:
72: public int getIconHeight() {
73: return 7;
74: }
75: }
76: }
|