KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > jimm > datavision > gui > parameter > RangeStringInq


1 package jimm.datavision.gui.parameter;
2 import jimm.datavision.Parameter;
3 import jimm.util.I18N;
4 import javax.swing.*;
5
6 /**
7  * A range string inquisitor knows how to display and control the widgets
8  * needed to ask a user for two string parameter values.
9  *
10  * @author Jim Menard, <a HREF="mailto:jimm@io.com">jimm@io.com</a>
11  */

12 class RangeStringInq extends Inquisitor {
13
14 protected JTextField rangeFromField;
15 protected JTextField rangeToField;
16
17 RangeStringInq(Parameter param) {
18     super(param);
19
20     // Build GUI
21
// panel.setLayout(new BorderLayout());
22

23     // Labels
24
Box labelBox = Box.createVerticalBox();
25
26     Box box = Box.createHorizontalBox();
27     box.add(Box.createHorizontalGlue());
28     box.add(new JLabel(I18N.get("GUI.from")));
29     labelBox.add(box);
30
31     box = Box.createHorizontalBox();
32     box.add(Box.createHorizontalGlue());
33     box.add(new JLabel(I18N.get("GUI.to")));
34     labelBox.add(box);
35
36     // Edit values
37
Box fieldBox = Box.createVerticalBox();
38
39     // From and to
40
fieldBox.add(rangeFromField = new JTextField(TEXT_FIELD_COLS));
41     fieldBox.add(rangeToField = new JTextField(TEXT_FIELD_COLS));
42
43     // Horizontal box
44
Box innerBox = Box.createHorizontalBox();
45     panel.add(innerBox);
46     innerBox.add(labelBox);
47     innerBox.add(Box.createHorizontalStrut(8));
48     innerBox.add(fieldBox);
49
50     // Copy default values into "real" values
51
parameter.setValue(0, parameter.getDefaultValue(0));
52     parameter.setValue(1, parameter.getDefaultValue(1));
53 }
54
55 void copyGUIIntoParam() {
56     // setValue translates the string to the appropriate numeric type
57
// (integer or float).
58
parameter.setValue(0, rangeFromField.getText());
59     parameter.setValue(1, rangeToField.getText());
60 }
61
62 void copyParamIntoGUI() {
63     rangeFromField.setText(parameter.getValue(0).toString());
64     rangeToField.setText(parameter.getValue(1).toString());
65 }
66
67 }
68
Popular Tags