diff --git a/Readme.md b/Readme.md index d955ac4..8937224 100644 --- a/Readme.md +++ b/Readme.md @@ -1,11 +1,11 @@ https://www.youtube.com/watch?v=vmE38I6iVCs# analyseWriter -L'application analyse et note les fichiers de traitement de texte au format ODF des étudiants. Le format natif des suites de bureautique, LibreOffice, OpenOffice, Trio Office. +L'application analyse et note les fichiers de traitement de texte au format ODF des étudiants. Le format natif des suites de bureautique, LibreOffice, OpenOffice et Trio Office. -Cette application permet d’évaluer un très grand nombre de fichiers réalisés par des étudiants en suivant les informations contenu dans le fichier d’analyse. +Ce logiciel permet d’évaluer un très grand nombre de fichiers réalisés par des étudiants en suivant les informations contenues dans le fichier d’analyse. -Elle permet de réaliser des comptes-rendus (feedbacks) personnalisés pour chaque étudiant. +Il permet de réaliser des comptes-rendus (feedbacks) personnalisés pour chaque étudiant. -Elle permet de faciliter l'importation des notes et des feedbacks des étudiants sur Moodle. +Il permet de créer les fichiers des notes et des feedbacks des étudiants qui sont importables sur Moodle. diff --git a/analyseWriter.exe b/analyseWriter.exe index c0c9f8a..6e5bba5 100644 Binary files a/analyseWriter.exe and b/analyseWriter.exe differ diff --git a/analyseWriter.jar b/analyseWriter.jar index 1853f54..608bc6b 100644 Binary files a/analyseWriter.jar and b/analyseWriter.jar differ diff --git a/bin/MEPTL/commandes.class b/bin/MEPTL/commandes.class index ed5c946..24804c9 100644 Binary files a/bin/MEPTL/commandes.class and b/bin/MEPTL/commandes.class differ diff --git a/bin/MEPTL/verificationFichierAnalyse.class b/bin/MEPTL/verificationFichierAnalyse.class index 75d6469..aa1da85 100644 Binary files a/bin/MEPTL/verificationFichierAnalyse.class and b/bin/MEPTL/verificationFichierAnalyse.class differ diff --git a/documentation.pdf b/documentation.pdf deleted file mode 100644 index a843cb0..0000000 Binary files a/documentation.pdf and /dev/null differ diff --git a/src/MEPTL/commandes.java b/src/MEPTL/commandes.java index db7c0c5..8349bb1 100644 --- a/src/MEPTL/commandes.java +++ b/src/MEPTL/commandes.java @@ -167,8 +167,7 @@ public class commandes { analyse_tolerance_bleu = 30; analyse_size = 48000000; analyse_nameZip = "feedbackMoodle"; - analyse_hash = ""; - analysis_filename = ""; + //** Variables pour l'interface du logiciel diff --git a/src/MEPTL/verificationFichierAnalyse.java b/src/MEPTL/verificationFichierAnalyse.java index fe0e589..267c082 100644 --- a/src/MEPTL/verificationFichierAnalyse.java +++ b/src/MEPTL/verificationFichierAnalyse.java @@ -6,6 +6,8 @@ import java.util.Enumeration; import java.util.regex.Matcher; import java.util.regex.Pattern; +import javax.swing.JOptionPane; + import cXML.Run; import cXML.node; import evaluer.evaluation; @@ -28,131 +30,134 @@ public class verificationFichierAnalyse { erreur=false; //réïnitialise la variable erreur. if(commandes.sujet==null) { - messageErreur.append("\n**-** Erreur, le fichier d'analyse est null.\n"); - System.out.println(messageErreur.toString()); - erreur=true; - clotureWithErrorInanalyzeFile(); + commandes.fichierAnalyseValide=false; + JOptionPane.showMessageDialog(null, "

Ce fichier d'analyse est null.

", "Erreur", JOptionPane.ERROR_MESSAGE ); + } + + if(commandes.fichierAnalyseValide) if(!commandes.sujet.getNomElt().equals("fichier")) { + commandes.fichierAnalyseValide=false; + JOptionPane.showMessageDialog(null, "

Ce fichier n'est pas un fichier
d'analyseCalc

