analyseWriter/src/fenetres/proprieteFichierAnalyse.java
2022-07-07 15:48:56 +02:00

613 lines
28 KiB
Java

package fenetres;
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 calcul.calculNotesProgression;
import calcul.formatDateWriter;
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 final 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;
private JButton btnVoirBaremeNumeric;
private static proprieteFichierAnalyse instance;
/**
* 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.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showInternalMessageDialog(null, "<html>Le titre de l'exercice apparaît<br>dans les feedbacks des étudiants.</html>");
}
});
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.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showInternalMessageDialog(null, "<html>L'auteur de l'exercice apparaît<br>dans les feedbacks des étudiants.</html>");
}
});
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.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showInternalMessageDialog(null, "<html>La propriété personnalisé Sujet apparaît dans les feedbacks.<br>"
+ "Elle est placée sous la note des étudiants.<br>"
+ "Si la donnée personnalisé Sujet dans les fichiers des étudiants est présente,<br>"
+ "alors il peut y avoir comparaison avec cet valeur (voir la valeur logique suivante).</html>");
}
});
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é Sujet obligatoire<br>dans les 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.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showInternalMessageDialog(null, "<html>Si la donnée personnalisé Sujet dans les fichiers des étudiants ne correspond pas,<br>"
+ "à la valeur au-dessus alors le fichier n'est pas le fichier du sujet.<br>"
+ "La note de l'étudiant sera nulle."
+ "<br><br>L'étudiant doit utiliser le fichier remis par l'enseignant.<br>"
+ "Cette technique peut être utilisée durant les contrôles.<br></html>");
}
});
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.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "<html>Permet d'utiliser une notation alphabétique à 5 niveaux (de A à E).<br>"
+ "Si le coefficient de progression est de 1 alors la largeur des intervalles est de 20%.");
}
});
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.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "<html>La notation par défaut est numérique.<br>"
+ "La note maximale est par défaut de 20 points.<br>"
+ "La note maximale doit être une valeur supérieur strictement 0 point.<br><br>"
+ "Si le coefficient de progression est de 1 alors un exercice à 50% correct<br>"
+ "aura la note (maximale/2).");
}
});
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.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "<html>Le coefficient de progression permet de régler la difficulté de l'exercice.<br><br>"
+ "Le coefficient de progression d'affiche dans les feedbacks des étudiants.<br><br>"
+ "Le coefficient de progression doit être compris entre ]0 et 10[.<br>"
+ " Un coef. inférieur à 1 signifie qu'il est facile d'atteindre la note maximale<br>"
+ " Un coef. supérieur à 1 signifie qu'il est difficile d'atteindre la note maximale.");
}
});
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.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showInternalMessageDialog(null, "<html>Si VRAI alors le suivi des modifications doit être activé dans les fichiers des étudiants.<br>"
+ "Si ce n'est pas le cas alors l'étudiant aura une note nulle.<br><br>"
+ "L'étudiant doit utiliser le fichier remis par l'enseignant.<br>"
+ "L'enseignant aura activé le suivi des modifications et protégé le suivi par un mot de passe.<br><br>"
+ "Cette technique peut être utilisée durant les contrôles.<br>"
+ "Elle permettra de rechercher les fichiers échangés entre les étudiants en comparant les modifications.</html>");
}
});
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.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showInternalMessageDialog(null, "<html>Ne modifier pas cette date.<br>"
+ "Sauf, si vous avez remis aux étudiants un nouveau fichier.</html>");
}
});
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.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showInternalMessageDialog(null, "<html>Si VRAI alors la date de création du fichier de l'étudiant doit être identique à celle-ci.<br>"
+ "Si ce n'est pas le cas alors l'étudiant aura une note nulle.<br><br>"
+ "L'étudiant doit utiliser le fichier remis par l'enseignant.<br><br>"
+ "Cette technique peut être utilisée durant les contrôles.<br>"
+ "Elle permettra de rechercher les fichiers réïnitialisés pour effacer l'historique.</html>");
}
});
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.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showInternalMessageDialog(null, "<html>Le premier auteur du fichier (créateur).<br>"
+ "Ne modifier pas, sauf si vous avez fourni un nouveau fichier aux étudiants avec un autre créateur.<html>");
}
});
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.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showInternalMessageDialog(null, "<html>Si vrai alors le créateur du fichier des étudiants doit correspondre avec cet auteur.<br>"
+ "Si ce n'est pas le cas, l'étudiant aura une note nulle.<br><br>"
+ "Cette technique peut être utilisée pour les contrôles.<html>");
}
});
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"));
}
btnVoirBaremeABC = new JButton("");
btnVoirBaremeABC.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
double progression = Double.valueOf(textFieldProgression.getText());
calcul.calculIntervalleBaremeABCDE C = new calcul.calculIntervalleBaremeABCDE(progression);
JOptionPane.showMessageDialog(null, C.getMessageHTMLColonne());
}
});
btnVoirBaremeABC.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/voirmini.png")));
contentPane.add(btnVoirBaremeABC, "cell 2 4");
btnVoirBaremeNumeric = new JButton("");
btnVoirBaremeNumeric.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
double progression = Double.valueOf(textFieldProgression.getText());
double noteFrom = Double.valueOf(textFieldNoteFrom.getText());
calculNotesProgression C = new calculNotesProgression(progression,noteFrom);
JOptionPane.showMessageDialog(null, C.getMessageHTMLColonne());
}
});
btnVoirBaremeNumeric.setIcon(new ImageIcon(proprieteFichierAnalyse.class.getResource("/resources/voirmini.png")));
contentPane.add(btnVoirBaremeNumeric, "cell 2 5");
JButton btnNewButton = new JButton("Valide");
btnNewButton.setFont(new Font("Tahoma", Font.PLAIN, 12));
contentPane.add(btnNewButton, "cell 1 15,grow");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if(verifCoefProgression()&&verifBareme()&&formatDateWriter.isCorrect(textFieldDateCreation.getText())) {
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();
fenetres.create.getTextNodeSelect().afficheChargementFichierAnalyse();
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);
}
}
});
/**
* Fermeture de la fenêtre.
*/
addWindowListener(new java.awt.event.WindowAdapter() {
@Override
public void windowClosing(java.awt.event.WindowEvent windowEvent) {
if(JOptionPane.showConfirmDialog(null,"Voulez-vous quitter cette fenêtre?", "Quitter", JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE)==JOptionPane.YES_OPTION) {
dispose();
};
}
});
Refresh();
this.setVisible(true);
}
/**
* Lorsque le combobox du barème ABC est sélectionner.
*/
private void Refresh() {
if(comboBoxBaremeABC.getSelectedItem().equals("true")) {
textFieldNoteFrom.setEditable(false);
}else {
textFieldNoteFrom.setEditable(true);
}
}
/**
* Retourn true si pas d'erreur dans le coefficient de progression
* @return
*/
private boolean verifCoefProgression() {
double progression;
try {
progression = Double.valueOf(textFieldProgression.getText());
}catch (Exception e) {
JOptionPane.showMessageDialog(null, "Le coef. de progression doit être une valeur numérique.");
return false;
}
if(progression<0) {
JOptionPane.showMessageDialog(null, "Le coef. de progression doit être positif.");
return false;
}
if(progression>100) {
JOptionPane.showMessageDialog(null, "Le coef. de progression doit être inférieur strictement à 10.");
return false;
}
return true;
}
/**
* Retourne true si pas d'erreur dans le barème.<br>
* @return
*/
private boolean verifBareme() {
double bareme;
try {
bareme = Double.valueOf(textFieldNoteFrom.getText());
}catch (Exception e) {
JOptionPane.showMessageDialog(null, "Le barème doit être une valeur numérique.");
return false;
}
if(bareme<0) {
JOptionPane.showMessageDialog(null, "Le barème doit être positif.");
return false;
}
return true;
}
public static proprieteFichierAnalyse getInstance() {
if (instance == null) {
instance = new proprieteFichierAnalyse();
}
instance.actualise();
instance.setVisible(true);
return instance;
}
public void actualise() {
if(commandes.sujet.getAttributs().get("titre")!=null){
textFieldTitre.setText(commandes.sujet.getAttributs().get("titre"));
}else {
textFieldTitre.setText("");
}
if(commandes.sujet.getAttributs().get("auteur")!=null){
textFieldAuteur.setText(commandes.sujet.getAttributs().get("auteur"));
}else {
textFieldAuteur.setText("");
}
if(commandes.sujet.getAttributs().get("metaSujet")!=null){
textFieldMetaSujet.setText(commandes.sujet.getAttributs().get("metaSujet"));
}else {
textFieldMetaSujet.setText("");
}
if(commandes.sujet.getAttributs().get("notefrom")!=null){
textFieldNoteFrom.setText(commandes.sujet.getAttributs().get("notefrom"));
}else {
textFieldNoteFrom.setText("");
}
if(commandes.sujet.getAttributs().get("progression")!=null){
textFieldProgression.setText(commandes.sujet.getAttributs().get("progression"));
}else {
textFieldProgression.setText("");
}
if(commandes.sujet.getAttributs().get("creationDate")!=null){
textFieldDateCreation.setText(commandes.sujet.getAttributs().get("creationDate"));
}else {
textFieldDateCreation.setText("");
}
if(commandes.sujet.getAttributs().get("presenceMetaSujet")!=null){
comboBoxPresenceMetaSujet.setSelectedItem(commandes.sujet.getAttributs().get("presenceMetaSujet").toLowerCase());
}else {
comboBoxPresenceMetaSujet.setSelectedItem(String.valueOf(commandes.analyse_presenceMetaSujet));
}
if(commandes.sujet.getAttributs().get("baremeABC")!=null){
comboBoxBaremeABC.setSelectedItem(commandes.sujet.getAttributs().get("baremeABC").toLowerCase());
}else {
comboBoxBaremeABC.setSelectedItem(String.valueOf(commandes.analyse_baremeABC));
}
if(commandes.sujet.getAttributs().get("historiquePresent")!=null){
comboBoxhistoriquePresent.setSelectedItem(commandes.sujet.getAttributs().get("historiquePresent").toLowerCase());
}else {
comboBoxhistoriquePresent.setSelectedItem(String.valueOf(commandes.analyse_historiquePresent));
}
if(commandes.sujet.getAttributs().get("controle_Initial_Creator")!=null){
comboBoxcontrole_Initial_Creator.setSelectedItem(commandes.sujet.getAttributs().get("controle_Initial_Creator").toLowerCase());
}else {
comboBoxcontrole_Initial_Creator.setSelectedItem(String.valueOf(commandes.analyse_controle_Initial_Creator));
}
if(commandes.sujet.getAttributs().get("controleDateCreation")!=null){
comboBoxcontroleDateCreation.setSelectedItem(commandes.sujet.getAttributs().get("controleDateCreation").toLowerCase());
}else {
comboBoxcontroleDateCreation.setSelectedItem(String.valueOf(commandes.analyse_controleDateCreation));
}
}
}