analyseWriter/src/app/proprieteFichierAnalyse.java

398 lines
18 KiB
Java

package app;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import java.awt.Font;
import javax.swing.JTextField;
import MEPTL.commandes;
import MEPTL.meptl;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.DefaultComboBoxModel;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import net.miginfocom.swing.MigLayout;
import java.awt.Toolkit;
import javax.swing.ImageIcon;
public class proprieteFichierAnalyse extends JFrame {
/**
*
*/
private static final long serialVersionUID = 1L;
private JPanel contentPane;
private JTextField textFieldTitre;
private JTextField textFieldAuteur;
private JTextField textFieldMetaSujet;
private JTextField textFieldNoteFrom;
private JTextField textFieldProgression;
private JTextField textFieldDateCreation;
private JComboBox<String> comboBoxPresenceMetaSujet;
private JComboBox<String> comboBoxBaremeABC;
private JComboBox<String> comboBoxhistoriquePresent;
private JComboBox<String> comboBoxcontrole_Initial_Creator;
private JComboBox<String> comboBoxcontroleDateCreation;
private JLabel lblNewLabel_8;
private JLabel lblNewLabel_9;
private JTextField textFieldInitial_Creator;
private JLabel lblNewLabel_10;
private JLabel lblNewLabel_11;
private JTextField textFieldlink_help;
private JLabel lblNewLabel_12;
private JTextField textFieldlink_sujet;
private JButton btnAideTitre;
private JButton btnAideAuteur;
private JButton btnAideMetaSujet;
private JButton btnAidePresenceMetaSujet;
private JButton btnAideBaremeABC;
private JButton btnAideNoteFrom;
private JButton btnAideProgression;
private JButton btnAideHistoriquePresent;
private JButton btnAideDateCreation;
private JButton btnAideControleDateCreation;
private JButton btnAideInitial_Creator;
private JButton btnAidecontrole_Initial_Creator;
private JButton btnVoirBaremeABC;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
proprieteFichierAnalyse frame = new proprieteFichierAnalyse();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public proprieteFichierAnalyse() {
setIconImage(Toolkit.getDefaultToolkit().getImage(proprieteFichierAnalyse.class.getResource("/resources/evalwriter.ico")));
setBounds(0, 0, 630, 639);
setResizable(false);
setTitle("Propriété du fichier d'analyse");
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
int screenWidth = (int) java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getMaximumWindowBounds().getWidth();
int screenHeight = (int) java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getMaximumWindowBounds().getHeight();
setLocation(( (screenWidth) - getWidth()) / 2, (screenHeight - getHeight()) / 2);
contentPane = new JPanel();
contentPane.setBorder(null);
setContentPane(contentPane);
contentPane.setLayout(new MigLayout("", "[260px][260px][10,grow 20]", "[18px][18px][18px][30px][18px][18px][18px][30px][45px][18px][18px][18px][][][][18px:24px:48px,grow]"));
JLabel lblNewLabel = new JLabel("Titre de l'exercice");
lblNewLabel.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNewLabel, "cell 0 0,alignx left,aligny center");
textFieldTitre = new JTextField();
textFieldTitre.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(textFieldTitre, "cell 1 0,grow");
textFieldTitre.setColumns(10);
if(commandes.sujet.getAttributs().get("titre")!=null){
textFieldTitre.setText(commandes.sujet.getAttributs().get("titre"));
}
btnAideTitre = new JButton("");
btnAideTitre.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/whatmini.png")));
contentPane.add(btnAideTitre, "cell 2 0");
JLabel lblNewLabel_1 = new JLabel("Auteur");
lblNewLabel_1.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNewLabel_1, "cell 0 1,alignx left,aligny center");
textFieldAuteur = new JTextField();
textFieldAuteur.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(textFieldAuteur, "cell 1 1,grow");
textFieldAuteur.setColumns(10);
if(commandes.sujet.getAttributs().get("auteur")!=null){
textFieldAuteur.setText(commandes.sujet.getAttributs().get("auteur"));
}
btnAideAuteur = new JButton("");
btnAideAuteur.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/whatmini.png")));
contentPane.add(btnAideAuteur, "cell 2 1");
JLabel lblNewLabel_2 = new JLabel("metaSujet");
lblNewLabel_2.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNewLabel_2, "cell 0 2,alignx left,aligny center");
textFieldMetaSujet = new JTextField();
textFieldMetaSujet.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(textFieldMetaSujet, "cell 1 2,grow");
textFieldMetaSujet.setColumns(10);
if(commandes.sujet.getAttributs().get("metaSujet")!=null){
textFieldMetaSujet.setText(commandes.sujet.getAttributs().get("metaSujet"));
}
btnAideMetaSujet = new JButton("");
btnAideMetaSujet.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/whatmini.png")));
contentPane.add(btnAideMetaSujet, "cell 2 2");
JLabel lblNewLabel_3 = new JLabel("<HTML><p>Propriété personnalisé obligatoire dans les <br>fichiers des étudiants.</p></HTML>" );
lblNewLabel_3.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNewLabel_3, "cell 0 3,alignx left,aligny center");
comboBoxPresenceMetaSujet = new JComboBox<String>();
comboBoxPresenceMetaSujet.setFont(new Font("Tahoma", Font.BOLD, 12));
comboBoxPresenceMetaSujet.setModel(new DefaultComboBoxModel<String>(new String[] {"false", "true"}));
contentPane.add(comboBoxPresenceMetaSujet, "cell 1 3,growx,aligny top");
if(commandes.sujet.getAttributs().get("presenceMetaSujet")!=null){
comboBoxPresenceMetaSujet.setSelectedItem(commandes.sujet.getAttributs().get("presenceMetaSujet").toLowerCase());
}
btnAidePresenceMetaSujet = new JButton("");
btnAidePresenceMetaSujet.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/whatmini.png")));
contentPane.add(btnAidePresenceMetaSujet, "cell 2 3");
JLabel lblNewLabel_4 = new JLabel("Barème alphabétique ABCDE");
lblNewLabel_4.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNewLabel_4, "cell 0 4,alignx left");
comboBoxBaremeABC = new JComboBox<String>();
comboBoxBaremeABC.setModel(new DefaultComboBoxModel<String>(new String[] {"false", "true"}));
comboBoxBaremeABC.setFont(new Font("Tahoma", Font.BOLD, 12));
contentPane.add(comboBoxBaremeABC, "cell 1 4,growx");
if(commandes.sujet.getAttributs().get("baremeABC")!=null){
comboBoxBaremeABC.setSelectedItem(commandes.sujet.getAttributs().get("baremeABC").toLowerCase());
}
btnAideBaremeABC = new JButton("");
btnAideBaremeABC.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/whatmini.png")));
contentPane.add(btnAideBaremeABC, "flowx,cell 2 4");
JLabel lblNoteFrom = new JLabel("Barème");
lblNoteFrom.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNoteFrom, "cell 0 5,alignx left");
textFieldNoteFrom = new JTextField();
textFieldNoteFrom.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(textFieldNoteFrom, "cell 1 5,growx");
textFieldNoteFrom.setColumns(10);
if(commandes.sujet.getAttributs().get("notefrom")!=null){
textFieldNoteFrom.setText(commandes.sujet.getAttributs().get("notefrom"));
}
btnAideNoteFrom = new JButton("");
btnAideNoteFrom.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/whatmini.png")));
contentPane.add(btnAideNoteFrom, "flowx,cell 2 5");
JLabel lblNewLabel_5 = new JLabel("Coef. de progression");
lblNewLabel_5.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNewLabel_5, "cell 0 6,alignx left");
textFieldProgression = new JTextField();
contentPane.add(textFieldProgression, "cell 1 6,growx");
textFieldProgression.setColumns(10);
if(commandes.sujet.getAttributs().get("progression")!=null){
textFieldProgression.setText(commandes.sujet.getAttributs().get("progression"));
}
btnAideProgression = new JButton("");
btnAideProgression.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/whatmini.png")));
contentPane.add(btnAideProgression, "cell 2 6");
JLabel lblNewLabel_6 = new JLabel("<html>Le suivi des modifications activé dans les <br>fichiers des étudiants.</html>");
lblNewLabel_6.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNewLabel_6, "cell 0 7,alignx left");
comboBoxhistoriquePresent = new JComboBox<String>();
comboBoxhistoriquePresent.setModel(new DefaultComboBoxModel<String>(new String[] {"false", "true"}));
comboBoxhistoriquePresent.setFont(new Font("Tahoma", Font.BOLD, 12));
contentPane.add(comboBoxhistoriquePresent, "cell 1 7,growx,aligny top");
if(commandes.sujet.getAttributs().get("historiquePresent")!=null){
comboBoxhistoriquePresent.setSelectedItem(commandes.sujet.getAttributs().get("historiquePresent").toLowerCase());
}
btnAideHistoriquePresent = new JButton("");
btnAideHistoriquePresent.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/whatmini.png")));
contentPane.add(btnAideHistoriquePresent, "cell 2 7");
JLabel lblNewLabel_7 = new JLabel("<html>Date de création du fichier transmis <br>aux étudiants.</html>");
lblNewLabel_7.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNewLabel_7, "cell 0 8,alignx left");
textFieldDateCreation = new JTextField();
textFieldDateCreation.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(textFieldDateCreation, "cell 1 8,growx");
textFieldDateCreation.setColumns(10);
if(commandes.sujet.getAttributs().get("creationDate")!=null){
textFieldDateCreation.setText(commandes.sujet.getAttributs().get("creationDate"));
}
btnAideDateCreation = new JButton("");
btnAideDateCreation.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/whatmini.png")));
contentPane.add(btnAideDateCreation, "cell 2 8");
lblNewLabel_8 = new JLabel("<html>La date de création dans les fichers des étudiants doit être le même que celui du fichier fourni.</html>");
lblNewLabel_8.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNewLabel_8, "cell 0 9,alignx trailing");
comboBoxcontroleDateCreation = new JComboBox<String>();
comboBoxcontroleDateCreation.setModel(new DefaultComboBoxModel<String>(new String[] {"false", "true"}));
comboBoxcontroleDateCreation.setFont(new Font("Tahoma", Font.BOLD, 12));
contentPane.add(comboBoxcontroleDateCreation, "cell 1 9,growx,aligny top");
if(commandes.sujet.getAttributs().get("controleDateCreation")!=null){
comboBoxcontroleDateCreation.setSelectedItem(commandes.sujet.getAttributs().get("controleDateCreation").toLowerCase());
}
btnAideControleDateCreation = new JButton("");
btnAideControleDateCreation.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/whatmini.png")));
contentPane.add(btnAideControleDateCreation, "cell 2 9,aligny top");
lblNewLabel_9 = new JLabel("Auteur du fichier fourni aux étudiants.");
lblNewLabel_9.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNewLabel_9, "cell 0 10,alignx left");
textFieldInitial_Creator = new JTextField();
textFieldInitial_Creator.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(textFieldInitial_Creator, "cell 1 10,growx");
textFieldInitial_Creator.setColumns(10);
if(commandes.sujet.getAttributs().get("Initial_Creator")!=null){
textFieldInitial_Creator.setText(commandes.sujet.getAttributs().get("Initial_Creator"));
}
btnAideInitial_Creator = new JButton("");
btnAideInitial_Creator.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/whatmini.png")));
contentPane.add(btnAideInitial_Creator, "cell 2 10");
lblNewLabel_10 = new JLabel("<html>L'auteur des fichiers des étudiants doit être celui du fichier fourni.</html>");
lblNewLabel_10.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNewLabel_10, "cell 0 11,alignx trailing");
comboBoxcontrole_Initial_Creator = new JComboBox<String>();
comboBoxcontrole_Initial_Creator.setModel(new DefaultComboBoxModel<String>(new String[] {"false", "true"}));
comboBoxcontrole_Initial_Creator.setFont(new Font("Tahoma", Font.BOLD, 12));
contentPane.add(comboBoxcontrole_Initial_Creator, "cell 1 11,growx,aligny top");
if(commandes.sujet.getAttributs().get("controle_Initial_Creator")!=null){
comboBoxcontrole_Initial_Creator.setSelectedItem(commandes.sujet.getAttributs().get("controle_Initial_Creator").toLowerCase());
}
btnAidecontrole_Initial_Creator = new JButton("");
btnAidecontrole_Initial_Creator.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/whatmini.png")));
contentPane.add(btnAidecontrole_Initial_Creator, "cell 2 11");
lblNewLabel_11 = new JLabel("Lien URL de l'aide");
lblNewLabel_11.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNewLabel_11, "cell 0 12,alignx left");
textFieldlink_help = new JTextField();
textFieldlink_help.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(textFieldlink_help, "cell 1 12,growx");
textFieldlink_help.setColumns(10);
if(commandes.sujet.getAttributs().get("link_help")!=null){
textFieldlink_help.setText(commandes.sujet.getAttributs().get("link_help"));
}
lblNewLabel_12 = new JLabel("Lien URL du sujet");
lblNewLabel_12.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(lblNewLabel_12, "cell 0 13,alignx left");
textFieldlink_sujet = new JTextField();
contentPane.add(textFieldlink_sujet, "cell 1 13,growx");
textFieldlink_sujet.setColumns(10);
if(commandes.sujet.getAttributs().get("link_sujet")!=null){
textFieldlink_sujet.setText(commandes.sujet.getAttributs().get("link_sujet"));
}
JButton btnNewButton = new JButton("Valide");
btnNewButton.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(btnNewButton, "cell 1 15,grow");
btnVoirBaremeABC = new JButton("");
btnVoirBaremeABC.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
double progression = Double.valueOf(textFieldProgression.getText());
double intervalle1 = Math.pow(0.2, 1/progression) ;
double intervalle2 = Math.pow(0.4, 1/progression) ;
double intervalle3 = Math.pow(0.6, 1/progression) ;
double intervalle4 = Math.pow(0.8, 1/progression) ;
String message = "0% → E → " + Math.round(intervalle1*100) + "% → D → " + Math.round(intervalle2*100) + "% → C → " +
Math.round(intervalle3*100) + "% → B → " + Math.round(intervalle4*100) + "% → A → 100%";
JOptionPane.showMessageDialog(null, message);
}
});
btnVoirBaremeABC.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/voirmini.png")));
contentPane.add(btnVoirBaremeABC, "cell 2 4");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
commandes.sujet.getAttributs().put("titre", textFieldTitre.getText() );
commandes.sujet.getAttributs().put("auteur", textFieldAuteur.getText() );
commandes.sujet.getAttributs().put("metaSujet", textFieldMetaSujet.getText() );
commandes.sujet.getAttributs().put("presenceMetaSujet", comboBoxPresenceMetaSujet.getSelectedItem().toString() );
commandes.sujet.getAttributs().put("baremeABC", comboBoxBaremeABC.getSelectedItem().toString() );
commandes.sujet.getAttributs().put("notefrom", textFieldNoteFrom.getText() );
commandes.sujet.getAttributs().put("progression", textFieldProgression.getText() );
commandes.sujet.getAttributs().put("historiquePresent", comboBoxhistoriquePresent.getSelectedItem().toString() );
commandes.sujet.getAttributs().put("creationDate", textFieldDateCreation.getText() );
commandes.sujet.getAttributs().put("controleDateCreation", comboBoxcontroleDateCreation.getSelectedItem().toString() );
commandes.sujet.getAttributs().put("Initial_Creator", textFieldInitial_Creator.getText() );
commandes.sujet.getAttributs().put("controle_Initial_Creator", comboBoxcontrole_Initial_Creator.getSelectedItem().toString() );
commandes.sujet.getAttributs().put("link_help", textFieldlink_help.getText() );
commandes.sujet.getAttributs().put("link_sujet", textFieldlink_sujet.getText() );
meptl.chargementParametresFichierAnalyse();
dispose();
}
});
comboBoxBaremeABC.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String resultat = (String) comboBoxBaremeABC.getSelectedItem();
if(resultat.equals("true")) {
lblNoteFrom.setEnabled(false);
textFieldNoteFrom.setEnabled(false);
textFieldNoteFrom.setEditable(false);
}else {
lblNoteFrom.setEnabled(true);
textFieldNoteFrom.setEnabled(true);
textFieldNoteFrom.setEditable(true);
}
}
});
Refresh();
this.setVisible(true);
}
private void Refresh() {
if(comboBoxBaremeABC.getSelectedItem().equals("true")) {
textFieldNoteFrom.setEditable(false);
textFieldNoteFrom.setEditable(false);
}else {
textFieldNoteFrom.setEditable(true);
textFieldNoteFrom.setEditable(true);
}
}
}