1 package yukihane.inqubus.gui;
3 import java.awt.Component;
4 import java.awt.event.ActionEvent;
5 import java.awt.event.ActionListener;
7 import javax.swing.JFileChooser;
8 import javax.swing.JTextField;
14 public class FileChooseAction implements ActionListener {
16 private final Component parent;
17 private final int fileSelectionMode;
18 private final JTextField textField;
20 public FileChooseAction(Component parent, int fileSelectionMode, JTextField field) {
22 this.fileSelectionMode = fileSelectionMode;
23 this.textField = field;
27 public void actionPerformed(ActionEvent e) {
29 final JFileChooser fc = new JFileChooser();
30 fc.setFileSelectionMode(fileSelectionMode);
31 fc.setCurrentDirectory(new File(textField.getText()));
32 final int res = fc.showOpenDialog(parent);
33 if (res == JFileChooser.APPROVE_OPTION) {
34 textField.setText(fc.getSelectedFile().getPath());