package com.marginallyclever.makelangeloRobot.converters;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
import com.marginallyclever.makelangelo.SelectInteger;
import com.marginallyclever.makelangelo.Translator;
public class Converter_Sandy_Panel extends JPanel implements PropertyChangeListener, ActionListener {
/**
*
*/
private static final long serialVersionUID = 1L;
Converter_Sandy converter;
SelectInteger sizeField;
JComboBox<String> directionChoices;
public Converter_Sandy_Panel(Converter_Sandy arg0) {
this.converter=arg0;
this.setLayout(new GridLayout(0, 1));
sizeField = new SelectInteger(converter.getScale());
this.setLayout(new GridLayout(0,1));
this.add(new JLabel(Translator.get("SandyRings")));
this.add(sizeField);
directionChoices = new JComboBox<>(converter.getDirections());
this.add(directionChoices);
directionChoices.setSelectedIndex(converter.getDirectionIndex());
sizeField.addPropertyChangeListener("value",this);
directionChoices.addActionListener(this);
}
private void validateInput() {
converter.setScale(((Number)sizeField.getValue()).intValue());
converter.setDirection(directionChoices.getSelectedIndex());
converter.reconvert();
}
@Override
public void actionPerformed(ActionEvent e) {
validateInput();
}
@Override
public void propertyChange(PropertyChangeEvent evt) {
validateInput();
}
}