MAJ V4.5.0
@ -12,6 +12,6 @@
|
||||
<classpathentry kind="lib" path="C:/Users/pabr6/git/analyseWriter/MEPTL/miglayout15-swing.jar"/>
|
||||
<classpathentry kind="lib" path="jgoodies-forms-1.8.0.jar" sourcepath="jgoodies-forms-1.8.0-sources.jar"/>
|
||||
<classpathentry kind="lib" path="C:/Users/pabr6/eclipse-workspace/Exportation documentation analyseWriter/plugins/documentation.analyseWriter_1.0.0.202212032022.jar"/>
|
||||
<classpathentry kind="lib" path="C:/Users/pabr6/eclipse-workspace/cXML.jar" sourcepath="/cXML"/>
|
||||
<classpathentry kind="lib" path="C:/Users/pabr6/eclipse-workspace/cXML.jar"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
||||
|
58
bin/.gitignore
vendored
@ -4,7 +4,56 @@
|
||||
/baseEvaluations/
|
||||
/calcul/
|
||||
/evaluer/
|
||||
/evaluertrue.png
|
||||
/evaluertruemini.png
|
||||
/evalwriter.ico
|
||||
/evalwriter.png
|
||||
/evalwriter.svg
|
||||
/evalwriter32.png
|
||||
/exit.png
|
||||
/exit.svg
|
||||
/exitmini.png
|
||||
/expandAll.svg
|
||||
/expandNode.svg
|
||||
/expandall.png
|
||||
/expandallmini.png
|
||||
/expandnode.png
|
||||
/expandnodemini.png
|
||||
/extraireFichierAnalyse.png
|
||||
/extraireFichierAnalyseXML.svg
|
||||
/extraireFichierAnalysemini.png
|
||||
/false.png
|
||||
/false.svg
|
||||
/falsemini.png
|
||||
/feedback.png
|
||||
/feedback.svg
|
||||
/feedbackmini.png
|
||||
/feedbackstudent.png
|
||||
/feedbackstudentmini.png
|
||||
/fenetres/
|
||||
/fichierAnalyse.png
|
||||
/fichierAnalyseInfo.png
|
||||
/fichierAnalyseInfo2.png
|
||||
/fichierAnalyseInfo2max.png
|
||||
/fichierAnalyseInfo2mini.png
|
||||
/fichierAnalyseInfomax.png
|
||||
/fichierAnalyseInfomini.png
|
||||
/fichierAnalyseModif.png
|
||||
/fichierAnalyseModifmax.png
|
||||
/fichierAnalyseModifmini.png
|
||||
/fichierAnalyseRenomme.png
|
||||
/fichierAnalyseRenommemini.png
|
||||
/fichierAnalysemax.png
|
||||
/fichierAnalysemini.png
|
||||
/fichierCSV.png
|
||||
/fichierCSVInfo.png
|
||||
/fichierCSVInfoXML.png
|
||||
/fichierCSVInfoXMLmax.png
|
||||
/fichierCSVInfoXMLmini.png
|
||||
/fichierCSVInfomax.png
|
||||
/fichierCSVInfomini.png
|
||||
/fichierCSV_delete.png
|
||||
/fichierCSV_deletemini.png
|
||||
/fichierCSVmax.png
|
||||
/fichierCSVmini.png
|
||||
/fichierODF.png
|
||||
@ -299,12 +348,3 @@
|
||||
/zipstudent.png
|
||||
/zipstudent.svg
|
||||
/zipstudentmini.png
|
||||
/resources/
|
||||
/actEvalEnteteActivefalse.png
|
||||
/actEvalEnteteActivefalsemini.png
|
||||
/actEvalEnteteActivetrue.png
|
||||
/actEvalEnteteActivetruemini.png
|
||||
/actEvalEntetePasActivefalse.png
|
||||
/actEvalEntetePasActivefalsemini.png
|
||||
/actEvalEntetePasActivetrue.png
|
||||
/actEvalEntetePasActivetruemini.png
|
||||
|
BIN
bin/actEvalEnteteActivefalse.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
bin/actEvalEnteteActivefalsemini.png
Normal file
After Width: | Height: | Size: 678 B |
BIN
bin/actEvalEnteteActivetrue.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
bin/actEvalEnteteActivetruemini.png
Normal file
After Width: | Height: | Size: 645 B |
BIN
bin/actEvalEntetePasActivefalse.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
bin/actEvalEntetePasActivefalsemini.png
Normal file
After Width: | Height: | Size: 964 B |
BIN
bin/actEvalEntetePasActivetrue.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
bin/actEvalEntetePasActivetruemini.png
Normal file
After Width: | Height: | Size: 932 B |
@ -4,7 +4,7 @@
|
||||
inkscape:export-xdpi="51.200001"
|
||||
inkscape:export-filename="evalnode."
|
||||
sodipodi:docname="evalnode.svg"
|
||||
inkscape:version="1.1.2 (b8e25be833, 2022-02-05)"
|
||||
inkscape:version="1.3 (0e150ed6c4, 2023-07-21)"
|
||||
id="svg8"
|
||||
version="1.1"
|
||||
viewBox="0 0 11.90625 11.90625"
|
||||
@ -37,8 +37,8 @@
|
||||
inkscape:snap-global="false"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-height="1009"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-height="1057"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:object-nodes="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
@ -50,9 +50,9 @@
|
||||
inkscape:document-rotation="0"
|
||||
inkscape:current-layer="g1030"
|
||||
inkscape:document-units="mm"
|
||||
inkscape:cy="28.82167"
|
||||
inkscape:cx="34.029324"
|
||||
inkscape:zoom="11.137453"
|
||||
inkscape:cy="60.099364"
|
||||
inkscape:cx="33.960257"
|
||||
inkscape:zoom="14.575861"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
borderopacity="1.0"
|
||||
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
BIN
bin/resources/actEvalEnteteActivefalse.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
bin/resources/actEvalEnteteActivefalsemini.png
Normal file
After Width: | Height: | Size: 678 B |
BIN
bin/resources/actEvalEnteteActivetrue.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
bin/resources/actEvalEnteteActivetruemini.png
Normal file
After Width: | Height: | Size: 645 B |
BIN
bin/resources/actEvalEntetePasActivefalse.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
bin/resources/actEvalEntetePasActivefalsemini.png
Normal file
After Width: | Height: | Size: 964 B |
BIN
bin/resources/actEvalEntetePasActivetrue.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
bin/resources/actEvalEntetePasActivetruemini.png
Normal file
After Width: | Height: | Size: 932 B |
BIN
bin/resources/evalFirstChildfalse.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
bin/resources/evalFirstChildfalsemini.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
bin/resources/evalFirstChildtrue.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
bin/resources/evalFirstChildtruemini.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
bin/resources/evalLastChildfalse.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
bin/resources/evalLastChildfalsemini.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
bin/resources/evalLastChildtrue.png
Normal file
After Width: | Height: | Size: 2.0 KiB |
BIN
bin/resources/evalLastChildtruemini.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
bin/resources/evalformatagedirectfalse.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
bin/resources/evalformatagedirectfalsemini.png
Normal file
After Width: | Height: | Size: 712 B |
BIN
bin/resources/evalformatagedirecttrue.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
bin/resources/evalformatagedirecttruemini.png
Normal file
After Width: | Height: | Size: 687 B |
BIN
bin/resources/evalnamepagefalse.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
bin/resources/evalnamepagefalsemini.png
Normal file
After Width: | Height: | Size: 867 B |
BIN
bin/resources/evalnamepagetrue.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
bin/resources/evalnamepagetruemini.png
Normal file
After Width: | Height: | Size: 829 B |
BIN
bin/resources/evalnodefalse.png
Normal file
After Width: | Height: | Size: 2.2 KiB |
BIN
bin/resources/evalnodefalsemini.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
bin/resources/evalnodetrue.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
bin/resources/evalnodetruemini.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
bin/resources/evalnumeroabsoluepagefalse.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
bin/resources/evalnumeroabsoluepagefalsemini.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
bin/resources/evalnumeroabsoluepagetrue.png
Normal file
After Width: | Height: | Size: 2.0 KiB |
BIN
bin/resources/evalnumeroabsoluepagetruemini.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
bin/resources/evalnumeropageancragefalse.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
bin/resources/evalnumeropageancragefalsemini.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
bin/resources/evalnumeropageancragetrue.png
Normal file
After Width: | Height: | Size: 2.0 KiB |
BIN
bin/resources/evalnumeropageancragetruemini.gng
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
bin/resources/evalnumeropageancragetruemini.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
bin/resources/evalnumeropageancragetruemini.pngng
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
bin/resources/evalnumeropagefalse.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
bin/resources/evalnumeropagefalsemini.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
bin/resources/evalnumeropagetrue.png
Normal file
After Width: | Height: | Size: 2.0 KiB |
BIN
bin/resources/evalnumeropagetruemini.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
bin/resources/evalpasparagraphevidefalse.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
bin/resources/evalpasparagraphevidefalsemini.png
Normal file
After Width: | Height: | Size: 927 B |
BIN
bin/resources/evalpasparagraphevidetrue.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
bin/resources/evalpasparagraphevidetruemini.png
Normal file
After Width: | Height: | Size: 930 B |
BIN
bin/resources/evalplacementparagraphefalse.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
bin/resources/evalplacementparagraphefalsemini.png
Normal file
After Width: | Height: | Size: 986 B |
BIN
bin/resources/evalplacementparagraphetrue.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
bin/resources/evalplacementparagraphetruemini.png
Normal file
After Width: | Height: | Size: 954 B |
BIN
bin/resources/sautpagecolonnefalse.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
bin/resources/sautpagecolonnefalsemini.png
Normal file
After Width: | Height: | Size: 766 B |
BIN
bin/resources/sautpagecolonnetrue.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
bin/resources/sautpagecolonnetruemini.png
Normal file
After Width: | Height: | Size: 732 B |
1
fichier analyse - Oxyneuf - version modifier pablo.xml
Normal file
@ -4,7 +4,7 @@
|
||||
inkscape:export-xdpi="51.200001"
|
||||
inkscape:export-filename="evalnode."
|
||||
sodipodi:docname="evalnode.svg"
|
||||
inkscape:version="1.1.2 (b8e25be833, 2022-02-05)"
|
||||
inkscape:version="1.3 (0e150ed6c4, 2023-07-21)"
|
||||
id="svg8"
|
||||
version="1.1"
|
||||
viewBox="0 0 11.90625 11.90625"
|
||||
@ -37,8 +37,8 @@
|
||||
inkscape:snap-global="false"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-height="1009"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-height="1057"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:object-nodes="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
@ -50,9 +50,9 @@
|
||||
inkscape:document-rotation="0"
|
||||
inkscape:current-layer="g1030"
|
||||
inkscape:document-units="mm"
|
||||
inkscape:cy="28.82167"
|
||||
inkscape:cx="34.029324"
|
||||
inkscape:zoom="11.137453"
|
||||
inkscape:cy="60.099364"
|
||||
inkscape:cx="33.960257"
|
||||
inkscape:zoom="14.575861"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
borderopacity="1.0"
|
||||
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
@ -153,7 +153,10 @@ public class commandes {
|
||||
public static StringBuilder message = new StringBuilder();
|
||||
|
||||
//** base de données des évaluations
|
||||
public static String PathBaseEvaluations = Paths.get("").toAbsolutePath().toString(); //Chemin vers la base de données
|
||||
/**
|
||||
* Chemin vers le dossier de la base de données
|
||||
*/
|
||||
public static String PathBaseEvaluations = Paths.get("").toAbsolutePath().toString();
|
||||
public static boolean PathBaseEvaluationDefaut = true; //Flag si ce n'est pas le chemin par défaut vers la base de données
|
||||
public static String NameBaseEvaluations="base_evaluations_analyseWriter.xml"; //Nom par défaut de la base de données
|
||||
public static String NameEvaluationCharger = "";
|
||||
|
@ -841,7 +841,7 @@ public class verificationFichierAnalyse_node_commandesSujet {
|
||||
if(maj) {
|
||||
|
||||
commandes.sujet.getAttributs().put("hash", commandes.hash);
|
||||
commandes.sujet.getAttributs().put("analysis_filename", commandes.nameSujet);
|
||||
if( commandes.nameSujet!=null)commandes.sujet.getAttributs().put("analysis_filename", commandes.nameSujet);
|
||||
|
||||
commandes.message.append("<hr><h1>Le hash du code de l'évaluation ou le nom du fichier d'analyse</h1><hr>");
|
||||
commandes.message.append("<p> a été mise à jour dans le fichier d'analyse.</p>");
|
||||
|
@ -22,12 +22,13 @@ public class verificationNewVersion {
|
||||
// String[] Version = commandes.version.split("\\.")
|
||||
// int versionIntegerApplication = Integer.valueOf( Version[0] + Version[1] + Version[2]);
|
||||
|
||||
HttpURLConnection conn = null ;
|
||||
try {
|
||||
URL url = new URL("https://forge.chapril.org/pablo/analyseWriter/releases");
|
||||
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
|
||||
conn = (HttpURLConnection) url.openConnection();
|
||||
conn.setRequestMethod("GET");
|
||||
|
||||
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
|
||||
|
||||
String line;
|
||||
StringBuilder content = new StringBuilder();
|
||||
|
||||
@ -35,7 +36,7 @@ public class verificationNewVersion {
|
||||
content.append(line);
|
||||
}
|
||||
reader.close();
|
||||
|
||||
conn.disconnect();
|
||||
|
||||
// Motif de la sous-chaîne recherchée Vx.x.x
|
||||
String pattern = "V\\d+\\.\\d+\\.\\d+";
|
||||
@ -69,7 +70,7 @@ public class verificationNewVersion {
|
||||
}
|
||||
}
|
||||
} catch (IOException e) {
|
||||
|
||||
if(conn!=null) conn.disconnect();
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
package evaluer;
|
||||
|
||||
|
||||
import java.text.Normalizer;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Dictionary;
|
||||
import java.util.Hashtable;
|
||||
@ -810,7 +811,7 @@ public class evaluation {
|
||||
* @param B
|
||||
* @return
|
||||
*/
|
||||
private static String TraitementOUSupprimeChiffreEtsansCase(String A, String B) {
|
||||
private static String TraitementOUSupprimeChiffreEtsansCase(String A, String Sujet) {
|
||||
if(A==null) A="none";
|
||||
if(A.isEmpty()) A="none";
|
||||
|
||||
@ -822,15 +823,16 @@ public class evaluation {
|
||||
A= m.replaceAll("");
|
||||
A=A.toLowerCase();
|
||||
|
||||
m = p.matcher(B);
|
||||
B = m.replaceAll("");
|
||||
B= B.toLowerCase();
|
||||
m = p.matcher(Sujet);
|
||||
Sujet = m.replaceAll("");
|
||||
Sujet= Sujet.toLowerCase();
|
||||
|
||||
|
||||
|
||||
A = NetTexte(A);
|
||||
|
||||
|
||||
String TextB[] = B.split("↑");
|
||||
String TextB[] = Sujet.split("↑");
|
||||
for(int i=0;i<TextB.length;i++) {
|
||||
TextB[i] = NetTexte(TextB[i]);
|
||||
if(A.equals(TextB[i].toLowerCase())) return "Correct : ";
|
||||
@ -918,9 +920,13 @@ public class evaluation {
|
||||
|
||||
A=A.replaceAll("[0-9]", "");
|
||||
A=A.replace(" ", "");
|
||||
|
||||
A=A.toLowerCase();
|
||||
|
||||
// Normaliser la chaîne en forme décomposée pour séparer les caractères accentués
|
||||
String normalized = Normalizer.normalize(A, Normalizer.Form.NFD);
|
||||
// Supprime les caractères accentués diacritique
|
||||
return normalized.replaceAll("\\p{InCombiningDiacriticalMarks}+", "");
|
||||
|
||||
}
|
||||
return A;
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ public class ChargeFichierXML extends JFileChooser {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* Chragement d'un fichier d'analyse.<br>
|
||||
* Chargement d'un fichier d'analyse.<br>
|
||||
* Le premier node doit être le node fichier.
|
||||
*/
|
||||
public ChargeFichierXML() {
|
||||
@ -87,10 +87,13 @@ public class ChargeFichierXML extends JFileChooser {
|
||||
commandes.path = file.getPath().substring(0,file.getPath().lastIndexOf("/")); // Sur mac & Linux
|
||||
}
|
||||
|
||||
commandes.PathFilenameAnalysis = commandes.path ;
|
||||
|
||||
String PathFilenameAnalysis = getCurrentDirectory().getPath();
|
||||
String nameSujet = file.getName().toString();
|
||||
|
||||
|
||||
|
||||
BufferedReader br;
|
||||
try {
|
||||
br = new BufferedReader(
|
||||
|
43
src/fenetres/addAttributAndValue.java
Normal file
@ -0,0 +1,43 @@
|
||||
package fenetres;
|
||||
|
||||
import java.awt.EventQueue;
|
||||
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.border.EmptyBorder;
|
||||
|
||||
public class addAttributAndValue extends JFrame {
|
||||
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
private JPanel contentPane;
|
||||
|
||||
/**
|
||||
* Launch the application.
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
EventQueue.invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
try {
|
||||
addAttributAndValue frame = new addAttributAndValue();
|
||||
frame.setVisible(true);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Create the frame.
|
||||
*/
|
||||
public addAttributAndValue() {
|
||||
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
setBounds(100, 100, 450, 300);
|
||||
contentPane = new JPanel();
|
||||
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
|
||||
|
||||
setContentPane(contentPane);
|
||||
}
|
||||
|
||||
}
|
@ -42,6 +42,7 @@ public class attributs extends JFrame {
|
||||
*/
|
||||
private static final long serialVersionUID = 1L;
|
||||
private JPanel contentPane;
|
||||
private JPanel panelCentre = new JPanel();
|
||||
node nod;
|
||||
afficheText J;
|
||||
int indexSelect=0;
|
||||
@ -50,7 +51,7 @@ public class attributs extends JFrame {
|
||||
ArrayList<JTextField> Lesvaleurs = new ArrayList<JTextField>();
|
||||
ArrayList<JCheckBox> Lesevaluer = new ArrayList<JCheckBox>();
|
||||
ArrayList<JTextField> Lespoints = new ArrayList<JTextField>();
|
||||
|
||||
ArrayList<String> KeysAttribut = new ArrayList<String>();
|
||||
/**
|
||||
* Create the frame.
|
||||
*/
|
||||
@ -97,11 +98,18 @@ public class attributs extends JFrame {
|
||||
JButton btnAddAttribut = new JButton("Ajoute un attribut au node");
|
||||
btnAddAttribut.addActionListener(new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
String nameAttribut="";
|
||||
nameAttribut = JOptionPane.showInputDialog(null,"Quelle est la clé de l'attribut ?","");
|
||||
if(nameAttribut!=null)if(!nameAttribut.isBlank()) {
|
||||
nod.getAttributs().put(nameAttribut, "");
|
||||
refresh();
|
||||
}
|
||||
}
|
||||
});
|
||||
panelBas.add(btnAddAttribut);
|
||||
panelBas.add(btnNewButton);
|
||||
|
||||
|
||||
JButton btnValide = new JButton("Valider les modifications");
|
||||
btnValide.setFont(new Font("Tahoma", Font.BOLD, 12));
|
||||
btnValide.setForeground(Color.RED);
|
||||
@ -127,7 +135,6 @@ public class attributs extends JFrame {
|
||||
JButton btnTextClean = new JButton("Text clean");
|
||||
btnTextClean.setToolTipText("<html>Texte nettoyé de tous les caractères spéciaux, chiffres et ignore la casse (équivalent à allContent=\"environ\").<br>Cette fonction ne peut pas être combinée avec les autres fonctions ci-dessous.<br>Ce n'est pas un opérateur OU contrairement à l'opérateur ↕.<br>La tolérance de texte (90% de similitude avec le texte de la consigne) paramètre dans les setting. (exemple : ¢‽2) </html>");
|
||||
btnTextClean.addActionListener(new ActionListener() {
|
||||
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
int j = Lesvaleurs.get(indexSelect).getCaretPosition();
|
||||
System.out.println("position du cursor "+ j);
|
||||
@ -217,7 +224,7 @@ public class attributs extends JFrame {
|
||||
JScrollPane scrollPaneCentre = new JScrollPane();
|
||||
contentPane.add(scrollPaneCentre, BorderLayout.CENTER);
|
||||
|
||||
JPanel panelCentre = new JPanel();
|
||||
|
||||
scrollPaneCentre.setViewportView(panelCentre);
|
||||
panelCentre.setLayout(new MigLayout("gap rel 0", "[100px:n,grow][150px:n,grow 150][::80px][80px:n]",
|
||||
"[::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px][::20px]"));
|
||||
@ -270,6 +277,8 @@ public class attributs extends JFrame {
|
||||
Lesvaleurs.add(txtFielValue);
|
||||
Lespoints.add(txtFielPoints);
|
||||
Lesevaluer.add(checkEval);
|
||||
KeysAttribut.add(k);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -366,6 +375,69 @@ public class attributs extends JFrame {
|
||||
}
|
||||
|
||||
|
||||
private void refresh() {
|
||||
Enumeration<String> key = nod.getAttributs().keys();
|
||||
while(key.hasMoreElements()) {
|
||||
|
||||
String k = key.nextElement();
|
||||
if(!listeAttributsAnalyseWriter.isAttributAnalyseWriter(k)) {
|
||||
String value = nod.getAttributs().get(k);
|
||||
String point = "0";
|
||||
JCheckBox checkEval = new JCheckBox();
|
||||
boolean evaluer = false;
|
||||
if(value.contains("‽")||value.contains("‼")) {
|
||||
evaluer=true;
|
||||
if(value.contains("‽")) {
|
||||
point = value.substring(value.lastIndexOf("‽")+1,value.length());
|
||||
value = value.substring(0,value.lastIndexOf("‽"));
|
||||
}
|
||||
if(value.contains("‼")) {
|
||||
point = value.substring(value.lastIndexOf("‼")+1,value.length());
|
||||
value = value.substring(0,value.lastIndexOf("‼"));
|
||||
}
|
||||
}
|
||||
|
||||
JTextField txtFielPoints = new JTextField(point);
|
||||
JTextField txtFielValue = new JTextField(value);
|
||||
txtFielValue.addMouseListener(new MyMouseListener());
|
||||
txtFielPoints.setColumns(3);
|
||||
checkEval.setSelected(evaluer);
|
||||
|
||||
if(!KeysAttribut.contains(k)) {
|
||||
Leslabels.add(new JLabel(k));
|
||||
Lesvaleurs.add(txtFielValue);
|
||||
Lespoints.add(txtFielPoints);
|
||||
Lesevaluer.add(checkEval);
|
||||
KeysAttribut.add(k);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
//Placement dans le panel des informations
|
||||
for(int i = 0 ; i<Leslabels.size();i++) {
|
||||
Leslabels.get(i).setFont(new Font("Tahoma", Font.BOLD, 11));
|
||||
Lesvaleurs.get(i).setColumns(10);
|
||||
panelCentre.add(Leslabels.get(i), "cell 0 "+i+1);
|
||||
panelCentre.add(Lesvaleurs.get(i), "cell 1 "+i+1 + ",grow");
|
||||
panelCentre.add(Lesevaluer.get(i), "cell 2 "+i+1);
|
||||
panelCentre.add(Lespoints.get(i), "cell 3 " + i+1 +",alignx left,growy");
|
||||
}
|
||||
|
||||
//Enabled false les valeurs ne peuvent pas être modifiées.
|
||||
//Enabled false les evaluer si pas evaluable.
|
||||
for(int i = 0 ; i<Leslabels.size();i++) {
|
||||
if(listeAttributWriterValeurPasModifiable.isNotModifiable(Leslabels.get(i).getText())) {Lesvaleurs.get(i).setEnabled(false);}
|
||||
if(listeAttributWriterPasEvaluableAvecCodeEvaluateur.isNotEvaluable(Leslabels.get(i).getText())) {Lesevaluer.get(i).setEnabled(false);Lespoints.get(i).setEnabled(false);}
|
||||
// Important
|
||||
//exception avec text:section et son attribut text:name qui doit être évaluable
|
||||
if(nod.getNomElt().equals("text:section") && Leslabels.get(i).getText().equals("text:name")) {Lesvaleurs.get(i).setEnabled(true);Lesevaluer.get(i).setEnabled(true);Lespoints.get(i).setEnabled(true);}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -337,17 +337,26 @@ private void ListenerAction() {
|
||||
if(lsm!=null) {
|
||||
if (!lsm.isSelectionEmpty()) {
|
||||
node evaluation = chargeEvaluation.retourneEvaluationSelected(indexSelect);
|
||||
String nameFile = evaluation.getAttributs().get("analysis_filename");
|
||||
String nameFile ="fichier analyse.xml";
|
||||
if(evaluation.getAttributs().get("analysis_filename")!=null) {
|
||||
nameFile = evaluation.getAttributs().get("analysis_filename");
|
||||
}
|
||||
|
||||
|
||||
JFileChooser fileChooser = new JFileChooser();
|
||||
fileChooser.setDialogTitle("Enregistrer sous...");
|
||||
File file = null;
|
||||
|
||||
String analysis_filename ="";
|
||||
if(evaluation.getAttributs().get("analysis_filename")!=null) {
|
||||
if(!evaluation.getAttributs().get("analysis_filename").isEmpty()) {
|
||||
file = new File(commandes.PathBaseEvaluations);
|
||||
analysis_filename = evaluation.getAttributs().get("analysis_filename");
|
||||
}
|
||||
}else {
|
||||
file = new File(commandes.PathBaseEvaluations);
|
||||
|
||||
}
|
||||
|
||||
fileChooser.setCurrentDirectory(file);
|
||||
fileChooser.setSelectedFile(new File(nameFile));
|
||||
|