package gui.processing;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JComboBox;
import javax.swing.JComponent;
import javax.swing.JTextField;
/**
* Abstract class representing a file row of inputs for a CommandComponent
*
* @author oi12mlw, oi12pjn
* @see CommandComponent
*/
@SuppressWarnings("serial")
public abstract class CommandFileRow extends JComponent {
public static final String EXTRA_WIDE = "w 140:210:240";
public static final String WIDE = "w 80:120:160";
public static final String NARROW = "w 60:80:100";
public static final String MEDIUM = "w 80:100:120";
protected abstract void addInputFields();
protected abstract void addLabels();
protected class InfileActionListener implements ActionListener {
private JTextField outFileTextField;
private String fileEnding;
public InfileActionListener(JTextField outFileTextField, String fileEnding) {
this.outFileTextField = outFileTextField;
this.fileEnding = fileEnding;
}
@Override
public void actionPerformed(ActionEvent e) {
@SuppressWarnings("rawtypes")
JComboBox inFileComboBox = (JComboBox) e.getSource();
String inFile = inFileComboBox.getSelectedItem().toString();
String inFileWithoutEnding = inFile.split("\\.")[0];
String outFile = inFileWithoutEnding + fileEnding;
outFileTextField.setText(outFile);
}
}
}