home *** CD-ROM | disk | FTP | other *** search
- import java.awt.Choice;
- import java.awt.Component;
- import java.awt.Container;
- import java.awt.Dimension;
- import java.awt.Event;
- import java.awt.Graphics;
- import java.awt.GridBagConstraints;
- import java.awt.GridBagLayout;
- import java.awt.Insets;
- import java.awt.Label;
- import java.awt.Panel;
- import java.awt.Scrollbar;
- import java.awt.TextField;
-
- class ConversionPanel extends Panel {
- TextField textField;
- Scrollbar slider;
- Choice unitChooser;
- int min;
- int max = 10000;
- Converter controller;
- Unit[] units;
-
- ConversionPanel(Converter var1, String var2, Unit[] var3) {
- GridBagConstraints var4 = new GridBagConstraints();
- GridBagLayout var5 = new GridBagLayout();
- ((Container)this).setLayout(var5);
- this.controller = var1;
- this.units = var3;
- var4.fill = 2;
- Label var6 = new Label(var2, 1);
- var4.gridwidth = 0;
- var5.setConstraints(var6, var4);
- ((Container)this).add(var6);
- this.textField = new TextField("0", 10);
- var4.weightx = (double)1.0F;
- var4.gridwidth = 1;
- var5.setConstraints(this.textField, var4);
- ((Container)this).add(this.textField);
- this.unitChooser = new Choice();
-
- for(int var7 = 0; var7 < this.units.length; ++var7) {
- this.unitChooser.addItem(this.units[var7].description);
- }
-
- var4.weightx = (double)0.0F;
- var4.gridwidth = 0;
- var5.setConstraints(this.unitChooser, var4);
- ((Container)this).add(this.unitChooser);
- this.slider = new Scrollbar(0, 0, 100, this.min, this.max);
- var4.gridwidth = 1;
- var5.setConstraints(this.slider, var4);
- ((Container)this).add(this.slider);
- }
-
- double getMultiplier() {
- int var1 = this.unitChooser.getSelectedIndex();
- return this.units[var1].multiplier;
- }
-
- public void paint(Graphics var1) {
- Dimension var2 = ((Component)this).size();
- var1.drawRect(0, 0, var2.width - 1, var2.height - 1);
- }
-
- public Insets insets() {
- return new Insets(5, 5, 5, 8);
- }
-
- double getValue() {
- double var1;
- try {
- var1 = Double.valueOf(this.textField.getText());
- } catch (NumberFormatException var3) {
- var1 = (double)0.0F;
- }
-
- return var1;
- }
-
- public boolean action(Event var1, Object var2) {
- if (var1.target instanceof TextField) {
- this.setSliderValue(this.getValue());
- this.controller.convert(this);
- return true;
- } else if (var1.target instanceof Choice) {
- this.controller.convert(this);
- return true;
- } else {
- return false;
- }
- }
-
- public boolean handleEvent(Event var1) {
- if (var1.target instanceof Scrollbar) {
- this.textField.setText(String.valueOf(this.slider.getValue()));
- this.controller.convert(this);
- }
-
- return super.handleEvent(var1);
- }
-
- void setValue(double var1) {
- this.setSliderValue(var1);
- this.textField.setText(String.valueOf(var1));
- }
-
- void setSliderValue(double var1) {
- int var3 = (int)var1;
- if (var3 > this.max) {
- var3 = this.max;
- }
-
- if (var3 < this.min) {
- var3 = this.min;
- }
-
- this.slider.setValue(var3);
- }
- }
-