package net.codjo.segmentation.gui.exportParam;
import net.codjo.gui.toolkit.path.DirectoryPathField;
import net.codjo.gui.toolkit.util.ErrorDialog;
import net.codjo.gui.toolkit.waiting.WaitingPanel;
import net.codjo.segmentation.gui.ImportExportProgresListener;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import javax.swing.JButton;
import javax.swing.JInternalFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
public class ExportParametersGui extends JInternalFrame
implements ImportExportProgresListener {
private JButton exportButton;
private JButton cancelButton;
private JPanel mainPanel;
private JRadioButton classificationRadio;
private JRadioButton sleeveRadio;
private DirectoryPathField directoryPathField;
private WaitingPanel waitingPanel = new WaitingPanel();
super("Export de paramétrage", true, true, true, true);
initNames();
initListeners();
directoryPathField.getDirectoryNameField().setEditable(true);
setContentPane(mainPanel);
setGlassPane(waitingPanel);
setPreferredSize(new Dimension(800, 150));
}
getWaitingPanel().stopAnimation();
}
;
}
getWaitingPanel().stopAnimation();
ErrorDialog.show(this, errorMessage, errorMessage);
}
directoryPathField.setName("AxeFileName");
cancelButton.setName("cancelButton");
exportButton.setName("exportButton");
classificationRadio.setName("classificationRadio");
sleeveRadio.setName("sleeveRadio");
}
cancelButton.addActionListener(new ActionListener() {
dispose();
}
});
directoryPathField.getDirectoryNameField().getDocument()
.addDocumentListener(new ValidDirectoryListener());
}
exportButton.addActionListener(listener);
}
return directoryPathField.getDirectory();
}
return classificationRadio.isSelected();
}
return waitingPanel;
}
setEnabledButton();
}
setEnabledButton();
}
setEnabledButton();
}
JTextField directoryField = directoryPathField.getDirectoryNameField();
File directory = directoryPathField.getDirectory();
if (directory == null) {
exportButton.setEnabled(false);
return;
}
File parentFile = directory.getParentFile();
if (parentFile == null) {
directoryField.setForeground(Color.red);
exportButton.setEnabled(false);
return;
}
boolean mustEnable = parentFile.isDirectory()
&& parentFile.exists()
&& directory.getName().endsWith(".txt");
directoryField.setForeground(mustEnable ? Color.black : Color.red);
exportButton.setEnabled(mustEnable);
}
}
}