MAJ V4.5.0
This commit is contained in:
parent
9af2818859
commit
f93042bf4f
@ -8,6 +8,6 @@
|
||||
</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/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"/>
|
||||
</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.calcul.formatDateWriter;
|
||||
import analyseWriter.calcul.fusionStyleTextSpan;
|
||||
import analyseWriter.evaluer.evaluation;
|
||||
import cXML.Run;
|
||||
import cXML.Run.UserStatus;
|
||||
@ -621,7 +622,6 @@ public class meptl {
|
||||
|
||||
}
|
||||
|
||||
|
||||
// construction du node de l'étudiant
|
||||
node structurePage = new node();
|
||||
structurePage.setNomElt("structurepage");
|
||||
@ -630,8 +630,6 @@ public class meptl {
|
||||
structurePage.setClose(true);
|
||||
|
||||
|
||||
|
||||
|
||||
node fichier = new node();
|
||||
fichier.setNomElt("fichier");
|
||||
|
||||
@ -664,16 +662,10 @@ public class meptl {
|
||||
fichier.getNodes().add(nodframe);
|
||||
|
||||
fichier.getNodes().add(nodsection);
|
||||
// nodtableaux = a.numeroteNameNode(nodtableaux, "0");
|
||||
fichier.getNodes().add(nodtableaux);
|
||||
// nodbiblio = a.numeroteNameNode(nodbiblio, "0"); //ajoute les numéros d'index et des attributs
|
||||
fichier.getNodes().add(nodbiblio);
|
||||
//nodtable = a.numeroteNameNode(nodtable, "0"); //ajoute les numéros d'index et des attributs
|
||||
fichier.getNodes().add(nodtable);
|
||||
// nodillustrations = a.numeroteNameNode(nodillustrations, "0"); //ajoute les numéros d'index et des attributs
|
||||
fichier.getNodes().add(nodillustrations);
|
||||
|
||||
structurePage = a.numeroteNameNode(structurePage,""); //ajoute les numéros d'index et des attributs
|
||||
fichier.getNodes().add(structurePage);
|
||||
|
||||
fichier.getNodes().add(nodhistorique);
|
||||
@ -681,6 +673,16 @@ public class meptl {
|
||||
fichier = attributLesParentsAuxNodes(fichier);
|
||||
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;
|
||||
}
|
||||
|
||||
|
@ -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")
|
||||
||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();
|
||||
DefaultMutableTreeNode nodMu = analyseWriter.fenetres.create.getSelectNode();
|
||||
|
@ -3,6 +3,8 @@ package analyseWriter.baseEvaluations;
|
||||
import java.text.ParseException;
|
||||
import java.util.Date;
|
||||
|
||||
import javax.swing.JOptionPane;
|
||||
|
||||
import analyseWriter.MEPTL.commandes;
|
||||
import cXML.node;
|
||||
|
||||
@ -40,6 +42,11 @@ public class creerNouvelleEvaluation {
|
||||
|
||||
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
|
||||
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 StyleParagraphStudent = null;
|
||||
|
||||
|
||||
if(nodSujet.getAttributs().get("analyseStyle")!=null) {
|
||||
|
||||
|
||||
if(nodSujet.getAttributs().get("analyseStyle").equals("true") && nodSujet.getAttributs().get("text:style-name")!=null) {
|
||||
String NameStyleParagrapheSujet = nodSujet.getAttributs().get("text:style-name");
|
||||
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) {
|
||||
|
||||
|
||||
for(int i = 0 ; i < nodeStyleParagraphSujet.getNodes().size();i++) {
|
||||
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>
|
||||
* Evaluer le contenu textuel d'un node.</br>
|
||||
|
@ -10,10 +10,13 @@ import java.io.FileInputStream;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.InputStreamReader;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.nio.file.Files;
|
||||
|
||||
import javax.swing.ImageIcon;
|
||||
import javax.swing.JDialog;
|
||||
import javax.swing.JFileChooser;
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.filechooser.FileNameExtensionFilter;
|
||||
|
||||
@ -55,11 +58,37 @@ public class ChargeFichierXML extends JFileChooser {
|
||||
|
||||
|
||||
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")){
|
||||
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 JLabel lblInformationBaseEvluation = new JLabel("");
|
||||
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 btnRenommerEvaluation = new JButton("<html>Renommer l'évaluation<br>sélectionnée</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");
|
||||
|
||||
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.setHorizontalAlignment(SwingConstants.LEFT);
|
||||
btnRenommerEvaluation.setIcon(new ImageIcon(baseDonneesEvaluations.class.getResource("/resources/renommeEvaluaton.png")));
|
||||
|
@ -1,11 +1,16 @@
|
||||
package analyseWriter.list;
|
||||
|
||||
import analyseWriter.fenetres.afficheText;
|
||||
|
||||
public class descriptionNode {
|
||||
|
||||
public static String description(String nameNode) {
|
||||
|
||||
String descriptionNode = "";
|
||||
|
||||
String imagereanalyseStyle = "<img src="+afficheText.class.getResource("/resources/evaluerstylemini.png").toString()+">";
|
||||
|
||||
|
||||
if(listeNodeAnalyseWriter.isNodeAnalyseWriter(nameNode)) {
|
||||
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;
|
||||
}
|
||||
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>";
|
||||
return descriptionNode;
|
||||
}
|
||||
@ -205,7 +210,8 @@ public class descriptionNode {
|
||||
return descriptionNode;
|
||||
}
|
||||
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;
|
||||
}
|
||||
case "style:default-style": {
|
||||
|
@ -25,13 +25,6 @@ public class listeAttributWriterPasEvaluableAvecCodeEvaluateur {
|
||||
default:
|
||||
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