MAJ (4.3.1)

This commit is contained in:
pablo rodriguez 2022-11-22 10:58:30 +01:00
parent 963098c9de
commit 313e65c6f8
41 changed files with 54 additions and 16 deletions

Binary file not shown.

Binary file not shown.

1
bin/.gitignore vendored
View File

@ -1 +0,0 @@
/fenetres/

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -828,14 +828,16 @@ public class meptl {
textSoftPageBreak.setNomElt("saut:automatique"); textSoftPageBreak.setNomElt("saut:automatique");
for(int v = 0 ; v <= indexBreak; v++) { for(int v = 0 ; v <= indexBreak; v++) {
if(nodstructure.getNodes().get(j).getContenu().get(v)!=null) { if(!nodstructure.getNodes().get(j).getContenu().isEmpty()) {
if(!nodstructure.getNodes().get(j).getContenu().get(v).isEmpty()) { if(nodstructure.getNodes().get(j).getContenu().get(v)!=null) {
ContenusVidesAvantBreak=false; if(!nodstructure.getNodes().get(j).getContenu().get(v).isEmpty()) {
ContenusVidesAvantBreak=false;
}
} }
} }
} }
if(!ContenusVidesAvantBreak) { if(!ContenusVidesAvantBreak && nodstructure.getNodes().get(j)!=null) {
// Ajoute dans le node textSoftPageBreak // Ajoute dans le node textSoftPageBreak
for(int v = indexBreak+1 ; v <= nodstructure.getNodes().get(j).getNodes().size(); v++) { for(int v = indexBreak+1 ; v <= nodstructure.getNodes().get(j).getNodes().size(); v++) {
if(nodstructure.getNodes().get(j).getContenu().size()>v) { if(nodstructure.getNodes().get(j).getContenu().size()>v) {

View File

@ -13,11 +13,11 @@ public class analyseLesNodesEnfants {
* @param PourAnalyse : Le node pour écrire le node d'analyse contenant tous les résultats * @param PourAnalyse : Le node pour écrire le node d'analyse contenant tous les résultats
* @param nomDuNodePourAnalyse : Le nom du node de l'analyse pour cette partie (exemple ana:page) * @param nomDuNodePourAnalyse : Le nom du node de l'analyse pour cette partie (exemple ana:page)
* @param nod2Student : Le node de l'étudiant le plus bas niveau (le dernier node trouvé) * @param nod2Student : Le node de l'étudiant le plus bas niveau (le dernier node trouvé)
* @param nod1Student : Le node de l'étudaint de niveau intermédiaire contenant le node nod2Student * @param nod1Student : Le node de l'étudiant de niveau intermédiaire contenant le node nod2Student
* @param nodStudent : Le node de l'étudiant le plus haut niveau contenant les nodes nod1Student & nod2Student * @param nodStudent : Le node de l'étudiant le plus haut niveau contenant les nodes nod1Student & nod2Student
* @param nodSujet : le node sujet. * @param nodSujet : le node sujet.
* @param nodSujetParagraphs : node contenant l'ensemble des nodes styles de paragraphes du sujet. * @param nodSujetParagraphs : node contenant l'ensemble des nodes styles de paragraphes du sujet.
* @param nodStudentParagraphes : node contenant l'ensemble des nodes styles de paragarphes de l'étudiants. * @param nodStudentParagraphes : node contenant l'ensemble des nodes styles de paragraphes de l'étudiant.
* @param a : Objet de cXML.Run * @param a : Objet de cXML.Run
* @return le node pour analyse PourAnalyse * @return le node pour analyse PourAnalyse
*/ */

View File

@ -15,7 +15,6 @@ import javax.swing.ImageIcon;
import javax.swing.JOptionPane; import javax.swing.JOptionPane;
import javax.swing.KeyStroke; import javax.swing.KeyStroke;
import cXML.Run;
import cXML.node; import cXML.node;

View File

@ -62,6 +62,7 @@ public class evaluate extends JFrame {
private JLabel lblFileAnalyse; private JLabel lblFileAnalyse;
private JLabel lblFichierCSV; private JLabel lblFichierCSV;
private JLabel lblFichierSVG; private JLabel lblFichierSVG;
private JLabel lblChargementFichierCSV;
private JCheckBox chckbxfichiersEtudiants; private JCheckBox chckbxfichiersEtudiants;
private JCheckBox chckbxZipfeedback; private JCheckBox chckbxZipfeedback;
private JCheckBox chckbxnoFeedback; private JCheckBox chckbxnoFeedback;
@ -102,7 +103,7 @@ public class evaluate extends JFrame {
JPanel panelWest = new JPanel(); JPanel panelWest = new JPanel();
contentPane.add(panelWest, BorderLayout.WEST); contentPane.add(panelWest, BorderLayout.WEST);
panelWest.setLayout(new MigLayout("", "[309px][]", "[38.00][71px][71px][][71px][][74.00][][]")); panelWest.setLayout(new MigLayout("", "[309px][]", "[38.00][71px][71px][][][71px][][74.00][][]"));
JLabel lblTITRE = new JLabel("<HTML><U>PARAMETRES</U></HTML>"); JLabel lblTITRE = new JLabel("<HTML><U>PARAMETRES</U></HTML>");
lblTITRE.setForeground(Color.RED); lblTITRE.setForeground(Color.RED);
@ -129,13 +130,16 @@ public class evaluate extends JFrame {
chckbxfichiersEtudiants.setToolTipText("Cochez si les fichiers des étudiants ne sont pas dans des dossier nominatifs"); chckbxfichiersEtudiants.setToolTipText("Cochez si les fichiers des étudiants ne sont pas dans des dossier nominatifs");
panelWest.add(chckbxfichiersEtudiants, "flowy,cell 0 2,grow"); panelWest.add(chckbxfichiersEtudiants, "flowy,cell 0 2,grow");
lblChargementFichierCSV = new JLabel(" Chargement de la liste des étudiants");
panelWest.add(lblChargementFichierCSV, "cell 0 3,alignx left,aligny center");
lblFichierCSV = new JLabel("<HTML><B><U>Fichier CSV liste des étudiants</U></B></HTML> :"); lblFichierCSV = new JLabel("<HTML><B><U>Fichier CSV liste des étudiants</U></B></HTML> :");
lblFichierCSV.setFont(new Font("Tahoma", Font.BOLD, 14)); lblFichierCSV.setFont(new Font("Tahoma", Font.BOLD, 14));
panelWest.add(lblFichierCSV, "flowy,cell 0 4,grow"); panelWest.add(lblFichierCSV, "flowy,cell 0 5,grow");
lblFichierSVG = new JLabel("<HTML><B><U>Fichier SVG</U></B> :</HTML>"); lblFichierSVG = new JLabel("<HTML><B><U>Fichier SVG</U></B> :</HTML>");
lblFichierSVG.setFont(new Font("Tahoma", Font.BOLD, 14)); lblFichierSVG.setFont(new Font("Tahoma", Font.BOLD, 14));
panelWest.add(lblFichierSVG, "flowy,cell 0 6,growx"); panelWest.add(lblFichierSVG, "flowy,cell 0 7,growx");
chckCSVNotes = new JCheckBox("Créer un fichier CSV des notes"); chckCSVNotes = new JCheckBox("Créer un fichier CSV des notes");
chckCSVNotes.addChangeListener(new ChangeListener() { chckCSVNotes.addChangeListener(new ChangeListener() {
@ -148,7 +152,7 @@ public class evaluate extends JFrame {
} }
}); });
chckCSVNotes.setToolTipText("Cochez si vous voulez importer les notes dans un fichier CSV."); chckCSVNotes.setToolTipText("Cochez si vous voulez importer les notes dans un fichier CSV.");
panelWest.add(chckCSVNotes, "cell 0 4,grow"); panelWest.add(chckCSVNotes, "cell 0 5,grow");
lblPath = new JLabel(); lblPath = new JLabel();
lblPath.setHorizontalAlignment(SwingConstants.LEFT); lblPath.setHorizontalAlignment(SwingConstants.LEFT);
@ -224,7 +228,7 @@ public class evaluate extends JFrame {
}); });
chckbxNewLogo.setToolTipText("Cochez si vous voulez remplacer le logo par celui au-dessus."); chckbxNewLogo.setToolTipText("Cochez si vous voulez remplacer le logo par celui au-dessus.");
chckbxNewLogo.setFont(new Font("Tahoma", Font.PLAIN, 12)); chckbxNewLogo.setFont(new Font("Tahoma", Font.PLAIN, 12));
panelWest.add(chckbxNewLogo, "cell 0 6"); panelWest.add(chckbxNewLogo, "cell 0 7");
chckbxNoLogo = new JCheckBox("Pas de logo"); chckbxNoLogo = new JCheckBox("Pas de logo");
chckbxNoLogo.addChangeListener(new ChangeListener() { chckbxNoLogo.addChangeListener(new ChangeListener() {
@ -238,7 +242,7 @@ public class evaluate extends JFrame {
}); });
chckbxNoLogo.setToolTipText("Cochez si vous voulez pas de logo dans les feedbacks."); chckbxNoLogo.setToolTipText("Cochez si vous voulez pas de logo dans les feedbacks.");
chckbxNoLogo.setFont(new Font("Tahoma", Font.PLAIN, 12)); chckbxNoLogo.setFont(new Font("Tahoma", Font.PLAIN, 12));
panelWest.add(chckbxNoLogo, "cell 0 6"); panelWest.add(chckbxNoLogo, "cell 0 7");
JPanel panelCentre = new JPanel(); JPanel panelCentre = new JPanel();
@ -371,6 +375,10 @@ public class evaluate extends JFrame {
btnEvaluerLesFichiers.setHideActionText(true); btnEvaluerLesFichiers.setHideActionText(true);
JButton btnFichierCSV = toolBar.add(actChargeListeEtudiantCSV ); JButton btnFichierCSV = toolBar.add(actChargeListeEtudiantCSV );
btnFichierCSV.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
});
btnFichierCSV.setHideActionText(true); btnFichierCSV.setHideActionText(true);
btnFichierCSV.setIcon(new ImageIcon(evaluate.class.getResource("/resources/fichierCSV.png"))); btnFichierCSV.setIcon(new ImageIcon(evaluate.class.getResource("/resources/fichierCSV.png")));
toolBar.add(btnFichierCSV); toolBar.add(btnFichierCSV);
@ -395,6 +403,10 @@ public class evaluate extends JFrame {
toolBar.addSeparator(); toolBar.addSeparator();
JButton btnSelectFolder = toolBar.add(actSelectFolder); JButton btnSelectFolder = toolBar.add(actSelectFolder);
btnSelectFolder.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
});
btnSelectFolder.setIcon(new ImageIcon(evaluate.class.getResource("/resources/open.png"))); btnSelectFolder.setIcon(new ImageIcon(evaluate.class.getResource("/resources/open.png")));
btnSelectFolder.setHideActionText(true); btnSelectFolder.setHideActionText(true);
toolBar.add(btnSelectFolder); toolBar.add(btnSelectFolder);
@ -1034,6 +1046,14 @@ public class evaluate extends JFrame {
refreshLabel(); refreshLabel();
} }
System.out.println( "Charge la liste des étudiants." ); System.out.println( "Charge la liste des étudiants." );
if(commandes.fourniCSV) {
lblChargementFichierCSV.setBackground(new Color(40,180,40));
lblChargementFichierCSV.setOpaque(true);
lblFichierCSV.setText("<HTML><B><U>Fichier CSV</U></B> : " + commandes.nameCSV + "</HTML>");
}else {
lblChargementFichierCSV.setOpaque(false);
lblFichierCSV.setText("<HTML><B><U>Fichier CSV</U></B></HTML>");
}
} }
}; };

View File

@ -10,7 +10,9 @@ public class descriptionNode {
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>";
} }
//*******************************
//-- node d'analyseWriter //-- node d'analyseWriter
//*******************************
if(nameNode.equals("fichier")) descriptionNode = descriptionNode + "<p>C'est le node parent de tous les nodes de l'application." if(nameNode.equals("fichier")) descriptionNode = descriptionNode + "<p>C'est le node parent de tous les nodes de l'application."
+ "<br>Ce le node \"fichier\" doit être évalué pour permettre l'évaluation de tous ses nodes." + "<br>Ce le node \"fichier\" doit être évalué pour permettre l'évaluation de tous ses nodes."
@ -98,8 +100,15 @@ public class descriptionNode {
+ "<br>Si le node \"tableaux\" est évalué, alors par défaut, il apparaîtra dans les feedbacks des étudiants comme une partie principale avec un lien de menu.</p>"; + "<br>Si le node \"tableaux\" est évalué, alors par défaut, il apparaîtra dans les feedbacks des étudiants comme une partie principale avec un lien de menu.</p>";
if(nameNode.equals("saut:automatique")) descriptionNode = descriptionNode + "<p>Ce node correspond au node <b>\"text:soft-page-break\"</b> sur Writer. Il indique un saut de page automatique."
+ "<br>C'est à dire qu'un node <b>\"text:p\"</b> (un paragraphe) a été scindé par un saut de page. Sur Writer les node <b>\"text:soft-page-break\"</b> sont des marqueurs de début de page mais ne peuvent pas contenir du texte, contrairement au node \"saut:automatique\".</p>";
//****************************************
//--- Les nodes de LibreOffice Writer //--- Les nodes de LibreOffice Writer
//****************************************
if(nameNode.equals("text:p")) descriptionNode = descriptionNode + "<p>Ce node est celui d'un paragraphe du document." if(nameNode.equals("text:p")) descriptionNode = descriptionNode + "<p>Ce node est celui d'un paragraphe du document."
+ "<br>Les étudiants peuvent insérer dans leurs fichiers des paragraphes." + "<br>Les étudiants peuvent insérer dans leurs fichiers des paragraphes."
@ -144,14 +153,23 @@ public class descriptionNode {
if(nameNode.equals("text:soft-page-break")) descriptionNode = descriptionNode + "<p>Saut de page automatique.</p>"; if(nameNode.equals("text:soft-page-break")) descriptionNode = descriptionNode + "<p>Saut de page automatique.</p>";
if(nameNode.equals("style:master-page")) descriptionNode = descriptionNode + "<p>Spécifie les propriétés de l'image.</p>"; if(nameNode.equals("style:master-page")) descriptionNode = descriptionNode + "<p>Spécifie les propriétés de l'image.</p>";
if(nameNode.equals("text:section")) descriptionNode = descriptionNode + "<p>Spécifie le nom de la section, la condition de masquage, le contenu textuel, ...</p>"; if(nameNode.equals("text:section")) descriptionNode = descriptionNode + "<p>Spécifie le nom de la section, la condition de masquage, le contenu textuel, ...</p>";
if(nameNode.equals("text:span")) descriptionNode = descriptionNode + "<p>Formatage local des caractères, vous pouvez analyser le style Tx.</p>"; if(nameNode.equals("text:span")) descriptionNode = descriptionNode + "<p>Formatage local des caractères, vous pouvez analyser le style Tx.</p>";
if(nameNode.equals("style:default-style")) descriptionNode = descriptionNode + "<p>Ce style de paragraphe correspond au style général par défaut."
+ "Tous les autres styles hérite automatiquement de ce style lorsqu'un attribut n'est pas spécifié dans le node du style.<br></p>";
if(nameNode.equals("style:default-style")) descriptionNode = descriptionNode + "<p>Ce style de paragraphe correspond au style général par défaut."
+ "Tous les autres styles héritent automatiquement de ce style lorsqu'un attribut n'est pas spécifié dans le node du style."
+ "<br>"
+ "<b><u>Il ne faut pas le confondre</u></b> avec le node de paragraphe (\"style:style\") qui porte le nom \"Standard\" qui est le style de paragraphe par défaut."
+ "<br>Le style \"standard\" correspond dans le volet des styles au \"Style de paragragraphe par défaut\".</p>";
return descriptionNode; return descriptionNode;