/*
* 1.1+Swing version.
*/
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.text.NumberFormat;
public class _113 extends JPanel {
_22 _114;
JComboBox _115;
JSlider _116;
_32 _117;
_89 _118;
_16[] _119;
String _120;
final static boolean _121 = false;
final static boolean _122 = false;
final static int _123 = 10000;
_113(_89 _124, String _125, _16[] _126, _32 _127) {
if (_122) {
setBackground(Color.cyan);
}
setBorder(BorderFactory.createCompoundBorder(
BorderFactory.createTitledBorder(_125),
BorderFactory.createEmptyBorder(5, 5, 5, 5)));
//Save arguments in instance variables.
_118 = _124;
_119 = _126;
_120 = _125;
_117 = _127;
//Add the text field. It initially displays "0" and needs
//to be at least 10 columns wide.
NumberFormat _128 = NumberFormat.getNumberInstance();
_128.setMaximumFractionDigits(2);
_114 = new _22(0, 10, _128);
_114._30(_117._48());
_114.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent _129) {
_117._49(_114._27());
}
});
//Add the combo box.
_115 = new JComboBox();
for (int _130 = 0; _130 < _119.length; _130++) { //Populate it.
_115.addItem(_119[_130]._17);
}
_115.setSelectedIndex(0);
_117._43(_119[0]._18);
_115.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent _131) {
//Set new maximums for the sliders.
int _132 = _115.getSelectedIndex();
_117._43(_119[_132]._18);
_118._99(false);
}
});
//Add the slider.
_116 = new JSlider(_117);
_117.addChangeListener(new ChangeListener(){
public void stateChanged(ChangeEvent _133) {
_114._30(_117._48());
}
});
//Make the textfield/slider group a fixed size.
JPanel _134 = new JPanel(){
public Dimension getMinimumSize() {
return getPreferredSize();
}
public Dimension getPreferredSize() {
return new Dimension(150,
super.getPreferredSize().height);
}
public Dimension getMaximumSize() {
return getPreferredSize();
}
};
if (_122) {
_134.setBackground(Color.blue);
}
_134.setBorder(BorderFactory.createEmptyBorder(
0, 0, 0, 5));
_134.setLayout(new BoxLayout(_134,
BoxLayout.Y_AXIS));
_134.add(_114);
_134.add(_116);
setLayout(new BoxLayout(this, BoxLayout.X_AXIS));
add(_134);
add(_115);
_134.setAlignmentY(TOP_ALIGNMENT);
_115.setAlignmentY(TOP_ALIGNMENT);
}
/**
* Returns the multiplier (units/meter) for the currently
* selected unit of measurement.
*/
public double _135() {
return _117._42();
}
public double _136() {
return _117._48();
}
}