", "Erreur", JOptionPane.ERROR_MESSAGE ); } //** Vérification des attributs du node fichier - if(commandes.sujet.getAttributs().size()>0) { - verificationNodeFichier(commandes.sujet.getAttributs()); + if(commandes.fichierAnalyseValide) if(commandes.sujet.getAttributs().size()>0) { + if(commandes.fichierAnalyseValide)verificationNodeFichier(commandes.sujet.getAttributs()); }else { - messageErreur.append("\n**-** Erreur, le node fichier n'a pas d'attribut.\n"); - System.out.println(messageErreur.toString()); - erreur=true; + commandes.fichierAnalyseValide=false; + JOptionPane.showMessageDialog(null, "

Le premier node du classeur n'a pas d'attribut.

", "Erreur", JOptionPane.ERROR_MESSAGE ); } //** Verification du hash et du nom du fichier d'analyse - commandes.hash = String.valueOf(Run.HashNode(commandes.sujet,0)); - if(commandes.sujet.getAttributs().get("analysis_filename")!=null) { - if(!commandes.sujet.getAttributs().get("analysis_filename").equals(commandes.nameSujet)) { - commandes.MAJnameAnalysisFile=true; + if(commandes.fichierAnalyseValide) { + commandes.hash = String.valueOf(Run.HashNode(commandes.sujet,0)); + if(commandes.sujet.getAttributs().get("analysis_filename")!=null) { + if(!commandes.sujet.getAttributs().get("analysis_filename").equals(commandes.nameSujet)) { + commandes.MAJnameAnalysisFile=true; + } } - } - if(commandes.sujet.getAttributs().get("hash")==null) { - commandes.MAJFichierAnalyse =true; - }else { - if(!commandes.sujet.getAttributs().get("hash").equals(commandes.hash)) { - commandes.MAJFichierAnalyse=true; + if(commandes.sujet.getAttributs().get("hash")==null) { + commandes.MAJFichierAnalyse =true; + }else { + if(!commandes.sujet.getAttributs().get("hash").equals(commandes.hash)) { + commandes.MAJFichierAnalyse=true; + } } - } - if(commandes.MAJFichierAnalyse||commandes.MAJnameAnalysisFile) { - messagMiseAJourFichierAnalyse(commandes.hash); - } - - - //** Vérification des attributs du node style:paragraph et vérification style de paragraphe par défaut - if(commandes.sujet.retourneEnfantsByNameExist("style:paragraph")) { - verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("style:paragraph").getAttributs(),"style:paragraph"); - if(commandes.sujet.retourneFirstEnfantsByName("style:paragraph").retourneEnfantsByNameExist("style:default-style")) { - verifcationStyleParagraphDefaut(commandes.sujet.retourneFirstEnfantsByName("style:paragraph").retourneFirstEnfantsByName("style:default-style")); + if(commandes.MAJFichierAnalyse||commandes.MAJnameAnalysisFile) { + messagMiseAJourFichierAnalyse(commandes.hash); + } + + + //** Vérification des attributs du node style:paragraph et vérification style de paragraphe par défaut + if(commandes.sujet.retourneEnfantsByNameExist("style:paragraph")) { + verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("style:paragraph").getAttributs(),"style:paragraph"); + if(commandes.sujet.retourneFirstEnfantsByName("style:paragraph").retourneEnfantsByNameExist("style:default-style")) { + verifcationStyleParagraphDefaut(commandes.sujet.retourneFirstEnfantsByName("style:paragraph").retourneFirstEnfantsByName("style:default-style")); + } + } + + //Vérification des attributs du node office:meta + if(commandes.sujet.retourneEnfantsByNameExist("office:meta")) { + verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("office:meta").getAttributs(),"office:meta"); + verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("office:meta")); + } + + //Vérification des attributs du node style:page + if(commandes.sujet.retourneEnfantsByNameExist("style:page")) { + verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("style:page").getAttributs(),"style:page"); + verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("style:page")); + } + + //Vérification des attributs du node sequences + if(commandes.sujet.retourneEnfantsByNameExist("sequences")) { + verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("sequences").getAttributs(),"sequences"); + verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("sequences")); + } + + //Vérification des attributs du node numerotationchapitre + if(commandes.sujet.retourneEnfantsByNameExist("numerotationchapitre")) { + verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("numerotationchapitre").getAttributs(),"numerotationchapitre"); + verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("numerotationchapitre")); } - } - - //Vérification des attributs du node office:meta - if(commandes.sujet.retourneEnfantsByNameExist("office:meta")) { - verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("office:meta").getAttributs(),"office:meta"); - verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("office:meta")); - } - - //Vérification des attributs du node style:page - if(commandes.sujet.retourneEnfantsByNameExist("style:page")) { - verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("style:page").getAttributs(),"style:page"); - verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("style:page")); - } - - //Vérification des attributs du node sequences - if(commandes.sujet.retourneEnfantsByNameExist("sequences")) { - verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("sequences").getAttributs(),"sequences"); - verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("sequences")); - } - - //Vérification des attributs du node numerotationchapitre - if(commandes.sujet.retourneEnfantsByNameExist("numerotationchapitre")) { - verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("numerotationchapitre").getAttributs(),"numerotationchapitre"); - verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("numerotationchapitre")); - } - //Vérification des attributs du node frames - if(commandes.sujet.retourneEnfantsByNameExist("frames")) { - verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("frames").getAttributs(),"frames"); - verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("frames")); + //Vérification des attributs du node frames + if(commandes.sujet.retourneEnfantsByNameExist("frames")) { + verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("frames").getAttributs(),"frames"); + verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("frames")); + } + + //Vérification des attributs du node sections + if(commandes.sujet.retourneEnfantsByNameExist("sections")) { + verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("sections").getAttributs(),"sections"); + verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("sections")); + } + + //Vérification des attributs du node sections + if(commandes.sujet.retourneEnfantsByNameExist("tableaux")) { + verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("tableaux").getAttributs(),"tableaux"); + verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("tableaux")); + } + + //Vérification des attributs du node biblio + if(commandes.sujet.retourneEnfantsByNameExist("biblio")) { + verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("biblio").getAttributs(),"biblio"); + verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("biblio")); + } + + //Vérification des attributs du node tablematieres + if(commandes.sujet.retourneEnfantsByNameExist("tablematieres")) { + verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("tablematieres").getAttributs(),"tablematieres"); + verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("tablematieres")); + } + + //Vérification des attributs du node tableillustrations + if(commandes.sujet.retourneEnfantsByNameExist("tableillustrations")) { + verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("tableillustrations").getAttributs(),"tableillustrations"); + verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("tableillustrations")); + } + + //Vérification des attributs du node structurepage + if(commandes.sujet.retourneEnfantsByNameExist("structurepage")) { + verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("structurepage").getAttributs(),"structurepage"); + verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("structurepage")); + } + + + //vérification du node structure +// if(commandes.sujet.retourneEnfantsByNameExist("structurepage")) { +// verifNodeAutoriserDansStructure(commandes.sujet.retourneFirstEnfantsByName("structurepage")); +// } + + //vérification du node setting + if(commandes.sujet.retourneEnfantsByNameExist("setting")) { + verificationNodeSetting(commandes.sujet.retourneFirstEnfantsByName("setting")); + } } - //Vérification des attributs du node sections - if(commandes.sujet.retourneEnfantsByNameExist("sections")) { - verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("sections").getAttributs(),"sections"); - verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("sections")); - } - - //Vérification des attributs du node sections - if(commandes.sujet.retourneEnfantsByNameExist("tableaux")) { - verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("tableaux").getAttributs(),"tableaux"); - verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("tableaux")); - } - - //Vérification des attributs du node biblio - if(commandes.sujet.retourneEnfantsByNameExist("biblio")) { - verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("biblio").getAttributs(),"biblio"); - verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("biblio")); - } - - //Vérification des attributs du node tablematieres - if(commandes.sujet.retourneEnfantsByNameExist("tablematieres")) { - verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("tablematieres").getAttributs(),"tablematieres"); - verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("tablematieres")); - } - - //Vérification des attributs du node tableillustrations - if(commandes.sujet.retourneEnfantsByNameExist("tableillustrations")) { - verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("tableillustrations").getAttributs(),"tableillustrations"); - verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("tableillustrations")); - } - - //Vérification des attributs du node structurepage - if(commandes.sujet.retourneEnfantsByNameExist("structurepage")) { - verificationNodeEvaluate(commandes.sujet.retourneFirstEnfantsByName("structurepage").getAttributs(),"structurepage"); - verifLongContenuNode(commandes.sujet.retourneFirstEnfantsByName("structurepage")); - } - - - //vérification du node structure -// if(commandes.sujet.retourneEnfantsByNameExist("structurepage")) { -// verifNodeAutoriserDansStructure(commandes.sujet.retourneFirstEnfantsByName("structurepage")); -// } - - //vérification du node setting - if(commandes.sujet.retourneEnfantsByNameExist("setting")) { - verificationNodeSetting(commandes.sujet.retourneFirstEnfantsByName("setting")); - } // Mise à jour de la variable fichierAnalyseValide - if(!erreur) { - commandes.fichierAnalyseValide = true; - }else { + if(erreur) { commandes.fichierAnalyseValide = false; } @@ -180,85 +185,63 @@ public class verificationFichierAnalyse { boolean erreurValeurAttributcontrole_Initial_CreatorConvertibleEnLogique=false; boolean erreurValeurAttributhistoriquePresentConvertibleEnLogique=false; - - - - if(!commandes.console) System.out.println("Début de la vérification du node ."); - // le node fichier doit avoir l'attribut evaluer=true if(attribut.get("evaluer")==null) { - System.out.println(); - System.out.println("**-** ERREUR dans le fichier d'analyse, dans le node ."); - System.out.println("Le node \"fichier\" doit contenir evaluer=\"true\"."); - System.out.println("L'attribut \"evaluer\" a été supprimé."); - System.out.println(); - commandes.message.append("\n**************************************************"); - commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); - commandes.message.append("\nLe node \"fichier\" doit contenir evaluer=\"true\"."); - commandes.message.append("\nL'attribut \"evaluer\" a été supprimé."); - commandes.message.append("\n**************************************************"); + commandes.message.append("\n**************************************************"); + commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); + commandes.message.append("\nL'attribut \"evaluer\" a été supprimé."); + commandes.message.append("\n**************************************************"); + JOptionPane.showMessageDialog(null, "Dans le node , l'attribut \"evaluer\" a été supprimé." + + "
Ce node doit contenir evaluer=\"true\"." + + "
Sélectionner ce node est cliqué sur évaluer.", "Avertissement", JOptionPane.WARNING_MESSAGE); erreurManqueAttributEvaluerPremierNodeFichier = true; - erreur=true; }else { - if(!attribut.get("evaluer").equalsIgnoreCase("true")) { - System.out.println(); - System.out.println("**-** ERREUR dans le fichier d'analyse, dans le node ."); - System.out.println("Le node \"fichier\" doit contenir evaluer=\"true\"."); - System.out.println(); + if(!attribut.get("evaluer").equals("true")) { commandes.message.append("\n**************************************************"); commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); - commandes.message.append("\nLe node \"fichier\" doit contenir evaluer=\"true\"."); + commandes.message.append("\nL'attribut \"evaluer\" doit avoir la valeur \"true\"."); commandes.message.append("\n**************************************************"); - erreur=true; + JOptionPane.showMessageDialog(null, "Dans le node , l'attribut \"evaluer\" n'est pas a \"true\"." + + "
Ce node doit contenir evaluer=\"true\" pour pouvoir évaluer les nodes enfants." + + "
Sélectionner ce node est cliqué sur évaluer.", "Avertissement", JOptionPane.WARNING_MESSAGE); } } // le node fichier doit contenir l'attribut metaSujet et une valeur non vide if(attribut.get("metaSujet")==null) { - System.out.println(); - System.out.println("**-** ERREUR dans le fichier d'analyse, dans le node ."); - System.out.println("Le node \"fichier\" doit contenir l'attribut \"sujetMeta\"."); - System.out.println("L'attribut \"sujetMeta\" a été supprimé. Cet attribut doit contenir une valeur."); - System.out.println(); - commandes.message.append("\n**************************************************"); - commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); - commandes.message.append("\nLe node \"fichier\" doit contenir l'attribut \"sujetMeta\"."); - commandes.message.append("\nL'attribut \"sujetMeta\" a été supprimé. Cet attribut doit contenir une valeur."); - commandes.message.append("\n**************************************************"); - erreurPasAttributMetaSujetAuPremierNodeFichier=true; - erreur=true; + commandes.message.append("\n**************************************************"); + commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); + commandes.message.append("\nL'attribut \"metaSujet\" a été supprimé."); + commandes.message.append("\n**************************************************"); + JOptionPane.showMessageDialog(null, "Dans le node , l'attribut \"metaSujet\" a été supprimé." + + "
Ce node doit contenir l'attribut \"metaSujet\". Il permet d'identifier le sujet de l'exercice." + + "
Sélectionner le node est cliqué sur propriété du fichier pour ajouter un sujet.", "Avertissement", JOptionPane.WARNING_MESSAGE); + erreurPasAttributMetaSujetAuPremierNodeFichier=true; } if(attribut.get("metaSujet")!=null)if(attribut.get("metaSujet").isEmpty() ) { - System.out.println(); - System.out.println("**-** ERREUR dans le fichier d'analyse, dans le node ."); - System.out.println("L'attribut \"sujetMeta\" doit contenir une valeur autre que vide."); - System.out.println("Dans les propriétés personnalisées des fichiers ODF, vous pouvez ajouter la propriété \"Sujet\" et faire correspondre avec cette valeur."); - System.out.println(); - commandes.message.append("\n**************************************************"); - commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); - commandes.message.append("\nL'attribut \"sujetMeta\" doit contenir une valeur autre que vide."); - commandes.message.append("\nDans les propriétés personnalisées des fichiers ODF, vous pouvez ajouter la propriété \"Sujet\" et faire correspondre avec cette valeur."); - commandes.message.append("\n**************************************************"); + commandes.message.append("\n**************************************************"); + commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); + commandes.message.append("\nL'attribut \"metaSujet\" n'a pas de valeur."); + commandes.message.append("\n**************************************************"); + JOptionPane.showMessageDialog(null, "Dans le node , l'attribut \"metaSujet\" ne possède pas de valeur." + + "
Ce node doit contenir l'attribut metaSujet=\"Un sujet\". Il permet d'identifier le sujet de l'exercice." + + "
Sélectionner le node est cliqué sur propriété du fichier pour ajouter un sujet.", "Avertissement", JOptionPane.WARNING_MESSAGE); erreurValeurVideAttributMetaSujetAuPremierNodeFichier=true; - erreur=true; } - if(attribut.get("progression")!=null) { String p = attribut.get("progression"); try { Double.valueOf(p); } catch (Exception e) { - System.out.println(); - System.out.println("**-** ERREUR dans le fichier d'analyse, dans le node ."); - System.out.println("L'attribut \"progression\" n'a pas une valeur numérique."); - System.out.println(); commandes.message.append("\n**************************************************"); commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); - commandes.message.append("\nL'attribut \"progression\" n'a pas une valeur numérique."); + commandes.message.append("\nL'attribut \"progression\" n'a pas une valeur numérique entière ou décimale."); commandes.message.append("\n**************************************************"); - erreur=true; + JOptionPane.showMessageDialog(null, "Dans le node , l'attribut \"progression\" ne possède pas une valeur correcte." + + "
La valeur de la \"progression\" doit être une valeur numérique entière ou décimale." + + "
Sélectionner le node est cliqué sur propriété du fichier pour modifier le coef. de progression.", "Avertissement", JOptionPane.WARNING_MESSAGE); erreurValeurAttributProgressionNonConvertibleEnDouble=true; } } @@ -269,48 +252,42 @@ public class verificationFichierAnalyse { try { Double.valueOf(p); } catch (Exception e) { - System.out.println(); - System.out.println("**-** ERREUR dans le fichier d'analyse, dans le node ."); - System.out.println("L'attribut \"noteFrom\" n'a pas une valeur numérique."); - System.out.println(); commandes.message.append("\n**************************************************"); commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); commandes.message.append("\nL'attribut \"noteFrom\" n'a pas une valeur numérique."); commandes.message.append("\n**************************************************"); - erreur=true; - erreurValeurAttributNoteFromNonConvertibleEnDouble=true; + JOptionPane.showMessageDialog(null, "Dans le node , l'attribut \"notefrom\" ne possède pas une valeur correcte." + + "
La valeur de la \"notefrome\" doit être une valeur numérique entière ou décimale." + + "
Sélectionner le node est cliqué sur les propriétés du fichier.", "Avertissement", JOptionPane.WARNING_MESSAGE); + erreurValeurAttributNoteFromNonConvertibleEnDouble=true; } } if(attribut.get("baremeABC")!=null) { String p = attribut.get("baremeABC"); - if(!(p.equalsIgnoreCase("true")||p.equalsIgnoreCase("false"))) { - System.out.println(); - System.out.println("**-** ERREUR dans le fichier d'analyse, dans le node ."); - System.out.println("L'attribut \"baremeABC\" n'a pas une valeur logique."); - System.out.println(); + if(!(p.equals("true")||p.equals("false"))) { commandes.message.append("\n**************************************************"); commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); commandes.message.append("\nL'attribut \"baremeABC\" n'a pas une valeur logique."); commandes.message.append("\n**************************************************"); - erreur=true; + JOptionPane.showMessageDialog(null, "Dans le node , l'attribut \"baremeABC\" ne possède pas une valeur correcte." + + "
La valeur de la \"baremeABC\" doit être une valeur logique \"true\" ou \"false\"." + + "
Sélectionner le node est cliqué sur les propriété du fichier.", "Avertissement", JOptionPane.WARNING_MESSAGE); erreurValeurAttributBaremeABCNonConvertibleEnLogique=true; } } if(attribut.get("controleDateCreation")!=null) { String p = attribut.get("controleDateCreation"); - if(!(p.equalsIgnoreCase("true")||p.equalsIgnoreCase("false"))) { - System.out.println(); - System.out.println("**-** ERREUR dans le fichier d'analyse, dans le node ."); - System.out.println("L'attribut \"controleDateCreation\" n'a pas une valeur logique."); - System.out.println(); + if(!(p.equals("true")||p.equals("false"))) { commandes.message.append("\n**************************************************"); commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); commandes.message.append("\nL'attribut \"controleDateCreation\" n'a pas une valeur logique."); commandes.message.append("\n**************************************************"); - erreur=true; + JOptionPane.showMessageDialog(null, "Dans le node , l'attribut \"controleDateCreation\" ne possède pas une valeur correcte." + + "
La valeur de la \"controleDateCreation\" doit être une valeur logique \"true\" ou \"false\"." + + "
Sélectionner le node est cliqué sur les propriétés du fichier.", "Avertissement", JOptionPane.WARNING_MESSAGE); erreurValeurAttributcontroleDateCreationNonConvertibleEnLogique=true; } } @@ -318,47 +295,41 @@ public class verificationFichierAnalyse { if(attribut.get("presenceMetaSujet")!=null) { String p = attribut.get("presenceMetaSujet"); if(!(p.equalsIgnoreCase("true")||p.equalsIgnoreCase("false"))) { - System.out.println(); - System.out.println("**-** ERREUR dans le fichier d'analyse, dans le node ."); - System.out.println("L'attribut \"presenceMetaSujet\" n'a pas une valeur logique."); - System.out.println(); commandes.message.append("\n**************************************************"); commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); commandes.message.append("\nL'attribut \"presenceMetaSujet\" n'a pas une valeur logique."); commandes.message.append("\n**************************************************"); - erreur=true; + JOptionPane.showMessageDialog(null, "Dans le node , l'attribut \"presenceMetaSujet\" ne possède pas une valeur correcte." + + "
La valeur de la \"presenceMetaSujet\" doit être une valeur logique \"true\" ou \"false\"." + + "
Sélectionner le node est cliqué sur les propriétés du fichier.", "Avertissement", JOptionPane.WARNING_MESSAGE); erreurValeurAttributpresenceMetaSujetConvertibleEnLogique=true; } } if(attribut.get("controle_Initial_Creator")!=null) { String p = attribut.get("controle_Initial_Creator"); - if(!(p.equalsIgnoreCase("true")||p.equalsIgnoreCase("false"))) { - System.out.println(); - System.out.println("**-** ERREUR dans le fichier d'analyse, dans le node ."); - System.out.println("L'attribut \"controle_Initial_Creator\" n'a pas une valeur logique."); - System.out.println(); + if(!(p.equals("true")||p.equals("false"))) { commandes.message.append("\n**************************************************"); commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); commandes.message.append("\nL'attribut \"controle_Initial_Creator\" n'a pas une valeur logique."); commandes.message.append("\n**************************************************"); - erreur=true; + JOptionPane.showMessageDialog(null, "Dans le node , l'attribut \"controle_Initial_Creator\" ne possède pas une valeur correcte." + + "
La valeur de la \"controle_Initial_Creator\" doit être une valeur logique \"true\" ou \"false\"." + + "
Sélectionner le node est cliqué sur les propriétés du fichier.", "Avertissement", JOptionPane.WARNING_MESSAGE); erreurValeurAttributcontrole_Initial_CreatorConvertibleEnLogique=true; } } if(attribut.get("historiquePresent")!=null) { String p = attribut.get("historiquePresent"); - if(!(p.equalsIgnoreCase("true")||p.equalsIgnoreCase("false"))) { - System.out.println(); - System.out.println("**-** ERREUR dans le fichier d'analyse, dans le node ."); - System.out.println("L'attribut \"historiquePresent\" n'a pas une valeur logique."); - System.out.println(); + if(!(p.equals("true")||p.equals("false"))) { commandes.message.append("\n**************************************************"); commandes.message.append("\nERREUR dans le fichier d'analyse, dans le node ."); commandes.message.append("\nL'attribut \"historiquePresent\" n'a pas une valeur logique."); commandes.message.append("\n**************************************************"); - erreur=true; + JOptionPane.showMessageDialog(null, "Dans le node , l'attribut \"historiquePresent\" ne possède pas une valeur correcte." + + "
La valeur de la \"historiquePresent\" doit être une valeur logique \"true\" ou \"false\"." + + "
Sélectionner le node est cliqué sur les propriétés du fichier.", "Avertissement", JOptionPane.WARNING_MESSAGE); erreurValeurAttributhistoriquePresentConvertibleEnLogique=true; } } diff --git a/src/fenetres/create.java b/src/fenetres/create.java index 6603410..2ba8d6b 100644 --- a/src/fenetres/create.java +++ b/src/fenetres/create.java @@ -120,7 +120,7 @@ import java.awt.GridLayout; public final class create extends JFrame { private static final long serialVersionUID = 1L; - // les élément de create + // les éléments de create private static JTree tree = new JTree(); private static DefaultMutableTreeNode selectNode; private static afficheText textNodeSelect = new afficheText(); diff --git a/src/fenetres/create_act/actNewFichierAnalyse.java b/src/fenetres/create_act/actNewFichierAnalyse.java index 96d7eec..b4b0289 100644 --- a/src/fenetres/create_act/actNewFichierAnalyse.java +++ b/src/fenetres/create_act/actNewFichierAnalyse.java @@ -51,7 +51,7 @@ public class actNewFichierAnalyse extends AbstractAction{ System.out.println("getCurrentDirectory(): " + chooser.getCurrentDirectory()); System.out.println("getSelectedFile() : " + chooser.getSelectedFile().getAbsolutePath()); commandes.initialiseParametresSettingProprietes();; - + commandes.fichierAnalyseValide=true; commandes.path = chooser.getCurrentDirectory().getAbsolutePath(); commandes.PathFilenameAnalysis = chooser.getCurrentDirectory().getAbsolutePath(); String cheminVersFichier = chooser.getSelectedFile().getAbsolutePath(); @@ -72,12 +72,11 @@ public class actNewFichierAnalyse extends AbstractAction{ commandes.sujet.supprimeTousLesNodesEnfantWithThisName("text:tracked-changes"); commandes.sujet.supprimeTousLesNodesEnfantWithThisName("text:change"); - commandes.sujetSauvegarde = commandes.sujet.clone(); - new verificationFichierAnalyse(); if(commandes.fichierAnalyseValide) { + commandes.sujetSauvegarde = commandes.sujet.clone(); fenetres.create.constructionTree(); fenetres.create.getTextNodeSelect().afficheChargementFichierAnalyse(); }else { diff --git a/src/fenetres/filechooserXML.java b/src/fenetres/filechooserXML.java index f653939..7944da0 100644 --- a/src/fenetres/filechooserXML.java +++ b/src/fenetres/filechooserXML.java @@ -57,6 +57,7 @@ public class filechooserXML extends JFileChooser { private void openFileXML(File file) { + commandes.fichierAnalyseValide=true; commandes.path = file.getPath().substring(0,file.getPath().lastIndexOf("\\")); commandes.PathFilenameAnalysis = getCurrentDirectory().getPath(); commandes.nameSujet = file.getName().toString();