diff --git a/bin/.gitignore b/bin/.gitignore index 4c2dcb6..cc3666c 100644 --- a/bin/.gitignore +++ b/bin/.gitignore @@ -1,2 +1,3 @@ +/resources/ /app/ /MEPTL/ diff --git a/bin/MEPTL/meptl.class b/bin/MEPTL/meptl.class index dedb2a8..b364931 100644 Binary files a/bin/MEPTL/meptl.class and b/bin/MEPTL/meptl.class differ diff --git a/bin/MEPTL/verificationFichierAnalyse.class b/bin/MEPTL/verificationFichierAnalyse.class index 9b32f89..1e2afbc 100644 Binary files a/bin/MEPTL/verificationFichierAnalyse.class and b/bin/MEPTL/verificationFichierAnalyse.class differ diff --git a/bin/app/evaluate$1.class b/bin/app/evaluate$1.class index 249d085..a15f5ab 100644 Binary files a/bin/app/evaluate$1.class and b/bin/app/evaluate$1.class differ diff --git a/bin/app/evaluate$2.class b/bin/app/evaluate$2.class index 64d7395..ab19070 100644 Binary files a/bin/app/evaluate$2.class and b/bin/app/evaluate$2.class differ diff --git a/bin/app/evaluate.class b/bin/app/evaluate.class index e0028ba..72b4a84 100644 Binary files a/bin/app/evaluate.class and b/bin/app/evaluate.class differ diff --git a/bin/app/mainApp.class b/bin/app/mainApp.class index efe59e1..9d2f758 100644 Binary files a/bin/app/mainApp.class and b/bin/app/mainApp.class differ diff --git a/bin/evaluate.png b/bin/evaluate.png index e7422ad..47a4da8 100644 Binary files a/bin/evaluate.png and b/bin/evaluate.png differ diff --git a/bin/evaluate.svg b/bin/evaluate.svg index cb28ba9..bcf31b7 100644 --- a/bin/evaluate.svg +++ b/bin/evaluate.svg @@ -1,29 +1,29 @@ + viewBox="0 0 12.7 12.7" + height="48" + width="48" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/"> + id="base" + inkscape:pagecheckerboard="0" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" + inkscape:snap-bbox="true" + inkscape:bbox-paths="true" + inkscape:bbox-nodes="true" + inkscape:snap-midpoints="true" + inkscape:object-paths="true" + inkscape:snap-global="false"> + position="-2.471617e-08,4.4381936" /> + @@ -54,46 +69,92 @@ image/svg+xml - + inkscape:label="Calque 1" + transform="translate(-0.92013353,-0.34176359)"> + id="g919" + transform="matrix(2.0256057,0,0,2.085527,3.6658321,-4.3064178)" + style="stroke-width:0.772273"> - + style="fill:#ff0000;fill-rule:evenodd;stroke-width:0.0501977;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.0573248" + rx="0.5800662" /> - + style="fill:none;stroke:#ffffff;stroke-width:0.436334;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + + + + + + + + + + + + + + diff --git a/bin/evalwriter.svg b/bin/evalwriter.svg index d539367..c4adf04 100644 --- a/bin/evalwriter.svg +++ b/bin/evalwriter.svg @@ -1,37 +1,24 @@ + width="48" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/"> - - - - - + inkscape:guide-bbox="true" + inkscape:pagecheckerboard="0"> image/svg+xml - @@ -168,41 +146,50 @@ y="83.64991" ry="2.5985754" /> - + id="g3916" + transform="matrix(12.151193,0,0,12.151193,-148.91629,70.970167)" + style="stroke-width:0.768356"> + style="fill:#ffaaaa;stroke:none;stroke-width:0.203294px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="m 17.348583,0.95935787 -0.754518,-0.8270232 c -0.268896,-0.002875 -0.502454,-0.0608291 -0.917307,0.1638007 -0.4601,0.3530892 -0.68116,0.6506762 -0.877185,0.94245073 -0.17669,0.3432441 -0.139712,0.5859875 -0.100073,0.8274788 l 0.801458,0.761569 z" + id="path1605" + sodipodi:nodetypes="ccccccc" /> + id="path903" + d="m 18.286926,1.8124245 0.989256,-0.6558316 c 0.804095,1.2322882 0.673903,1.9306982 2.412766,3.6971397" + style="fill:none;stroke:#000000;stroke-width:0.379568;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + sodipodi:nodetypes="ccc" /> + + + + + + style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.203294px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="m 26.491378,12.121819 -0.924862,-0.25883 c 0.276834,-0.388494 -0.747363,-1.194931 0.483177,-1.058882 z" + id="path3258" + sodipodi:nodetypes="cccc" /> - diff --git a/bin/resources/evaluate.png b/bin/resources/evaluate.png index e7422ad..47a4da8 100644 Binary files a/bin/resources/evaluate.png and b/bin/resources/evaluate.png differ diff --git a/icons/evaluate.png b/icons/evaluate.png index e7422ad..47a4da8 100644 Binary files a/icons/evaluate.png and b/icons/evaluate.png differ diff --git a/icons/evaluate.svg b/icons/evaluate.svg index cb28ba9..bcf31b7 100644 --- a/icons/evaluate.svg +++ b/icons/evaluate.svg @@ -1,29 +1,29 @@ + viewBox="0 0 12.7 12.7" + height="48" + width="48" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/"> + id="base" + inkscape:pagecheckerboard="0" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" + inkscape:snap-bbox="true" + inkscape:bbox-paths="true" + inkscape:bbox-nodes="true" + inkscape:snap-midpoints="true" + inkscape:object-paths="true" + inkscape:snap-global="false"> + position="-2.471617e-08,4.4381936" /> + @@ -54,46 +69,92 @@ image/svg+xml - + inkscape:label="Calque 1" + transform="translate(-0.92013353,-0.34176359)"> + id="g919" + transform="matrix(2.0256057,0,0,2.085527,3.6658321,-4.3064178)" + style="stroke-width:0.772273"> - + style="fill:#ff0000;fill-rule:evenodd;stroke-width:0.0501977;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.0573248" + rx="0.5800662" /> - + style="fill:none;stroke:#ffffff;stroke-width:0.436334;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + + + + + + + + + + + + + + diff --git a/icons/evalwriter.svg b/icons/evalwriter.svg index d539367..c4adf04 100644 --- a/icons/evalwriter.svg +++ b/icons/evalwriter.svg @@ -1,37 +1,24 @@ + width="48" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/"> - - - - - + inkscape:guide-bbox="true" + inkscape:pagecheckerboard="0"> image/svg+xml - @@ -168,41 +146,50 @@ y="83.64991" ry="2.5985754" /> - + id="g3916" + transform="matrix(12.151193,0,0,12.151193,-148.91629,70.970167)" + style="stroke-width:0.768356"> + style="fill:#ffaaaa;stroke:none;stroke-width:0.203294px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="m 17.348583,0.95935787 -0.754518,-0.8270232 c -0.268896,-0.002875 -0.502454,-0.0608291 -0.917307,0.1638007 -0.4601,0.3530892 -0.68116,0.6506762 -0.877185,0.94245073 -0.17669,0.3432441 -0.139712,0.5859875 -0.100073,0.8274788 l 0.801458,0.761569 z" + id="path1605" + sodipodi:nodetypes="ccccccc" /> + id="path903" + d="m 18.286926,1.8124245 0.989256,-0.6558316 c 0.804095,1.2322882 0.673903,1.9306982 2.412766,3.6971397" + style="fill:none;stroke:#000000;stroke-width:0.379568;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + sodipodi:nodetypes="ccc" /> + + + + + + style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.203294px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="m 26.491378,12.121819 -0.924862,-0.25883 c 0.276834,-0.388494 -0.747363,-1.194931 0.483177,-1.058882 z" + id="path3258" + sodipodi:nodetypes="cccc" /> - diff --git a/icons/fichierAnalyse.png b/icons/fichierAnalyse.png new file mode 100644 index 0000000..1cbea18 Binary files /dev/null and b/icons/fichierAnalyse.png differ diff --git a/icons/fichier_analyse.svg b/icons/fichier_analyse.svg new file mode 100644 index 0000000..89f5c5f --- /dev/null +++ b/icons/fichier_analyse.svg @@ -0,0 +1,325 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/icons/open.svg b/icons/open.svg new file mode 100644 index 0000000..69a5a63 --- /dev/null +++ b/icons/open.svg @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/icons/open2.png b/icons/open2.png new file mode 100644 index 0000000..a50d959 Binary files /dev/null and b/icons/open2.png differ diff --git a/src/MEPTL/commandes.java b/src/MEPTL/commandes.java index 836f5ae..dcf48d7 100644 --- a/src/MEPTL/commandes.java +++ b/src/MEPTL/commandes.java @@ -107,7 +107,7 @@ public class commandes { //** Variables pour l'interface du logiciel public static String Titre = "analyseWriter"; public static String filename=""; - public static boolean fichierAnalyseValide = false; + public static boolean fichierAnalyseValide = false; //mise à jour de la valeur dans MEPTL.verificationFichierAnalyse public static String Annee ="2022"; diff --git a/src/MEPTL/meptl.java b/src/MEPTL/meptl.java index 789db65..5b334c7 100644 --- a/src/MEPTL/meptl.java +++ b/src/MEPTL/meptl.java @@ -2019,54 +2019,55 @@ public class meptl { boolean flagError = Boolean.valueOf(erreurs.getAttributs().get("oneError")); if(!commandes.fichierStudentMoodle) { - Text.append("\t Dossier analysé : " + ouverture.getAttributs().get("dossier")); + Text.append("\n Dossier analysé : " + ouverture.getAttributs().get("dossier")); System.out.println("\t Dossier analysé : " + ouverture.getAttributs().get("dossier"));} else { - Text.append("\t Fichier analysé : " + ouverture.getAttributs().get("dossier")); + Text.append("\n Fichier analysé : " + ouverture.getAttributs().get("dossier")); System.out.println("\t Fichier analysé : " + ouverture.getAttributs().get("dossier"));} if(notation.getAttributs().get("baremeABC").equals("true")) { - Text.append("\t Note : " + notation.getAttributs().get("noteABC")); + Text.append("\n Note : " + notation.getAttributs().get("noteABC")); System.out.println("\t Note : " + notation.getAttributs().get("noteABC")); }else { - Text.append("\t Note : " + notation.getAttributs().get("note") + "/" + ouverture.getAttributs().get("notefrom")); + Text.append("\n Note : " + notation.getAttributs().get("note") + "/" + ouverture.getAttributs().get("notefrom")); System.out.println("\t Note : " + notation.getAttributs().get("note") + "/" + ouverture.getAttributs().get("notefrom")); } if(flagError) { - Text.append("\t ERREUR dans le fichier de l'étudiant."); + Text.append("\n ERREUR dans le fichier de l'étudiant."); System.out.println("\t ERREUR dans le fichier de l'étudiant."); if(Boolean.valueOf(erreurs.getAttributs().get("manqueHistorique"))) { - Text.append("\t Erreur : Il n'y a pas d'historique dans le fichier.Peut être que le fichier n'a pas été modifié ou il a été réïnitialisé par l'étudiant."); + Text.append("\n Erreur : Il n'y a pas d'historique dans le fichier.Peut être que le fichier n'a pas été modifié ou il a été réïnitialisé par l'étudiant."); System.out.println("\t Erreur : Il n'y a pas d'historique dans le fichier.Peut être que le fichier n'a pas été modifié ou il a été réïnitialisé par l'étudiant."); } if(Boolean.valueOf(erreurs.getAttributs().get("manqueCreationDate"))) { - Text.append("\t Erreur : Ce n'est pas la bonne date de création du fichier. Le fichier a été réïnitialisé ou ce n'est pas le fichier de l'évaluation."); + Text.append("\n Erreur : Ce n'est pas la bonne date de création du fichier. Le fichier a été réïnitialisé ou ce n'est pas le fichier de l'évaluation."); System.out.println("\t Erreur : Ce n'est pas la bonne date de création du fichier. Le fichier a été réïnitialisé ou ce n'est pas le fichier de l'évaluation."); } if(Boolean.valueOf(erreurs.getAttributs().get("manqueValeurCreationDate"))) { - Text.append("\t Erreur : Ce n'est pas la bonne date de création du fichier."); + Text.append("\n Erreur : Ce n'est pas la bonne date de création du fichier."); System.out.println("\t Erreur : Ce n'est pas la bonne date de création du fichier."); } if(Boolean.valueOf(erreurs.getAttributs().get("manqueMetaSujet"))) { - Text.append("\t Erreur : La propriété personnalisé \"Sujet\" a été supprimé dans le fichier de l'étudiant."); + Text.append("\n Erreur : La propriété personnalisé \"Sujet\" a été supprimé dans le fichier de l'étudiant."); System.out.println("\t Erreur : La propriété personnalisé \"Sujet\" a été supprimé dans le fichier de l'étudiant."); } if(Boolean.valueOf(erreurs.getAttributs().get("manqueValeurMetaSujet"))) { - Text.append("\t Erreur : La propriété personnalisé \"Sujet \" a été modifié par l'étudiant.\nLa valeur de cette propriété personnalisé dans le fichier de l'étudiant est \"" + ouverture.getAttributs().get("metaSujet")+"\".\nCe n'est pas la valeur correct."); + Text.append("\n Erreur : La propriété personnalisé \"Sujet \" a été modifié par l'étudiant.\nLa valeur de cette propriété personnalisé dans le fichier de l'étudiant est \"" + ouverture.getAttributs().get("metaSujet")+"\".\nCe n'est pas la valeur correct."); System.out.println("\t Erreur : La propriété personnalisé \"Sujet \" a été modifié par l'étudiant.\nLa valeur de cette propriété personnalisé dans le fichier de l'étudiant est \"" + ouverture.getAttributs().get("metaSujet")+"\".\nCe n'est pas la valeur correct."); } if(Boolean.valueOf(erreurs.getAttributs().get("manqueInitialCreator"))) { - Text.append("\t Erreur : La propriété personnalisé \"Sujet\" n'est pas correct."); + Text.append("\n Erreur : La propriété personnalisé \"Sujet\" n'est pas correct."); System.out.println("\t Erreur : La propriété personnalisé \"Sujet\" n'est pas correct."); } } + Text.append("\n"); System.out.println(); return Text; diff --git a/src/MEPTL/verificationFichierAnalyse.java b/src/MEPTL/verificationFichierAnalyse.java index ed196c0..7bfa506 100644 --- a/src/MEPTL/verificationFichierAnalyse.java +++ b/src/MEPTL/verificationFichierAnalyse.java @@ -148,7 +148,12 @@ public class verificationFichierAnalyse { } - if(!erreur) commandes.fichierAnalyseValide = true; + // Mise à jour de la variable fichierAnalyseValide + if(!erreur) { + commandes.fichierAnalyseValide = true; + }else { + commandes.fichierAnalyseValide = false; + } } @@ -198,8 +203,7 @@ public class verificationFichierAnalyse { erreur=true; } } - - + // le node fichier doit contenir l'attribut metaSujet et une valeur non vide if(attribut.get("metaSujet")==null) { messageErreur.append("\n**-** Erreur dans le fichier d'analyse, dans le node ."); @@ -258,7 +262,7 @@ public class verificationFichierAnalyse { if(attribut.get("baremeABC")!=null) { String p = attribut.get("baremeABC"); - if(!p.equalsIgnoreCase("true")||!p.equalsIgnoreCase("false")) { + if(!(p.equalsIgnoreCase("true")||p.equalsIgnoreCase("false"))) { messageErreur.append("\n**-** Erreur dans le fichier d'analyse, dans le node ."); messageErreur.append("\nL'attribut \"baremeABC\" n'a pas une valeur logique."); messageErreur.append("\nVoir la documentation d'analyseWriter."); @@ -271,7 +275,7 @@ public class verificationFichierAnalyse { if(attribut.get("controleDateCreation")!=null) { String p = attribut.get("controleDateCreation"); - if(!p.equalsIgnoreCase("true")||!p.equalsIgnoreCase("false")) { + if(!(p.equalsIgnoreCase("true")||p.equalsIgnoreCase("false"))) { messageErreur.append("\n**-** Erreur dans le fichier d'analyse, dans le node ."); messageErreur.append("\nL'attribut \"controleDateCreation\" n'a pas une valeur logique."); messageErreur.append("\nVoir la documentation d'analyseWriter."); @@ -284,7 +288,7 @@ public class verificationFichierAnalyse { if(attribut.get("presenceMetaSujet")!=null) { String p = attribut.get("presenceMetaSujet"); - if(!p.equalsIgnoreCase("true")||!p.equalsIgnoreCase("false")) { + if(!(p.equalsIgnoreCase("true")||p.equalsIgnoreCase("false"))) { messageErreur.append("\n**-** Erreur dans le fichier d'analyse, dans le node ."); messageErreur.append("\nL'attribut \"presenceMetaSujet\" n'a pas une valeur logique."); messageErreur.append("\nVoir la documentation d'analyseWriter."); @@ -297,7 +301,7 @@ public class verificationFichierAnalyse { if(attribut.get("controle_Initial_Creator")!=null) { String p = attribut.get("controle_Initial_Creator"); - if(!p.equalsIgnoreCase("true")||!p.equalsIgnoreCase("false")) { + if(!(p.equalsIgnoreCase("true")||p.equalsIgnoreCase("false"))) { messageErreur.append("\n**-** Erreur dans le fichier d'analyse, dans le node ."); messageErreur.append("\nL'attribut \"controle_Initial_Creator\" n'a pas une valeur logique."); messageErreur.append("\nVoir la documentation d'analyseWriter."); @@ -310,7 +314,7 @@ public class verificationFichierAnalyse { if(attribut.get("historiquePresent")!=null) { String p = attribut.get("historiquePresent"); - if(!p.equalsIgnoreCase("true")||!p.equalsIgnoreCase("false")) { + if(!(p.equalsIgnoreCase("true")||p.equalsIgnoreCase("false"))) { messageErreur.append("\n**-** Erreur dans le fichier d'analyse, dans le node ."); messageErreur.append("\nL'attribut \"historiquePresent\" n'a pas une valeur logique."); messageErreur.append("\nVoir la documentation d'analyseWriter."); diff --git a/src/app/evaluate.java b/src/app/evaluate.java index 362edb9..cbbce4a 100644 --- a/src/app/evaluate.java +++ b/src/app/evaluate.java @@ -31,6 +31,12 @@ import MEPTL.meptl; import cXML.Run; import cXML.node; import net.lingala.zip4j.exception.ZipException; +import javax.swing.SwingConstants; +import java.awt.GridLayout; +import javax.swing.JTextArea; +import javax.swing.JScrollPane; +import java.awt.Component; +import javax.swing.Box; public class evaluate extends JFrame { @@ -40,11 +46,12 @@ public class evaluate extends JFrame { private static final long serialVersionUID = 1L; private JPanel contentPane; private JLabel lblPath = new JLabel(); + private JLabel lblFileAnalyse = new JLabel(); private JCheckBox chckbxfichiersEtudaints = new JCheckBox(); private JCheckBox chckbxZipfeedback = new JCheckBox(); private JCheckBox chckbxnoFeedback = new JCheckBox(); private JCheckBox chckbxNoNote = new JCheckBox(); - private JTextPane textPane = new JTextPane(); + private JTextArea textAreaMessage = new JTextArea(); /** * Create the frame. @@ -54,7 +61,7 @@ public class evaluate extends JFrame { setIconImage(Toolkit.getDefaultToolkit().getImage(evaluate.class.getResource("/resources/evalwriter.ico"))); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); - setBounds(100, 100, 882, 533); + setBounds(100, 100, 960, 677); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); @@ -63,7 +70,7 @@ public class evaluate extends JFrame { JToolBar toolBar = new JToolBar(); contentPane.add(toolBar, BorderLayout.NORTH); - JButton btnSelectFolder = new JButton("Selection dossier"); + JButton btnSelectFolder = new JButton("Selection dossier d'analyse"); btnSelectFolder.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { @@ -86,12 +93,12 @@ public class evaluate extends JFrame { } }); - btnSelectFolder.setIcon(new ImageIcon(evaluate.class.getResource("/resources/open.png"))); + btnSelectFolder.setIcon(new ImageIcon(evaluate.class.getResource("/resources/open2.png"))); btnSelectFolder.setSelectedIcon(new ImageIcon(evaluate.class.getResource("/resources/evalwriter.png"))); - btnSelectFolder.setToolTipText("Sélectionner un dossier (CTRL+O)"); + btnSelectFolder.setToolTipText("Sélectionner le dossier d'analyse (CTRL+O)"); toolBar.add(btnSelectFolder); - JButton btnNewButton = new JButton("Evaluer"); + JButton btnNewButton = new JButton("Evaluer les fichiers des étudiants"); btnNewButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try { @@ -103,74 +110,61 @@ public class evaluate extends JFrame { } }); + + JButton btnSelectFileAnalyse = new JButton("Selection fichier analyse"); + btnSelectFileAnalyse.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + new filechooserXML(); + refreshLabel(); + } + }); + btnSelectFileAnalyse.setToolTipText("Sélection du fichier d'analyse"); + btnSelectFileAnalyse.setIcon(new ImageIcon(evaluate.class.getResource("/resources/fichierAnalyse.png"))); + toolBar.add(btnSelectFileAnalyse); btnNewButton.setIcon(new ImageIcon(evaluate.class.getResource("/resources/evaluate.png"))); toolBar.add(btnNewButton); JPanel panel = new JPanel(); contentPane.add(panel, BorderLayout.WEST); - GridBagLayout gbl_panel = new GridBagLayout(); - gbl_panel.columnWidths = new int[]{104, 0}; - gbl_panel.rowHeights = new int[]{14, 0, 0, 0, 0, 0, 0, 0}; - gbl_panel.columnWeights = new double[]{0.0, Double.MIN_VALUE}; - gbl_panel.rowWeights = new double[]{0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, Double.MIN_VALUE}; - panel.setLayout(gbl_panel); + panel.setLayout(new GridLayout(0, 1, 0, 0)); + + lblFileAnalyse = new JLabel("Fichier de l'analyse : "); + lblFileAnalyse.setHorizontalAlignment(SwingConstants.LEFT); + lblFileAnalyse.setFont(new Font("Tahoma", Font.PLAIN, 14)); + panel.add(lblFileAnalyse); + lblPath.setHorizontalAlignment(SwingConstants.LEFT); lblPath.setFont(new Font("Tahoma", Font.PLAIN, 14)); lblPath.setText("Dossier de l'analyse : " + commandes.path.substring(commandes.path.lastIndexOf("\\")+1,commandes.path.length()) + ""); - - - - GridBagConstraints gbc_lblPath = new GridBagConstraints(); - gbc_lblPath.insets = new Insets(0, 0, 5, 0); - gbc_lblPath.anchor = GridBagConstraints.NORTHWEST; - gbc_lblPath.gridx = 0; - gbc_lblPath.gridy = 1; - panel.add(lblPath, gbc_lblPath); + panel.add(lblPath); chckbxfichiersEtudaints = new JCheckBox("Les fichiers ne sont pas dans des dossiers nominatifs"); chckbxfichiersEtudaints.setFont(new Font("Tahoma", Font.PLAIN, 12)); chckbxfichiersEtudaints.setToolTipText("Cochez si les fichiers des étudiants ne sont pas dans des dossier nominatifs"); - GridBagConstraints gbc_chckbxfichiersEtudaints = new GridBagConstraints(); - gbc_chckbxfichiersEtudaints.anchor = GridBagConstraints.WEST; - gbc_chckbxfichiersEtudaints.insets = new Insets(0, 0, 5, 0); - gbc_chckbxfichiersEtudaints.gridx = 0; - gbc_chckbxfichiersEtudaints.gridy = 2; - panel.add(chckbxfichiersEtudaints, gbc_chckbxfichiersEtudaints); + panel.add(chckbxfichiersEtudaints); chckbxnoFeedback = new JCheckBox("Pas de feedback"); chckbxnoFeedback.setFont(new Font("Tahoma", Font.PLAIN, 12)); - GridBagConstraints gbc_chckbxnoFeedback = new GridBagConstraints(); - gbc_chckbxnoFeedback.anchor = GridBagConstraints.WEST; - gbc_chckbxnoFeedback.insets = new Insets(0, 0, 5, 0); - gbc_chckbxnoFeedback.gridx = 0; - gbc_chckbxnoFeedback.gridy = 4; - panel.add(chckbxnoFeedback, gbc_chckbxnoFeedback); + panel.add(chckbxnoFeedback); chckbxZipfeedback = new JCheckBox("Zip les feedbacks"); chckbxZipfeedback.setFont(new Font("Tahoma", Font.PLAIN, 12)); - GridBagConstraints gbc_chckbxZipfeedback = new GridBagConstraints(); - gbc_chckbxZipfeedback.insets = new Insets(0, 0, 5, 0); - gbc_chckbxZipfeedback.anchor = GridBagConstraints.NORTHWEST; - gbc_chckbxZipfeedback.gridx = 0; - gbc_chckbxZipfeedback.gridy = 5; - panel.add(chckbxZipfeedback, gbc_chckbxZipfeedback); + panel.add(chckbxZipfeedback); chckbxNoNote = new JCheckBox("Pas de note dans les feedbacks"); chckbxNoNote.setFont(new Font("Tahoma", Font.PLAIN, 12)); - GridBagConstraints gbc_chckbxNoNote = new GridBagConstraints(); - gbc_chckbxNoNote.anchor = GridBagConstraints.WEST; - gbc_chckbxNoNote.gridx = 0; - gbc_chckbxNoNote.gridy = 6; - panel.add(chckbxNoNote, gbc_chckbxNoNote); + panel.add(chckbxNoNote); JPanel panel_1 = new JPanel(); contentPane.add(panel_1, BorderLayout.CENTER); - panel_1.setLayout(null); + panel_1.setLayout(new GridLayout(1, 0, 0, 0)); - textPane = new JTextPane(); - textPane.setFont(new Font("Tahoma", Font.PLAIN, 12)); - textPane.setBounds(30, 28, 495, 412); - panel_1.add(textPane); + JScrollPane scrollPane = new JScrollPane(); + panel_1.add(scrollPane); + + textAreaMessage = new JTextArea(); + scrollPane.setViewportView(textAreaMessage); + textAreaMessage.setText(""); @@ -181,15 +175,42 @@ public class evaluate extends JFrame { private void refreshLabel() { if(!commandes.fichierAnalyseValide) { - textPane.setText(MEPTL.verificationFichierAnalyse.messageErreur.toString()); + textAreaMessage.setText(MEPTL.verificationFichierAnalyse.messageErreur.toString()); chckbxfichiersEtudaints.setEnabled(false); chckbxZipfeedback.setEnabled(false); chckbxnoFeedback.setEnabled(false); chckbxNoNote.setEnabled(false); + }else { + chckbxfichiersEtudaints.setEnabled(true); + chckbxZipfeedback.setEnabled(true); + chckbxnoFeedback.setEnabled(true); + chckbxNoNote.setEnabled(true); + + StringBuilder text = new StringBuilder(); + + text.append("Le titre de l'exercice est " + commandes.analyse_titre); + text.append("\n"); + text.append("Le sujet (metaSujet) est " + commandes.analyse_metaSujet); + text.append("\n"); + text.append("L'auteur de l'exercice est " + commandes.analyse_auteur); + text.append("\n"); + text.append("\n"); + if(commandes.analyse_baremeABC==true) { + text.append("La notation est sous la forme d'un barème alphabétique ABCDE."); + text.append("\n"); + }else { + text.append("La notation est sous la forme d'une note numérique."); + text.append("Le barème est sur " + String.valueOf(commandes.analyse_notefrom)); + text.append("\n"); + } + + textAreaMessage.setText(text.toString()); + } lblPath.setText("Dossier de l'analyse : " + commandes.path.substring(commandes.path.lastIndexOf("\\")+1,commandes.path.length()) + ""); - + lblFileAnalyse.setText("Fichier de l'analyse : " + commandes.filename + ""); + } @@ -294,15 +315,7 @@ public class evaluate extends JFrame { } if(commandes.zipfeedback) { // Dans une archive pour Moodle try { -// long size = 48000000; //valeur par défaut -// String nameZip = "feedbackMoodle"; //nom zip par défaut -// node zip = commandes.sujet.retourneFirstEnfantsByName("zip"); -// if(zip!=null) { -// if(zip.getAttributs().get("size")!=null)size = Long.valueOf(zip.getAttributs().get("size")); -// if(zip.getAttributs().get("name")!=null)nameZip = zip.getAttributs().get("name"); -// } - //a.AddStreamToZip(feedbackForZip(ana, verif), retourneLeNomDuFeedback(a.getLectDossiers().getEC().getListeNomFichierFeedBack().get(i),ana, verif),size,nameZip); - a.AddStreamToZip(feedbacks.feedback(ana, verif, true), meptl.retourneLeNomDuFeedback(a.getLectDossiers().getEC().getListeNomFichierFeedBack().get(i),ana, verif),commandes.analyse_size,commandes.analyse_nameZip); + a.AddStreamToZip(feedbacks.feedback(ana, verif, true), meptl.retourneLeNomDuFeedback(a.getLectDossiers().getEC().getListeNomFichierFeedBack().get(i),ana, verif),commandes.analyse_size,commandes.analyse_nameZip); } catch (ZipException e) { e.printStackTrace(); } catch (IOException e) { @@ -320,7 +333,7 @@ public class evaluate extends JFrame { //** Message dans la console sur l'analyse de l'étudiant ** //********************************************************* textMessage.append(meptl.messageSystem(ana).toString()); - textPane.setText(textMessage.toString()); + textAreaMessage.setText(textMessage.toString()); } } diff --git a/src/app/mainApp.java b/src/app/mainApp.java index 7fb29e1..cfbff36 100644 --- a/src/app/mainApp.java +++ b/src/app/mainApp.java @@ -120,13 +120,11 @@ public class mainApp extends JFrame implements ActionListener{ if(e.getSource()==actCharge) { if(!commandes.console) System.out.println( "Début chargement du fichier d'analyse." ); new filechooserXML(); - if(commandes.fichierAnalyseValide) System.out.println("Le chargement du fichier d'analyse est réussi."); // tree.setModel(utils.getTree().getModel()) ; // textNodeSelect.setText("Le chargement de la nouvelle structure est réussi."); // create.this.MAJToolBar(); - if(!commandes.console) System.out.println( "Fin chargement du fichier d'analyse" ); new evaluate(); frmEvalwriter.dispose(); } diff --git a/src/resources/evaluate.png b/src/resources/evaluate.png index e7422ad..47a4da8 100644 Binary files a/src/resources/evaluate.png and b/src/resources/evaluate.png differ diff --git a/src/resources/fichierAnalyse.png b/src/resources/fichierAnalyse.png new file mode 100644 index 0000000..1cbea18 Binary files /dev/null and b/src/resources/fichierAnalyse.png differ diff --git a/src/resources/open2.png b/src/resources/open2.png new file mode 100644 index 0000000..a50d959 Binary files /dev/null and b/src/resources/open2.png differ