add src files decompiled via jad
[rsa2client.git] / src / mcsClient / Row.java
1 // Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
2 // Jad home page: http://www.kpdus.com/jad.html
3 // Decompiler options: packimports(3) fieldsfirst nonlb space 
4
5 package mcsClient;
6
7 import java.awt.FlowLayout;
8 import java.awt.Font;
9 import java.awt.event.*;
10 import javax.swing.*;
11
12 // Referenced classes of package mcsClient:
13 //            KeyMap, Options
14
15 final class Row extends JPanel
16     implements KeyListener, ActionListener {
17
18     protected JTextField keyField[];
19     protected int usageCode[];
20     protected JButton clear;
21     protected Options options;
22     private long pressTime;
23
24     public Row(int i, Options options1) {
25         clear = new JButton("Clear");
26         pressTime = 0L;
27         options = options1;
28         setBackground(options.getBackground());
29         setLayout(new FlowLayout(0, 8, 8));
30         javax.swing.border.TitledBorder titledborder = BorderFactory.createTitledBorder("Button " + i);
31         setBorder(titledborder);
32         setValid(false);
33         keyField = new JTextField[4];
34         usageCode = new int[4];
35         for (int j = 0; j < 4; j++) {
36             keyField[j] = new JTextField("", 8);
37             keyField[j].addKeyListener(this);
38             keyField[j].setFocusTraversalKeysEnabled(false);
39             add(keyField[j]);
40             if (j < 3)
41                 add(new JLabel("+"));
42         }
43
44         clear.setFont(new Font("Sans Serif", 0, 11));
45         clear.setToolTipText("Clear all entries for this button.");
46         clear.addKeyListener(this);
47         clear.addActionListener(this);
48         add(clear);
49     }
50
51     public void actionPerformed(ActionEvent actionevent) {
52         clearButtonClicked();
53     }
54
55     public void keyPressed(KeyEvent keyevent) {
56         if (keyevent.getSource() == clear && keyevent.getKeyCode() == 10) {
57             clearButtonClicked();
58             return;
59         }
60         if (keyevent.getKeyCode() == 0)
61             return;
62         if (pressTime == 0L)
63             pressTime = keyevent.getWhen();
64         int i = -1;
65         for (int j = 0; j < 4; j++) {
66             if (keyevent.getSource() != keyField[j])
67                 continue;
68             i = j;
69             break;
70         }
71
72         if (keyevent.getKeyCode() == 80 && keyevent.getWhen() - pressTime > 3000L)
73             keyevent = new KeyEvent(this, 1, System.currentTimeMillis(), 0, 154, ' ', 1);
74         KeyEvent _tmp = keyevent;
75         String s = KeyEvent.getKeyText(keyevent.getKeyCode());
76         if (keyevent.getKeyLocation() == 2)
77             s = s + " (Left)";
78         else
79         if (keyevent.getKeyLocation() == 3)
80             s = s + " (Right)";
81         if (s.equals("Delete"))
82             s = "Del";
83         setValid(true);
84         KeyMap keymap = new KeyMap(0);
85         if (!s.equalsIgnoreCase(keyField[i].getText())) {
86             usageCode[i] = keymap.getKey(keyevent);
87             keyField[i].setText("");
88             keyField[i].setText(s);
89         }
90         keyevent.consume();
91     }
92
93     public void keyTyped(KeyEvent keyevent) {
94         keyevent.consume();
95     }
96
97     public void keyReleased(KeyEvent keyevent) {
98         pressTime = 0L;
99         int i = -1;
100         for (int j = 0; j < 4; j++) {
101             if (keyevent.getSource() != keyField[j])
102                 continue;
103             i = j;
104             break;
105         }
106
107         if (i < 3)
108             keyField[i + 1].requestFocus();
109         else
110             options.getFocusOnSaveButton();
111         keyevent.consume();
112     }
113
114     public boolean isValid() {
115         return clear.isEnabled();
116     }
117
118     public void setValid(boolean flag) {
119         clear.setEnabled(flag);
120     }
121
122     private void clearButtonClicked() {
123         for (int i = 0; i < 4; i++)
124             keyField[i].setText("");
125
126         setValid(false);
127     }
128 }