MAJ V4.5.0
This commit is contained in:
parent
9af2818859
commit
f93042bf4f
@ -8,6 +8,6 @@
|
|||||||
</classpathentry>
|
</classpathentry>
|
||||||
<classpathentry kind="lib" path="C:/Users/pabr6/git/analyseWriter/MEPTL/libs/miglayout15-swing.jar"/>
|
<classpathentry kind="lib" path="C:/Users/pabr6/git/analyseWriter/MEPTL/libs/miglayout15-swing.jar"/>
|
||||||
<classpathentry kind="lib" path="C:/Users/pabr6/git/analyseWriter/MEPTL/libs/zip4j-1.2.7.jar"/>
|
<classpathentry kind="lib" path="C:/Users/pabr6/git/analyseWriter/MEPTL/libs/zip4j-1.2.7.jar"/>
|
||||||
<classpathentry kind="lib" path="C:/Users/pabr6/git/analyseWriter/MEPTL/libs/cXML.jar"/>
|
<classpathentry kind="lib" path="C:/Users/pabr6/git/analyseWriter/MEPTL/libs/cXML.jar" sourcepath="/cXML"/>
|
||||||
<classpathentry kind="output" path="bin"/>
|
<classpathentry kind="output" path="bin"/>
|
||||||
</classpath>
|
</classpath>
|
||||||
|
Binary file not shown.
Binary file not shown.
BIN
libs/cXML.jar
BIN
libs/cXML.jar
Binary file not shown.
@ -20,6 +20,7 @@ import javax.swing.JOptionPane;
|
|||||||
|
|
||||||
import analyseWriter.baseListesEtudiants.ecritureBaseListesEtudiants;
|
import analyseWriter.baseListesEtudiants.ecritureBaseListesEtudiants;
|
||||||
import analyseWriter.calcul.formatDateWriter;
|
import analyseWriter.calcul.formatDateWriter;
|
||||||
|
import analyseWriter.calcul.fusionStyleTextSpan;
|
||||||
import analyseWriter.evaluer.evaluation;
|
import analyseWriter.evaluer.evaluation;
|
||||||
import cXML.Run;
|
import cXML.Run;
|
||||||
import cXML.Run.UserStatus;
|
import cXML.Run.UserStatus;
|
||||||
@ -621,7 +622,6 @@ public class meptl {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// construction du node de l'étudiant
|
// construction du node de l'étudiant
|
||||||
node structurePage = new node();
|
node structurePage = new node();
|
||||||
structurePage.setNomElt("structurepage");
|
structurePage.setNomElt("structurepage");
|
||||||
@ -630,8 +630,6 @@ public class meptl {
|
|||||||
structurePage.setClose(true);
|
structurePage.setClose(true);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
node fichier = new node();
|
node fichier = new node();
|
||||||
fichier.setNomElt("fichier");
|
fichier.setNomElt("fichier");
|
||||||
|
|
||||||
@ -664,16 +662,10 @@ public class meptl {
|
|||||||
fichier.getNodes().add(nodframe);
|
fichier.getNodes().add(nodframe);
|
||||||
|
|
||||||
fichier.getNodes().add(nodsection);
|
fichier.getNodes().add(nodsection);
|
||||||
// nodtableaux = a.numeroteNameNode(nodtableaux, "0");
|
|
||||||
fichier.getNodes().add(nodtableaux);
|
fichier.getNodes().add(nodtableaux);
|
||||||
// nodbiblio = a.numeroteNameNode(nodbiblio, "0"); //ajoute les numéros d'index et des attributs
|
|
||||||
fichier.getNodes().add(nodbiblio);
|
fichier.getNodes().add(nodbiblio);
|
||||||
//nodtable = a.numeroteNameNode(nodtable, "0"); //ajoute les numéros d'index et des attributs
|
|
||||||
fichier.getNodes().add(nodtable);
|
fichier.getNodes().add(nodtable);
|
||||||
// nodillustrations = a.numeroteNameNode(nodillustrations, "0"); //ajoute les numéros d'index et des attributs
|
|
||||||
fichier.getNodes().add(nodillustrations);
|
fichier.getNodes().add(nodillustrations);
|
||||||
|
|
||||||
structurePage = a.numeroteNameNode(structurePage,""); //ajoute les numéros d'index et des attributs
|
|
||||||
fichier.getNodes().add(structurePage);
|
fichier.getNodes().add(structurePage);
|
||||||
|
|
||||||
fichier.getNodes().add(nodhistorique);
|
fichier.getNodes().add(nodhistorique);
|
||||||
@ -681,6 +673,16 @@ public class meptl {
|
|||||||
fichier = attributLesParentsAuxNodes(fichier);
|
fichier = attributLesParentsAuxNodes(fichier);
|
||||||
fichier.setParent(null);
|
fichier.setParent(null);
|
||||||
|
|
||||||
|
|
||||||
|
// Fusion les text:span ayant le même style et étant mitoyen
|
||||||
|
ArrayList<node> textSpans = structurePage.retourneEnfantsByName("text:span", new ArrayList<node>());
|
||||||
|
for(int j =0 ; j < textSpans.size() ; j++) {
|
||||||
|
boolean nodRemove = fusionStyleTextSpan.isStyleIsEqualsToTheNextTextSpan(textSpans.get(j));
|
||||||
|
if(nodRemove) j--;
|
||||||
|
}
|
||||||
|
|
||||||
|
structurePage = a.numeroteNameNode(structurePage,""); //ajoute les numéros d'index et des attributs
|
||||||
|
|
||||||
return fichier;
|
return fichier;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -50,7 +50,7 @@ public class actDeleteNode extends AbstractAction{
|
|||||||
if(!(nod.getNomElt().equals("setting")||nod.getNomElt().equals("csv")||nod.getNomElt().equals("import_moodle")||nod.getNomElt().equals("zip")
|
if(!(nod.getNomElt().equals("setting")||nod.getNomElt().equals("csv")||nod.getNomElt().equals("import_moodle")||nod.getNomElt().equals("zip")
|
||||||
||nod.getNomElt().equals("plagiarism")||nod.getNomElt().equals("text:similarity")||nod.getNomElt().equals("color") ||nod.getNomElt().equals("translation") )) {
|
||nod.getNomElt().equals("plagiarism")||nod.getNomElt().equals("text:similarity")||nod.getNomElt().equals("color") ||nod.getNomElt().equals("translation") )) {
|
||||||
|
|
||||||
nod.getParent().supprimeNodeEnfant(nod);
|
nod.getParent().supprimeFirstNodeEnfant(nod);
|
||||||
|
|
||||||
TreePath path = analyseWriter.fenetres.create.getTree().getSelectionPath().getParentPath();
|
TreePath path = analyseWriter.fenetres.create.getTree().getSelectionPath().getParentPath();
|
||||||
DefaultMutableTreeNode nodMu = analyseWriter.fenetres.create.getSelectNode();
|
DefaultMutableTreeNode nodMu = analyseWriter.fenetres.create.getSelectNode();
|
||||||
|
@ -3,6 +3,8 @@ package analyseWriter.baseEvaluations;
|
|||||||
import java.text.ParseException;
|
import java.text.ParseException;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
|
import javax.swing.JOptionPane;
|
||||||
|
|
||||||
import analyseWriter.MEPTL.commandes;
|
import analyseWriter.MEPTL.commandes;
|
||||||
import cXML.node;
|
import cXML.node;
|
||||||
|
|
||||||
@ -40,6 +42,11 @@ public class creerNouvelleEvaluation {
|
|||||||
|
|
||||||
private node nouvelleEvaluation(node evaluation, String nameEvaluation) {
|
private node nouvelleEvaluation(node evaluation, String nameEvaluation) {
|
||||||
|
|
||||||
|
if(nameEvaluation==null) {
|
||||||
|
JOptionPane.showMessageDialog(null, "L'évaluation ne possède pas de nom");
|
||||||
|
return evaluation;
|
||||||
|
}
|
||||||
|
|
||||||
// création du nouveau node evaluation
|
// création du nouveau node evaluation
|
||||||
evaluation.setNomElt("evaluation");
|
evaluation.setNomElt("evaluation");
|
||||||
|
|
||||||
|
48
src/analyseWriter/calcul/fusionStyleTextSpan.java
Normal file
48
src/analyseWriter/calcul/fusionStyleTextSpan.java
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
package analyseWriter.calcul;
|
||||||
|
|
||||||
|
import cXML.node;
|
||||||
|
|
||||||
|
public class fusionStyleTextSpan {
|
||||||
|
|
||||||
|
|
||||||
|
public static boolean isStyleIsEqualsToTheNextTextSpan(node nod) {
|
||||||
|
|
||||||
|
if(nod==null) return false;
|
||||||
|
if(!nod.getNomElt().equals("text:span")) return false;
|
||||||
|
node nodeNext = nod.retourneLeNodeFrereApres();
|
||||||
|
if(nodeNext==null) return false;
|
||||||
|
if(!nodeNext.getNomElt().equals("text:span")) return false;
|
||||||
|
|
||||||
|
|
||||||
|
String nodNameStyle = nod.getAttributs().get("text:style-name");
|
||||||
|
String nodeNextNameStyle = nodeNext.getAttributs().get("text:style-name");
|
||||||
|
|
||||||
|
node racineStyles = nod.racineDuNode().retourneFirstEnfantsByName("style:paragraph");
|
||||||
|
|
||||||
|
node nodStyle = racineStyles.racineDuNode().retourneFirstNodeByNameAndAttributValueExactStrict("style:style", "style:name", nodNameStyle);
|
||||||
|
node nodeNextStyle = racineStyles.racineDuNode().retourneFirstNodeByNameAndAttributValueExactStrict("style:style", "style:name", nodeNextNameStyle);
|
||||||
|
|
||||||
|
node nodStyle_text_properties = nodStyle.retourneFirstEnfantsByName("style:text-properties");
|
||||||
|
node nodeNextStyle_text_properties = nodeNextStyle.retourneFirstEnfantsByName("style:text-properties");
|
||||||
|
|
||||||
|
nodStyle_text_properties.getAttributs().remove("officeooo:rsid");
|
||||||
|
nodeNextStyle_text_properties.getAttributs().remove("officeooo:rsid");
|
||||||
|
|
||||||
|
int H1 = nodStyle_text_properties.hashCode();
|
||||||
|
int H2 = nodeNextStyle_text_properties.hashCode();
|
||||||
|
|
||||||
|
if(H1==H2) {
|
||||||
|
for (String text : nodeNext.getContenu()) {
|
||||||
|
String current = nod.getContenu().get(nod.getContenu().size()-1);
|
||||||
|
nod.getContenu().set(nod.getContenu().size()-1, current + text);
|
||||||
|
nod.getParent().supprimeFirstNodeEnfant(nodeNext);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -126,9 +126,9 @@ public class analyseLesNodesEnfants {
|
|||||||
node StyleParagraphSujet = null;
|
node StyleParagraphSujet = null;
|
||||||
node StyleParagraphStudent = null;
|
node StyleParagraphStudent = null;
|
||||||
|
|
||||||
|
|
||||||
if(nodSujet.getAttributs().get("analyseStyle")!=null) {
|
if(nodSujet.getAttributs().get("analyseStyle")!=null) {
|
||||||
|
|
||||||
|
|
||||||
if(nodSujet.getAttributs().get("analyseStyle").equals("true") && nodSujet.getAttributs().get("text:style-name")!=null) {
|
if(nodSujet.getAttributs().get("analyseStyle").equals("true") && nodSujet.getAttributs().get("text:style-name")!=null) {
|
||||||
String NameStyleParagrapheSujet = nodSujet.getAttributs().get("text:style-name");
|
String NameStyleParagrapheSujet = nodSujet.getAttributs().get("text:style-name");
|
||||||
StyleParagraphSujet = nodSujetParagraphs.retourneFirstNodeStyleByValueAttribut("style:style", "style:name", NameStyleParagrapheSujet);
|
StyleParagraphSujet = nodSujetParagraphs.retourneFirstNodeStyleByValueAttribut("style:style", "style:name", NameStyleParagrapheSujet);
|
||||||
|
@ -89,7 +89,6 @@ public class evaluationAttribut {
|
|||||||
*/
|
*/
|
||||||
private static node evalLesNodesEnfantsDesAnalyseAuTraversAnalyseStyle(node nodeStyleParagraphSujet, node nodeStyleParagraphStudent, node retour, String nameItem, String nameElt) {
|
private static node evalLesNodesEnfantsDesAnalyseAuTraversAnalyseStyle(node nodeStyleParagraphSujet, node nodeStyleParagraphStudent, node retour, String nameItem, String nameElt) {
|
||||||
|
|
||||||
|
|
||||||
for(int i = 0 ; i < nodeStyleParagraphSujet.getNodes().size();i++) {
|
for(int i = 0 ; i < nodeStyleParagraphSujet.getNodes().size();i++) {
|
||||||
String nameNodeSujet = nodeStyleParagraphSujet.getNodes().get(i).getNomElt();
|
String nameNodeSujet = nodeStyleParagraphSujet.getNodes().get(i).getNomElt();
|
||||||
|
|
||||||
@ -458,10 +457,11 @@ public class evaluationAttribut {
|
|||||||
|
|
||||||
//****************************************************************************
|
//****************************************************************************
|
||||||
//****************************************************************************
|
//****************************************************************************
|
||||||
//** LES METHODES LORSQU'ELLES SONT LONGUES **
|
//** LES METHODES D'EVALUATIONS **
|
||||||
//****************************************************************************
|
//****************************************************************************
|
||||||
//****************************************************************************
|
//****************************************************************************
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Méthode allContent.</br>
|
* Méthode allContent.</br>
|
||||||
* Evaluer le contenu textuel d'un node.</br>
|
* Evaluer le contenu textuel d'un node.</br>
|
||||||
|
@ -10,10 +10,13 @@ import java.io.FileInputStream;
|
|||||||
import java.io.FileNotFoundException;
|
import java.io.FileNotFoundException;
|
||||||
import java.io.InputStreamReader;
|
import java.io.InputStreamReader;
|
||||||
import java.io.UnsupportedEncodingException;
|
import java.io.UnsupportedEncodingException;
|
||||||
|
import java.nio.file.Files;
|
||||||
|
|
||||||
import javax.swing.ImageIcon;
|
import javax.swing.ImageIcon;
|
||||||
import javax.swing.JDialog;
|
import javax.swing.JDialog;
|
||||||
import javax.swing.JFileChooser;
|
import javax.swing.JFileChooser;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
import javax.swing.JOptionPane;
|
import javax.swing.JOptionPane;
|
||||||
import javax.swing.filechooser.FileNameExtensionFilter;
|
import javax.swing.filechooser.FileNameExtensionFilter;
|
||||||
|
|
||||||
@ -55,11 +58,37 @@ public class ChargeFichierXML extends JFileChooser {
|
|||||||
|
|
||||||
|
|
||||||
File file = new File(getSelectedFile().getAbsolutePath());
|
File file = new File(getSelectedFile().getAbsolutePath());
|
||||||
String ext = file.getName().substring(file.getName().lastIndexOf("."));
|
if(Files.isReadable(file.toPath())) {
|
||||||
|
String ext = "";
|
||||||
|
if(file.getName().contains(".")) {
|
||||||
|
ext = file.getName().substring(file.getName().lastIndexOf("."));
|
||||||
if(ext.equals(".xml")){
|
if(ext.equals(".xml")){
|
||||||
openFileXML(file);
|
openFileXML(file);
|
||||||
|
}else {
|
||||||
|
JFrame frame = new JFrame();
|
||||||
|
JLabel texte = new JLabel("<html><h1>Veuillez sélectionner un fichier au format XML.</h1>"
|
||||||
|
+ "<p>"+ file.getAbsolutePath() +"</p></html>");
|
||||||
|
JOptionPane.showMessageDialog(frame, texte);
|
||||||
}
|
}
|
||||||
|
}else {
|
||||||
|
JFrame frame = new JFrame();
|
||||||
|
JLabel texte = new JLabel("<html><h1>Veuillez sélectionner un fichier.</h1>"
|
||||||
|
+ "<p>"+ file.getAbsolutePath() +"</p></html>");
|
||||||
|
JOptionPane.showMessageDialog(frame, texte);
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
JFrame frame = new JFrame();
|
||||||
|
JLabel texte = new JLabel("<html><h1>Problème avec la lecture du fichier</h1>"
|
||||||
|
+ "<p>"+ file.getAbsolutePath() +"</p>"
|
||||||
|
+ "<p>Vous devez avoir des droits pour lire dans ce dossier.</p></html>");
|
||||||
|
JOptionPane.showMessageDialog(frame, texte);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -57,7 +57,7 @@ public class baseDonneesEvaluations extends JFrame { /**
|
|||||||
private JPanel panelGauche = new JPanel();
|
private JPanel panelGauche = new JPanel();
|
||||||
private JLabel lblInformationBaseEvluation = new JLabel("");
|
private JLabel lblInformationBaseEvluation = new JLabel("");
|
||||||
private JButton btnSupprimeEvaluation = new JButton("<html>Supprimer une<br>évaluation</html>");
|
private JButton btnSupprimeEvaluation = new JButton("<html>Supprimer une<br>évaluation</html>");
|
||||||
private JButton btnSaveEvaluation = new JButton("<html>Enregistrer l'évaluation<br>chargée en mémoire.</html>");
|
private JButton btnSaveEvaluation = new JButton("<html>Enregistrer ou renommer<br>l'évaluation chargée en mémoire.</html>");
|
||||||
private JButton btnRenommeFichierAnalyse = new JButton("<html>Renommer le fichier d'analyse<br>de l'évaluation sélectionnée</html>");
|
private JButton btnRenommeFichierAnalyse = new JButton("<html>Renommer le fichier d'analyse<br>de l'évaluation sélectionnée</html>");
|
||||||
private JButton btnRenommerEvaluation = new JButton("<html>Renommer l'évaluation<br>sélectionnée</html>");
|
private JButton btnRenommerEvaluation = new JButton("<html>Renommer l'évaluation<br>sélectionnée</html>");
|
||||||
private JButton btndefautBaseEvaluation = new JButton("<html>Base par défaut</html>");
|
private JButton btndefautBaseEvaluation = new JButton("<html>Base par défaut</html>");
|
||||||
@ -186,7 +186,7 @@ public baseDonneesEvaluations() {
|
|||||||
panelGauche.add(btnSaveEvaluation, "flowy,cell 0 5,growx,aligny top");
|
panelGauche.add(btnSaveEvaluation, "flowy,cell 0 5,growx,aligny top");
|
||||||
|
|
||||||
btnSaveEvaluation.setForeground(new Color(0, 64, 128));
|
btnSaveEvaluation.setForeground(new Color(0, 64, 128));
|
||||||
btnSaveEvaluation.setFont(new Font("Tahoma", Font.BOLD, 15));
|
btnSaveEvaluation.setFont(new Font("Tahoma", Font.BOLD, 14));
|
||||||
btnRenommerEvaluation.setToolTipText("Renommer l'évaluation sélectionnée.");
|
btnRenommerEvaluation.setToolTipText("Renommer l'évaluation sélectionnée.");
|
||||||
btnRenommerEvaluation.setHorizontalAlignment(SwingConstants.LEFT);
|
btnRenommerEvaluation.setHorizontalAlignment(SwingConstants.LEFT);
|
||||||
btnRenommerEvaluation.setIcon(new ImageIcon(baseDonneesEvaluations.class.getResource("/resources/renommeEvaluaton.png")));
|
btnRenommerEvaluation.setIcon(new ImageIcon(baseDonneesEvaluations.class.getResource("/resources/renommeEvaluaton.png")));
|
||||||
|
@ -1,11 +1,16 @@
|
|||||||
package analyseWriter.list;
|
package analyseWriter.list;
|
||||||
|
|
||||||
|
import analyseWriter.fenetres.afficheText;
|
||||||
|
|
||||||
public class descriptionNode {
|
public class descriptionNode {
|
||||||
|
|
||||||
public static String description(String nameNode) {
|
public static String description(String nameNode) {
|
||||||
|
|
||||||
String descriptionNode = "";
|
String descriptionNode = "";
|
||||||
|
|
||||||
|
String imagereanalyseStyle = "<img src="+afficheText.class.getResource("/resources/evaluerstylemini.png").toString()+">";
|
||||||
|
|
||||||
|
|
||||||
if(listeNodeAnalyseWriter.isNodeAnalyseWriter(nameNode)) {
|
if(listeNodeAnalyseWriter.isNodeAnalyseWriter(nameNode)) {
|
||||||
descriptionNode="<p style=\"color:red;\"><b>C'est un node de l'application d'analyseWriter.</b></p>";
|
descriptionNode="<p style=\"color:red;\"><b>C'est un node de l'application d'analyseWriter.</b></p>";
|
||||||
}
|
}
|
||||||
@ -151,7 +156,7 @@ public class descriptionNode {
|
|||||||
return descriptionNode;
|
return descriptionNode;
|
||||||
}
|
}
|
||||||
case "text:line-break": {
|
case "text:line-break": {
|
||||||
descriptionNode = descriptionNode + "<p>Ce node est celui d'un saut à la ligne (retour à la lige).<br>"
|
descriptionNode = descriptionNode + "<p>Ce node est celui d'un saut à la ligne (retour à la ligne).<br>"
|
||||||
+ "<a href=\"http://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-part1.html#__RefHeading__1415206_253892949\">documentation OASIS</a></p>";
|
+ "<a href=\"http://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-part1.html#__RefHeading__1415206_253892949\">documentation OASIS</a></p>";
|
||||||
return descriptionNode;
|
return descriptionNode;
|
||||||
}
|
}
|
||||||
@ -205,7 +210,8 @@ public class descriptionNode {
|
|||||||
return descriptionNode;
|
return descriptionNode;
|
||||||
}
|
}
|
||||||
case "text:span": {
|
case "text:span": {
|
||||||
descriptionNode = descriptionNode + "<p>Formatage local des caractères, vous pouvez analyser le style <b><u>Tx</u></b> ou <b><u>text:style-name</u></b>.</p>";
|
descriptionNode = descriptionNode + "<p>Formatage local des caractères, vous pouvez analyser le style <b><u>Tx</u></b> ou <b><u>text:style-name</u></b>.</p>"
|
||||||
|
+ "<p>"+imagereanalyseStyle +" La méthode \"analyseStyle\" peut être utilisée.</p>";
|
||||||
return descriptionNode;
|
return descriptionNode;
|
||||||
}
|
}
|
||||||
case "style:default-style": {
|
case "style:default-style": {
|
||||||
|
@ -25,13 +25,6 @@ public class listeAttributWriterPasEvaluableAvecCodeEvaluateur {
|
|||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// if(nameAttribut.equals("style:name")) return true;
|
|
||||||
// if(nameAttribut.equals("style:page-layout-name")) return true;
|
|
||||||
// if(nameAttribut.equals("style:family")) return true;
|
|
||||||
// if(nameAttribut.equals("text:name")) return true;
|
|
||||||
// if(nameAttribut.equals("text:style-name")) return true;
|
|
||||||
// return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user