diff --git a/bin/.gitignore b/bin/.gitignore index ed2d451..4884a08 100644 --- a/bin/.gitignore +++ b/bin/.gitignore @@ -2,3 +2,4 @@ /fenetres/ /list/ /resources/ +/MEPTL/ diff --git a/bin/MEPTL/ecritureSujet.class b/bin/MEPTL/ecritureSujet.class index 0ab7989..2f74ad5 100644 Binary files a/bin/MEPTL/ecritureSujet.class and b/bin/MEPTL/ecritureSujet.class differ diff --git a/bin/fenetres/create$1.class b/bin/fenetres/create$1.class index e2b42d7..60a81d1 100644 Binary files a/bin/fenetres/create$1.class and b/bin/fenetres/create$1.class differ diff --git a/bin/fenetres/create$10.class b/bin/fenetres/create$10.class index 63e98db..ab6bbf4 100644 Binary files a/bin/fenetres/create$10.class and b/bin/fenetres/create$10.class differ diff --git a/bin/fenetres/create$11.class b/bin/fenetres/create$11.class index 74afba8..f4fcaf5 100644 Binary files a/bin/fenetres/create$11.class and b/bin/fenetres/create$11.class differ diff --git a/bin/fenetres/create$12.class b/bin/fenetres/create$12.class index c850e97..dda4069 100644 Binary files a/bin/fenetres/create$12.class and b/bin/fenetres/create$12.class differ diff --git a/bin/fenetres/create$13.class b/bin/fenetres/create$13.class index cbcb5ee..5be4b34 100644 Binary files a/bin/fenetres/create$13.class and b/bin/fenetres/create$13.class differ diff --git a/bin/fenetres/create$14.class b/bin/fenetres/create$14.class index a0c6338..569b657 100644 Binary files a/bin/fenetres/create$14.class and b/bin/fenetres/create$14.class differ diff --git a/bin/fenetres/create$2.class b/bin/fenetres/create$2.class index 83f52e7..fddca34 100644 Binary files a/bin/fenetres/create$2.class and b/bin/fenetres/create$2.class differ diff --git a/bin/fenetres/create$3.class b/bin/fenetres/create$3.class index a101582..a5563e4 100644 Binary files a/bin/fenetres/create$3.class and b/bin/fenetres/create$3.class differ diff --git a/bin/fenetres/create$4.class b/bin/fenetres/create$4.class index bc41f3d..7b135a3 100644 Binary files a/bin/fenetres/create$4.class and b/bin/fenetres/create$4.class differ diff --git a/bin/fenetres/create$5.class b/bin/fenetres/create$5.class index da347e3..0744b24 100644 Binary files a/bin/fenetres/create$5.class and b/bin/fenetres/create$5.class differ diff --git a/bin/fenetres/create$6.class b/bin/fenetres/create$6.class index 35e06bb..d10709c 100644 Binary files a/bin/fenetres/create$6.class and b/bin/fenetres/create$6.class differ diff --git a/bin/fenetres/create$7.class b/bin/fenetres/create$7.class index 99265a2..b3bfc6d 100644 Binary files a/bin/fenetres/create$7.class and b/bin/fenetres/create$7.class differ diff --git a/bin/fenetres/create$8.class b/bin/fenetres/create$8.class index b179b06..ce26429 100644 Binary files a/bin/fenetres/create$8.class and b/bin/fenetres/create$8.class differ diff --git a/bin/fenetres/create$9.class b/bin/fenetres/create$9.class index dbe105d..a7f9d85 100644 Binary files a/bin/fenetres/create$9.class and b/bin/fenetres/create$9.class differ diff --git a/bin/fenetres/create.class b/bin/fenetres/create.class index bb321ba..33f37e4 100644 Binary files a/bin/fenetres/create.class and b/bin/fenetres/create.class differ diff --git a/bin/fenetres/evaluate$1.class b/bin/fenetres/evaluate$1.class index e2233a1..a3d87e3 100644 Binary files a/bin/fenetres/evaluate$1.class and b/bin/fenetres/evaluate$1.class differ diff --git a/bin/fenetres/evaluate$10.class b/bin/fenetres/evaluate$10.class index a462d10..bb4b120 100644 Binary files a/bin/fenetres/evaluate$10.class and b/bin/fenetres/evaluate$10.class differ diff --git a/bin/fenetres/evaluate$11.class b/bin/fenetres/evaluate$11.class index 3101370..24b08e3 100644 Binary files a/bin/fenetres/evaluate$11.class and b/bin/fenetres/evaluate$11.class differ diff --git a/bin/fenetres/evaluate$12.class b/bin/fenetres/evaluate$12.class index 5301123..69df0f4 100644 Binary files a/bin/fenetres/evaluate$12.class and b/bin/fenetres/evaluate$12.class differ diff --git a/bin/fenetres/evaluate$13.class b/bin/fenetres/evaluate$13.class index 72d378b..a26e18b 100644 Binary files a/bin/fenetres/evaluate$13.class and b/bin/fenetres/evaluate$13.class differ diff --git a/bin/fenetres/evaluate$14.class b/bin/fenetres/evaluate$14.class index 0b72e3a..535eb2a 100644 Binary files a/bin/fenetres/evaluate$14.class and b/bin/fenetres/evaluate$14.class differ diff --git a/bin/fenetres/evaluate$15.class b/bin/fenetres/evaluate$15.class index 90df1d5..9c25b3e 100644 Binary files a/bin/fenetres/evaluate$15.class and b/bin/fenetres/evaluate$15.class differ diff --git a/bin/fenetres/evaluate$16.class b/bin/fenetres/evaluate$16.class index 7593c14..a72917f 100644 Binary files a/bin/fenetres/evaluate$16.class and b/bin/fenetres/evaluate$16.class differ diff --git a/bin/fenetres/evaluate$17.class b/bin/fenetres/evaluate$17.class index 48519bb..83d7ad8 100644 Binary files a/bin/fenetres/evaluate$17.class and b/bin/fenetres/evaluate$17.class differ diff --git a/bin/fenetres/evaluate$18.class b/bin/fenetres/evaluate$18.class index 5e3e6fb..cb79ce2 100644 Binary files a/bin/fenetres/evaluate$18.class and b/bin/fenetres/evaluate$18.class differ diff --git a/bin/fenetres/evaluate$19.class b/bin/fenetres/evaluate$19.class index 0e2e305..38a2d85 100644 Binary files a/bin/fenetres/evaluate$19.class and b/bin/fenetres/evaluate$19.class differ diff --git a/bin/fenetres/evaluate$2.class b/bin/fenetres/evaluate$2.class index a41483d..77aa7db 100644 Binary files a/bin/fenetres/evaluate$2.class and b/bin/fenetres/evaluate$2.class differ diff --git a/bin/fenetres/evaluate$20.class b/bin/fenetres/evaluate$20.class index 2d2490b..b9d9db4 100644 Binary files a/bin/fenetres/evaluate$20.class and b/bin/fenetres/evaluate$20.class differ diff --git a/bin/fenetres/evaluate$21.class b/bin/fenetres/evaluate$21.class index 236e51a..403eeec 100644 Binary files a/bin/fenetres/evaluate$21.class and b/bin/fenetres/evaluate$21.class differ diff --git a/bin/fenetres/evaluate$22.class b/bin/fenetres/evaluate$22.class index f6e2788..8e18d30 100644 Binary files a/bin/fenetres/evaluate$22.class and b/bin/fenetres/evaluate$22.class differ diff --git a/bin/fenetres/evaluate$23.class b/bin/fenetres/evaluate$23.class index 099330d..356d799 100644 Binary files a/bin/fenetres/evaluate$23.class and b/bin/fenetres/evaluate$23.class differ diff --git a/bin/fenetres/evaluate$24.class b/bin/fenetres/evaluate$24.class index 80be2b8..b515b8a 100644 Binary files a/bin/fenetres/evaluate$24.class and b/bin/fenetres/evaluate$24.class differ diff --git a/bin/fenetres/evaluate$25.class b/bin/fenetres/evaluate$25.class index 834ca5a..6fcfd06 100644 Binary files a/bin/fenetres/evaluate$25.class and b/bin/fenetres/evaluate$25.class differ diff --git a/bin/fenetres/evaluate$26.class b/bin/fenetres/evaluate$26.class index 2afd5af..524d210 100644 Binary files a/bin/fenetres/evaluate$26.class and b/bin/fenetres/evaluate$26.class differ diff --git a/bin/fenetres/evaluate$27.class b/bin/fenetres/evaluate$27.class index 1a5e60d..86709f5 100644 Binary files a/bin/fenetres/evaluate$27.class and b/bin/fenetres/evaluate$27.class differ diff --git a/bin/fenetres/evaluate$28.class b/bin/fenetres/evaluate$28.class index 04fa9c5..2cbdf0b 100644 Binary files a/bin/fenetres/evaluate$28.class and b/bin/fenetres/evaluate$28.class differ diff --git a/bin/fenetres/evaluate$29.class b/bin/fenetres/evaluate$29.class index 782ca13..feb1098 100644 Binary files a/bin/fenetres/evaluate$29.class and b/bin/fenetres/evaluate$29.class differ diff --git a/bin/fenetres/evaluate$3.class b/bin/fenetres/evaluate$3.class index 4f221da..03b9a07 100644 Binary files a/bin/fenetres/evaluate$3.class and b/bin/fenetres/evaluate$3.class differ diff --git a/bin/fenetres/evaluate$30.class b/bin/fenetres/evaluate$30.class index f391f86..6aa8452 100644 Binary files a/bin/fenetres/evaluate$30.class and b/bin/fenetres/evaluate$30.class differ diff --git a/bin/fenetres/evaluate$31.class b/bin/fenetres/evaluate$31.class index a8393db..1a1a14d 100644 Binary files a/bin/fenetres/evaluate$31.class and b/bin/fenetres/evaluate$31.class differ diff --git a/bin/fenetres/evaluate$32.class b/bin/fenetres/evaluate$32.class index c3e4b98..1cdef7f 100644 Binary files a/bin/fenetres/evaluate$32.class and b/bin/fenetres/evaluate$32.class differ diff --git a/bin/fenetres/evaluate$4.class b/bin/fenetres/evaluate$4.class index ddb9eb0..9a370d7 100644 Binary files a/bin/fenetres/evaluate$4.class and b/bin/fenetres/evaluate$4.class differ diff --git a/bin/fenetres/evaluate$5.class b/bin/fenetres/evaluate$5.class index 260dd11..455a78e 100644 Binary files a/bin/fenetres/evaluate$5.class and b/bin/fenetres/evaluate$5.class differ diff --git a/bin/fenetres/evaluate$6.class b/bin/fenetres/evaluate$6.class index 595e912..aeaf2ba 100644 Binary files a/bin/fenetres/evaluate$6.class and b/bin/fenetres/evaluate$6.class differ diff --git a/bin/fenetres/evaluate$7.class b/bin/fenetres/evaluate$7.class index 5a7fd81..781d77c 100644 Binary files a/bin/fenetres/evaluate$7.class and b/bin/fenetres/evaluate$7.class differ diff --git a/bin/fenetres/evaluate$8.class b/bin/fenetres/evaluate$8.class index 013faaa..1cd6870 100644 Binary files a/bin/fenetres/evaluate$8.class and b/bin/fenetres/evaluate$8.class differ diff --git a/bin/fenetres/evaluate$9.class b/bin/fenetres/evaluate$9.class index ca74618..9919e96 100644 Binary files a/bin/fenetres/evaluate$9.class and b/bin/fenetres/evaluate$9.class differ diff --git a/bin/fenetres/evaluate.class b/bin/fenetres/evaluate.class index 75e82f4..4dd4485 100644 Binary files a/bin/fenetres/evaluate.class and b/bin/fenetres/evaluate.class differ diff --git a/bin/list/descriptionNode.class b/bin/list/descriptionNode.class index 86ffc6b..83292c7 100644 Binary files a/bin/list/descriptionNode.class and b/bin/list/descriptionNode.class differ diff --git a/bin/list/listeAttributWriterPasEvaluableAvecCodeEvaluateur.class b/bin/list/listeAttributWriterPasEvaluableAvecCodeEvaluateur.class index 27d472f..c75f05f 100644 Binary files a/bin/list/listeAttributWriterPasEvaluableAvecCodeEvaluateur.class and b/bin/list/listeAttributWriterPasEvaluableAvecCodeEvaluateur.class differ diff --git a/bin/list/listeEvalNameNode.class b/bin/list/listeEvalNameNode.class index 5c31303..9db6eb1 100644 Binary files a/bin/list/listeEvalNameNode.class and b/bin/list/listeEvalNameNode.class differ diff --git a/bin/list/listeNodeAnalyseWriter.class b/bin/list/listeNodeAnalyseWriter.class index 4736540..a31b6f7 100644 Binary files a/bin/list/listeNodeAnalyseWriter.class and b/bin/list/listeNodeAnalyseWriter.class differ diff --git a/src/MEPTL/ecritureSujet.java b/src/MEPTL/ecritureSujet.java index 8ba80a8..e259e35 100644 --- a/src/MEPTL/ecritureSujet.java +++ b/src/MEPTL/ecritureSujet.java @@ -5,6 +5,9 @@ import java.util.ArrayList; import cXML.Run; import cXML.node; +import list.listeDesNodesAnalyseStyle; +import list.listeDesNodesAvecEvalNameNode; +import list.listeDesNodesRechercheByContenu; import list.listeRechercheParAnchorPageNumber; @@ -271,7 +274,7 @@ public class ecritureSujet { /** - * Ajoute les différents attributs aux nodes enfants des nodes principaux. + * Ajoute les différents attributs aux nodes enfants des nodes principaux.
* @param noPourPlacerEvaluer * @param nameNodeRacine * @return @@ -293,18 +296,18 @@ public class ecritureSujet { } /** - * Ajoute les attributs d'analyseWriter par défaut + * Ajoute les attributs d'analyseWriter par défaut.
* @param no */ private static void nextNodesEnfants(ArrayList no) { for(int k=0 ; k < no.size(); k++) { if(no.get(k)!=null) { no.get(k).getAttributs().put("evaluer", "false"); - if(listeDesNodesAvecEvalNode(no.get(k).getNomElt())) no.get(k).getAttributs().put("evalNameNode", "0"); + if( listeDesNodesAvecEvalNameNode.isEvalNameNode(no.get(k))) no.get(k).getAttributs().put("evalNameNode", "0"); if(listeDesNodesSautEtTitre(no.get(k).getNomElt())) {no.get(k).getAttributs().put("saut", "false"); no.get(k).getAttributs().put("titre", "");} - if(listeDesNodesByRecherche(no.get(k).getNomElt())) {no.get(k).getAttributs().put("recherche_index", "false"); no.get(k).getAttributs().put("recherche_contenu_exact", "false");no.get(k).getAttributs().put("recherche_contenu_plus_proche_voisin", "false");} - if(listeDesNodesAnalyseStyle(no.get(k).getNomElt())) no.get(k).getAttributs().put("analyseStyle", "false"); - if(listeDesNodesAllContent(no.get(k).getNomElt())) no.get(k).getAttributs().put("allContent", "strict0"); + if(listeDesNodesRechercheByContenu.isRechercheByContenu(no.get(k))) {no.get(k).getAttributs().put("recherche_index", "false"); no.get(k).getAttributs().put("recherche_contenu_exact", "false");no.get(k).getAttributs().put("recherche_contenu_plus_proche_voisin", "false");} + if(listeDesNodesAnalyseStyle.isAnalyseStyle(no.get(k))) no.get(k).getAttributs().put("analyseStyle", "false"); + if(listeDesNodesRechercheByContenu.isRechercheByContenu(no.get(k))) no.get(k).getAttributs().put("allContent", "strict0"); if(listeRechercheParAnchorPageNumber.isRechercheParAnchorPageNumber(no.get(k))) no.get(k).getAttributs().put("recherche_anchor-page-number", "false"); if(!no.get(k).getNodes().isEmpty()) { @@ -314,18 +317,7 @@ public class ecritureSujet { } } - - /** - * Liste des nodes qui peuvent contenir l'attribut evalNameNode - * @param nameNode - * @return - */ - public static boolean listeDesNodesAvecEvalNode(String nameNode) { - if(nameNode.contains("meta:")) return true; - if(nameNode.contains("dc:")) return true; - if(nameNode.contains("text:")) return true; - return false; - } + /** * Liste des nodes qui peuvent contenir les attributs saut et titre @@ -340,46 +332,6 @@ public class ecritureSujet { return false; } - /** - * Liste des nodes qui peuvent contenir l'attribut recherche_index, recherche_contenu_exact, recherche_contenu_plus_proche_voisin - * @param nameNode - * @return - */ - public static boolean listeDesNodesByRecherche(String nameNode) { - if(nameNode.contains("text:p")) return true; - if(nameNode.contains("text:line-break")) return true; - if(nameNode.contains("text:h")) return true; - if(nameNode.contains("text:span")) return true; - if(nameNode.equals("draw:text-box")) return true; - if(nameNode.equals("text:soft-page-break")) return true; - - return false; - } - - /** - * Liste des nodes qui peuvent contenir l'attribut analyseStyle - * @param nameNode - * @return - */ - public static boolean listeDesNodesAnalyseStyle(String nameNode) { - if(nameNode.contains("text:database-display")) return false; - if(nameNode.contains("text:")) return true; - return false; - } - - /** - * Liste des nodes qui peuvent contenir l'attribut allContent - * @param nameNode - * @return - */ - public static boolean listeDesNodesAllContent(String nameNode) { - if(nameNode.contains("text:")) return true; - if(nameNode.equals("table:table-cell")) return true; - if(nameNode.equals("table:table-row")) return true; - return false; - } - - /** diff --git a/src/fenetres/attributs.java b/src/fenetres/attributs.java index e238b20..56b4d09 100644 --- a/src/fenetres/attributs.java +++ b/src/fenetres/attributs.java @@ -280,8 +280,8 @@ public class attributs extends JFrame { 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 + //Enabled false les valeurs ne peuvent pas être modifiées. + //Enabled false les evaluer si pas evaluable. for(int i = 0 ; i1 - JMenu mnSaut = new JMenu("Saut de ligne avant"); - mnSaut.setIcon( new ImageIcon(create.class.getResource("/resources/sautmini.png"))); - mnSaut.add(new actsauttrue()); - mnSaut.add(new actsautfalse()); - - //Menu saut niveau = 1 - //Menu Saut - JMenu mnSautNiveau1 = new JMenu("Saut de ligne avant"); - mnSautNiveau1.setIcon( new ImageIcon(create.class.getResource("/resources/sautmini.png"))); - mnSautNiveau1.add(new actsauttrue()); - mnSautNiveau1.add(new actsautfalse()); - - //Menu Titre niveau > 1 - JMenu mnTitre = new JMenu("Titre"); - mnTitre.setIcon( new ImageIcon(create.class.getResource("/resources/titremini.png"))); - mnTitre.add(new actTitrePrincipal()); - mnTitre.add(new actTitre1()); - mnTitre.add(new actTitre2()); - mnTitre.add(new actTitre3()); - mnTitre.addSeparator(); - mnTitre.add(new actSupprimeTitre()); - - //Menu Titre niveau = 1 - JMenu mnTitreNiveau1 = new JMenu("Titre"); - mnTitreNiveau1.setIcon( new ImageIcon(create.class.getResource("/resources/titremini.png"))); - mnTitreNiveau1.add(new actTitrePrincipal()); - mnTitreNiveau1.add(new actTitre1()); - mnTitreNiveau1.add(new actTitre2()); - mnTitreNiveau1.add(new actTitre3()); - mnTitreNiveau1.addSeparator(); - mnTitreNiveau1.add(new actSupprimeTitre()); - - //Menu ajoute un lien de menu niveau 1 - JMenu mnAddMenuNiveau1= new JMenu("Lien"); //addMenu - mnAddMenuNiveau1.setIcon( new ImageIcon(create.class.getResource("/resources/addmenumini.png"))); - mnAddMenuNiveau1.add(new actAddMenuTrue()); - mnAddMenuNiveau1.add(new actAddMenuFalse()); - - //Menu ajoute un lien de menu niveau sup 1 - JMenu mnAddMenuNiveauSup1= new JMenu("Lien"); //addMenu - mnAddMenuNiveauSup1.setIcon( new ImageIcon(create.class.getResource("/resources/addmenumini.png"))); - mnAddMenuNiveauSup1.add(new actAddMenuTrue()); - mnAddMenuNiveauSup1.add(new actAddMenuFalse()); - - //Menu recherche par l'index - JMenu mnRechercheIndex = new JMenu("Recherche par l'index"); - mnRechercheIndex.setIcon(new ImageIcon(create.class.getResource("/resources/rechercheindexmini.png"))); - mnRechercheIndex.add( new actRechercheIndextrue()) ; - mnRechercheIndex.addSeparator(); - mnRechercheIndex.add(new actRechercheIndexfalse()); - - //Menu recherche par le contenu Exact - JMenu mnRechercheContenu = new JMenu("Recherche par le contenu exact"); - mnRechercheContenu.setIcon(new ImageIcon(create.class.getResource("/resources/recherchecontenumini.png"))); - mnRechercheContenu.add( new actRechercheContenutrue()); - mnRechercheContenu.addSeparator(); - mnRechercheContenu.add( new actRechercheContenufalse()); - - //Menu recherche par le contenu plus proche voisin - JMenu mnRechercheContenuPlusProcheVoisin = new JMenu("Recherche par le plus proche voisin"); - mnRechercheContenuPlusProcheVoisin.setIcon(new ImageIcon(create.class.getResource("/resources/recherchecontenuplusprochevoisinmini.png"))); - mnRechercheContenuPlusProcheVoisin.add( new actRechercheContenuPlusProcheVoisintrue()); - mnRechercheContenuPlusProcheVoisin.addSeparator(); - mnRechercheContenuPlusProcheVoisin.add(new actRechercheContenuPlusProcheVoisinfalse()); - - //Menu analyseStyle (évaluer le style du paragraphe) - JMenu mnAnalyseStyle = new JMenu("Evaluer le style"); - mnAnalyseStyle.setIcon(new ImageIcon(create.class.getResource("/resources/evaluerstylemini.png"))); - mnAnalyseStyle.add(new actEvaluerStyleTrue()); - mnAnalyseStyle.addSeparator(); - mnAnalyseStyle.add( new actEvaluerStyleFalse()); - - //Menu evalEnteteActive (pour les style:header-style) - JMenu mnevalEnteteActive = new JMenu("Entête activé"); - mnevalEnteteActive.setIcon(new ImageIcon(create.class.getResource("/resources/enteteouimini.png"))); - mnevalEnteteActive.add(new actEvalEnteteActive()); - mnevalEnteteActive.add(new actEvalEnteteActiveNon()); - - //Menu evalEntetePasActive (pour les style:header-style) - JMenu mnevalEntetePasActive = new JMenu("Entête pas activé"); - mnevalEntetePasActive.setIcon(new ImageIcon(create.class.getResource("/resources/entetenonmini.png"))); - mnevalEntetePasActive.add(new actEvalEntetePasActive()); - mnevalEntetePasActive.add(new actEvalEntetePasActiveNon()); - - //Menu evalPiedPageActive (pour les style:footer-style) - JMenu mnEvalPiedPageActive = new JMenu("Pied page activé"); - mnEvalPiedPageActive.setIcon(new ImageIcon(create.class.getResource("/resources/piedpageouimini.png"))); - mnEvalPiedPageActive.add(new actEvalPiedPageActive()); - mnEvalPiedPageActive.add(new actEvalPiedPageActiveNon()); - - //Menu evalPiedPagePasActive (pour les style:footer-style) - JMenu mnEvalPiedPagePasActive = new JMenu("Pied page pas activé"); - mnEvalPiedPagePasActive.setIcon(new ImageIcon(create.class.getResource("/resources/piedpagenonmini.png"))); - mnEvalPiedPagePasActive.add(new actEvalPiedPagePasActive()); - mnEvalPiedPagePasActive.add(new actEvalPiedPagePasActiveNon()); - - //Menu Evaluer présence d'un node pour les nodes de niveau > 1 - JMenu mnEvalNameNode = new JMenu("Evaluer la présence du node"); - mnEvalNameNode.setIcon(new ImageIcon(create.class.getResource("/resources/evalnodemini.png"))); - mnEvalNameNode.add(new actEvalNameNodeOui()); - mnEvalNameNode.add(new actEvalNameNodeNon()); - - //Menu evalNameSequence (pour les text:sequence-decl) - JMenu mnEvalNameSequence = new JMenu("Evaluer le nom de la séquence"); - mnEvalNameSequence.setIcon(new ImageIcon(create.class.getResource("/resources/evalnamesequencemini.png"))); - mnEvalNameSequence.add(new actEvalNameSequenceOui()); - mnEvalNameSequence.add(new actEvalNameSequenceNon()); - - //Menu evalNamePage (pour les nodes page) - JMenu mnEvalNamePage = new JMenu("Evaluer le nom de la page"); - mnEvalNamePage.setIcon(new ImageIcon(create.class.getResource("/resources/evalnamepagemini.png"))); - mnEvalNamePage.add(new actEvalNamePageOui()); - mnEvalNamePage.add(new actEvalNamePageNon()); - - //Menu evalNumeroPage (pour les nodes page) - JMenu mnEvalNumeroPage = new JMenu("Evaluer le numéro de la page"); - mnEvalNumeroPage.setIcon(new ImageIcon(create.class.getResource("/resources/evalnumeropagemini.png"))); - mnEvalNumeroPage.add(new actEvalNumeroPageOui()); - mnEvalNumeroPage.add(new actEvalNumeroPageNon()); - - //Menu evalNumeroPage (pour les nodes page) - JMenu mnEvalNumeroAbsoluePage = new JMenu("Evaluer le numéro absolue de la page"); - mnEvalNumeroAbsoluePage.setIcon(new ImageIcon(create.class.getResource("/resources/evalnumeroabsoluepagemini.png"))); - mnEvalNumeroAbsoluePage.add(new actEvalNumeroAbsoluePageOui()); - mnEvalNumeroAbsoluePage.add(new actEvalNumeroAbsoluePageNon()); - - //Menu evalTextUserDefined - JMenu mnEvalTextUserDefined = new JMenu("Evaluer la valeur de la propriété"); - mnEvalTextUserDefined.setIcon(new ImageIcon(create.class.getResource("/resources/evaltextuserdefinedmini.png"))); - mnEvalTextUserDefined.add(new actEvalTextUserDefinedOui()); - mnEvalTextUserDefined.add(new actEvalTextUserDefinedNon()); - - //Menue Recherche par le numéro de la page ancrer - JMenu mnRechercheParNumeroPageAncrer = new JMenu("Recherche par le numéro de la page"); - mnRechercheParNumeroPageAncrer.setIcon(new ImageIcon(create.class.getResource("/resources/rechercheancragepagemini.png"))); - mnRechercheParNumeroPageAncrer.add( new actRechercheAnchorPageNumberTrue()); - mnRechercheParNumeroPageAncrer.addSeparator(); - mnRechercheParNumeroPageAncrer.add( new actRechercheAnchorPageNumberFalse()); - - //Menu Représentation dans le feedback - JMenu mnPourFeedback = new JMenu("Pour représentation feedback"); - mnPourFeedback.add(mnSaut); - mnPourFeedback.addSeparator(); - mnPourFeedback.add(mnTitre); - mnPourFeedback.addSeparator(); - mnPourFeedback.add(mnAddMenuNiveauSup1); - - //Menu Evaluer tous les styles dans une page - JMenu mnEvaluerStylesParagraphes = new JMenu("Evaluer tous les styles (paragraphes ou titres)."); - mnEvaluerStylesParagraphes.setIcon(new ImageIcon(create.class.getResource("/resources/evaluertouslesstylesparagraphesmini.png"))); - mnEvaluerStylesParagraphes.add( new actEvaluerTousLesStylesParagraphesTrue()); - - //Menu OU - JMenu mnOu = new JMenu("Insérer un node OU"); - mnOu.setIcon(new ImageIcon(create.class.getResource("/resources/oumini.png"))); - mnOu.add( new actOu()); - - //Menu ordreParagraphe - JMenu mnOrdreParagraphe = new JMenu("Ordre des paragraphe"); - mnOrdreParagraphe.setIcon(new ImageIcon(create.class.getResource("/resources/ordreparagraphemini.png"))); - mnOrdreParagraphe.add(new actEvalOrdreParagrapheOui()); - mnOrdreParagraphe.add(new actEvalOrdreParagrapheNon()); - - - //*************************** - //** Menu node niveau = 1 *** - //*************************** - JMenu mnNiveau1 = new JMenu("Attributs aW, niveau 1 "); - mnNiveau1.setIcon( new ImageIcon(create.class.getResource("/resources/attributanalysewritermini.png"))); - mnNiveau1.add(new actCoefficient()); - mnNiveau1.addSeparator(); - mnNiveau1.add(mnSautNiveau1); - mnNiveau1.addSeparator(); - mnNiveau1.add(mnTitreNiveau1); - mnNiveau1.addSeparator(); - mnNiveau1.add(mnAddMenuNiveau1); - - - - //********************************************* - //** La popupMenu qui s'affiche sur le tree *** - //********************************************* - JPopupMenu mnPopupTree = new JPopupMenu(); - mnPopupTree.add(mnEvaluer); - if(nod.getLevel()==1 ) { - mnPopupTree.addSeparator(); - mnPopupTree.add(mnNiveau1); - if(nod.getNomElt().equals("structurepage")){ - mnPopupTree.addSeparator(); - mnPopupTree.add(mnOu); - mnPopupTree.addSeparator(); - mnPopupTree.add(mnOrdreParagraphe); - } - } - - //Pour les nodes de niveau supérieur à 1 - if(nod.getLevel()>1 ) { - mnPopupTree.addSeparator(); - mnPopupTree.add(mnPourFeedback); - if(listeEvalNameNode.isNodeEvalNameNode(nod)) { - mnPopupTree.addSeparator(); - mnPopupTree.add(mnEvalNameNode); - } - if(nod.retourneLesContenusEnfants("").length()>0) { - mnPopupTree.addSeparator(); - mnPopupTree.add(new actAllContent()); - } - if(nod.getNomElt().equals("meta:initial-creator")) { - mnPopupTree.addSeparator(); - mnPopupTree.add(new actEvalInitialCreator()); - } - if(nod.getNomElt().equals("dc:creator")) { - mnPopupTree.addSeparator(); - mnPopupTree.add(new actevalNameCreator()); - } - if(listeRechercheParAnchorPageNumber.isRechercheParAnchorPageNumber(nod)) { - mnPopupTree.addSeparator(); - mnPopupTree.add(mnRechercheParNumeroPageAncrer); - } - if(nod.getNomElt().equals("style:header-style")) { - mnPopupTree.addSeparator(); - mnPopupTree.add(mnevalEnteteActive); - mnPopupTree.addSeparator(); - mnPopupTree.add(mnevalEntetePasActive); - } - if(nod.getNomElt().equals("style:footer-style")) { - mnPopupTree.addSeparator(); - mnPopupTree.add(mnEvalPiedPageActive); - mnPopupTree.addSeparator(); - mnPopupTree.add(mnEvalPiedPagePasActive); - } - if(nod.getNomElt().equals("text:sequence-decl")) { - mnPopupTree.addSeparator(); - mnPopupTree.add(mnEvalNameSequence); - } - if(nod.getNomElt().equals("page")) { - mnPopupTree.addSeparator(); - mnPopupTree.add(mnEvalNamePage); - mnPopupTree.addSeparator(); - mnPopupTree.add(mnEvalNumeroPage); - mnPopupTree.addSeparator(); - mnPopupTree.add(mnEvalNumeroAbsoluePage); - mnPopupTree.addSeparator(); - mnPopupTree.add(mnEvaluerStylesParagraphes); - mnPopupTree.addSeparator(); - mnPopupTree.add(mnOu); - } - if(nod.getNomElt().equals("text:user-defined") && nod.chemin().contains("structurepage")) { - mnPopupTree.addSeparator(); - mnPopupTree.add(mnEvalTextUserDefined); - } - - if(ecritureSujet.listeDesNodesByRecherche(nod.getNomElt())) { - mnPopupTree.addSeparator(); - mnPopupTree.add(mnRechercheIndex); - mnPopupTree.addSeparator(); - mnPopupTree.add(mnRechercheContenu); - mnPopupTree.addSeparator(); - mnPopupTree.add(mnRechercheContenuPlusProcheVoisin); - mnPopupTree.addSeparator(); - mnPopupTree.add(mnAnalyseStyle); - mnPopupTree.addSeparator(); - mnPopupTree.add(mnOu); - } - mnPopupTree.addSeparator(); - mnPopupTree.add(new actAttribut()); - } - - - mnPopupTree.addSeparator(); - mnPopupTree.add(mnManageTree); - mnPopupTree.addSeparator(); - mnPopupTree.add(new actCopy()); - mnPopupTree.addSeparator(); - mnPopupTree.add(new actPaste()); - mnPopupTree.addSeparator(); - mnPopupTree.add(new actDeleteNode()); - - - tree.setComponentPopupMenu(mnPopupTree); - } - } - - - - /* Methode de construction de la barre de menu */ private JMenuBar createMenuBar() { diff --git a/src/fenetres/createPopupMenu.java b/src/fenetres/createPopupMenu.java new file mode 100644 index 0000000..2b85ff0 --- /dev/null +++ b/src/fenetres/createPopupMenu.java @@ -0,0 +1,612 @@ +package fenetres; + +import javax.swing.ImageIcon; +import javax.swing.JMenu; +import javax.swing.JPopupMenu; + +import cXML.node; +import fenetres.create_act.actAddMenuFalse; +import fenetres.create_act.actAddMenuTrue; +import fenetres.create_act.actAllContent; +import fenetres.create_act.actAttribut; +import fenetres.create_act.actCoefficient; +import fenetres.create_act.actCollapseAll; +import fenetres.create_act.actCollapseNode; +import fenetres.create_act.actCopy; +import fenetres.create_act.actDeleteNode; +import fenetres.create_act.actDownNode; +import fenetres.create_act.actEvalEnteteActive; +import fenetres.create_act.actEvalEnteteActiveNon; +import fenetres.create_act.actEvalEntetePasActive; +import fenetres.create_act.actEvalEntetePasActiveNon; +import fenetres.create_act.actEvalInitialCreator; +import fenetres.create_act.actEvalNameNodeNon; +import fenetres.create_act.actEvalNameNodeOui; +import fenetres.create_act.actEvalNamePageNon; +import fenetres.create_act.actEvalNamePageOui; +import fenetres.create_act.actEvalNameSequenceNon; +import fenetres.create_act.actEvalNameSequenceOui; +import fenetres.create_act.actEvalNumeroAbsoluePageNon; +import fenetres.create_act.actEvalNumeroAbsoluePageOui; +import fenetres.create_act.actEvalNumeroPageNon; +import fenetres.create_act.actEvalNumeroPageOui; +import fenetres.create_act.actEvalOrdreParagrapheNon; +import fenetres.create_act.actEvalOrdreParagrapheOui; +import fenetres.create_act.actEvalPiedPageActive; +import fenetres.create_act.actEvalPiedPageActiveNon; +import fenetres.create_act.actEvalPiedPagePasActive; +import fenetres.create_act.actEvalPiedPagePasActiveNon; +import fenetres.create_act.actEvalTextUserDefinedNon; +import fenetres.create_act.actEvalTextUserDefinedOui; +import fenetres.create_act.actEvalueFalse; +import fenetres.create_act.actEvalueTrue; +import fenetres.create_act.actEvaluerStyleFalse; +import fenetres.create_act.actEvaluerStyleTrue; +import fenetres.create_act.actEvaluerTousLesStylesParagraphesTrue; +import fenetres.create_act.actExpandAll; +import fenetres.create_act.actExpandNode; +import fenetres.create_act.actOu; +import fenetres.create_act.actPaste; +import fenetres.create_act.actRechercheAnchorPageNumberFalse; +import fenetres.create_act.actRechercheAnchorPageNumberTrue; +import fenetres.create_act.actRechercheContenuPlusProcheVoisinfalse; +import fenetres.create_act.actRechercheContenuPlusProcheVoisintrue; +import fenetres.create_act.actRechercheContenufalse; +import fenetres.create_act.actRechercheContenutrue; +import fenetres.create_act.actRechercheIndexfalse; +import fenetres.create_act.actRechercheIndextrue; +import fenetres.create_act.actSupprimeTitre; +import fenetres.create_act.actTitre1; +import fenetres.create_act.actTitre2; +import fenetres.create_act.actTitre3; +import fenetres.create_act.actTitrePrincipal; +import fenetres.create_act.actUpNode; +import fenetres.create_act.actevalNameCreator; +import fenetres.create_act.actsautfalse; +import fenetres.create_act.actsauttrue; +import list.listeDesNodesAllContent; +import list.listeDesNodesAnalyseStyle; +import list.listeDesNodesAvecEvalNameNode; +import list.listeDesNodesAvecOU; +import list.listeDesNodesPourEvaluationEntetePage; +import list.listeDesNodesPourEvaluerPage; +import list.listeDesNodesPourEvaluerPiedDePage; +import list.listeDesNodesRechercheByContenu; +import list.listeDesNotesAEvaluer; +import list.listeEvalNameNode; +import list.listeRechercheParAnchorPageNumber; + +public class createPopupMenu extends JPopupMenu { + + /** + * + */ + private static final long serialVersionUID = 1L; + + public createPopupMenu(node nod) { +if(nod!=null) { + + + //************************************************************** + //** La popupMenu qui s'affiche sur le tree pour les niveau 1 ** + //************************************************************** + JPopupMenu mnPopupTree = new JPopupMenu(); + mnPopupTree.add( mnEvaluer()); + if(nod.getLevel()==1 ) { + mnPopupTree.addSeparator(); + mnPopupTree.add(mnNiveau1()); + } + + //******************************************** + //** Pour les nodes de niveau supérieur à 1 ** + //******************************************** + if(nod.getLevel()>1 ) { + + mnPopupTree.addSeparator(); + mnPopupTree.add(mnPourFeedback()); + + if(listeDesNodesRechercheByContenu.isRechercheByContenu(nod)||listeRechercheParAnchorPageNumber.isRechercheParAnchorPageNumber(nod)) { + mnPopupTree.addSeparator(); + mnPopupTree.add(mnGroupeRechercheContenu(nod)); + } + + if(listeDesNodesAvecEvalNameNode.isEvalNameNode(nod)||listeDesNodesAllContent.isAllContent(nod)|| + listeDesNodesPourEvaluationEntetePage.isEntete(nod) || listeDesNodesPourEvaluerPiedDePage.isPiedDePage(nod)|| + listeDesNodesPourEvaluerPage.isPage(nod) || listeDesNotesAEvaluer.isAEvaluer(nod)) { + mnPopupTree.addSeparator(); + mnPopupTree.add(mnGroupeMethodeEvaluer(nod)); + } + + + if(listeDesNodesAvecOU.isOU(nod)) { + mnPopupTree.addSeparator(); + mnPopupTree.add(mnOu()); + } + + mnPopupTree.addSeparator(); + mnPopupTree.add(new actAttribut()); + } + + + mnPopupTree.addSeparator(); + mnPopupTree.add(mnArbre()); + mnPopupTree.addSeparator(); + mnPopupTree.add(new actCopy()); + mnPopupTree.addSeparator(); + mnPopupTree.add(new actPaste()); + mnPopupTree.addSeparator(); + mnPopupTree.add(new actDeleteNode()); + + + //************************************* + //** Applique le popMenu sur la tree ** + //************************************* + create.getTree().setComponentPopupMenu(mnPopupTree); + + } + } + + /** + * Menu Evaluer.
+ * @return + */ + private JMenu mnEvaluer() { + JMenu mnEvaluer = new JMenu("Evaluer"); + mnEvaluer.add(new actEvalueTrue()); + mnEvaluer.add(new actEvalueFalse()); + return mnEvaluer; + } + + /** + * Menu Arbre.
+ * @return + */ + private JMenu mnArbre() { + JMenu mnManageTree = new JMenu("Arbre"); + mnManageTree.add(new actUpNode()); + mnManageTree.add(new actDownNode()); + mnManageTree.addSeparator(); + mnManageTree.add(new actExpandAll()); + mnManageTree.add(new actExpandNode()); + mnManageTree.addSeparator(); + mnManageTree.add(new actCollapseAll()); + mnManageTree.add(new actCollapseNode()); + return mnManageTree; + } + + /** + * Menu saut de ligne.
+ * @return + */ + private JMenu mnSaut() { + JMenu mnSaut = new JMenu("Saut de ligne avant"); + mnSaut.setIcon( new ImageIcon(create.class.getResource("/resources/sautmini.png"))); + mnSaut.add(new actsauttrue()); + mnSaut.add(new actsautfalse()); + return mnSaut; + } + + /** + * Menu saut de ligne pour les niveau 1.
+ * @return + */ + private JMenu mnSautNiveau1() { + JMenu mnSautNiveau1 = new JMenu("Saut de ligne avant"); + mnSautNiveau1.setIcon( new ImageIcon(create.class.getResource("/resources/sautmini.png"))); + mnSautNiveau1.add(new actsauttrue()); + mnSautNiveau1.add(new actsautfalse()); + return mnSautNiveau1; + } + + /** + * Menu Titre.
+ * @return + */ + private JMenu mnTitre() { + JMenu mnTitre = new JMenu("Titre"); + mnTitre.setIcon( new ImageIcon(create.class.getResource("/resources/titremini.png"))); + mnTitre.add(new actTitrePrincipal()); + mnTitre.add(new actTitre1()); + mnTitre.add(new actTitre2()); + mnTitre.add(new actTitre3()); + mnTitre.addSeparator(); + mnTitre.add(new actSupprimeTitre()); + return mnTitre; + } + + /** + * Menu Titre pour le niveau 1.
+ * @return + */ + private JMenu mnTitreNiveau1() { + JMenu mnTitreNiveau1 = new JMenu("Titre"); + mnTitreNiveau1.setIcon( new ImageIcon(create.class.getResource("/resources/titremini.png"))); + mnTitreNiveau1.add(new actTitrePrincipal()); + mnTitreNiveau1.add(new actTitre1()); + mnTitreNiveau1.add(new actTitre2()); + mnTitreNiveau1.add(new actTitre3()); + mnTitreNiveau1.addSeparator(); + mnTitreNiveau1.add(new actSupprimeTitre()); + return mnTitreNiveau1; + } + + /** + * Menu lien de menu vers les niveau 1.
+ * @return + */ + private JMenu mnAddMenuNiveau1() { + JMenu mnAddMenuNiveau1= new JMenu("Lien"); //addMenu + mnAddMenuNiveau1.setIcon( new ImageIcon(create.class.getResource("/resources/addmenumini.png"))); + mnAddMenuNiveau1.add(new actAddMenuTrue()); + mnAddMenuNiveau1.add(new actAddMenuFalse()); + return mnAddMenuNiveau1; + } + + /** + * Menu lien de menu vers les niveau supérieur à 1.
+ * @return + */ + private JMenu mnAddMenuNiveauSup1() { + JMenu mnAddMenuNiveauSup1= new JMenu("Lien"); //addMenu + mnAddMenuNiveauSup1.setIcon( new ImageIcon(create.class.getResource("/resources/addmenumini.png"))); + mnAddMenuNiveauSup1.add(new actAddMenuTrue()); + mnAddMenuNiveauSup1.add(new actAddMenuFalse()); + return mnAddMenuNiveauSup1; + } + + /** + * Menu rechercher par l'index.
+ * @return + */ + private JMenu mnRechercheIndex() { + JMenu mnRechercheIndex = new JMenu("Recherche par l'index"); + mnRechercheIndex.setIcon(new ImageIcon(create.class.getResource("/resources/rechercheindexmini.png"))); + mnRechercheIndex.add( new actRechercheIndextrue()) ; + mnRechercheIndex.addSeparator(); + mnRechercheIndex.add(new actRechercheIndexfalse()); + return mnRechercheIndex; + } + + /** + * Menu rechercher par le contenu exact.
+ * Ignore la case et les epaces avant et après.
+ * @return + */ + private JMenu mnRechercheContenuExact() { + JMenu mnRechercheContenu = new JMenu("Recherche par le contenu exact"); + mnRechercheContenu.setIcon(new ImageIcon(create.class.getResource("/resources/recherchecontenumini.png"))); + mnRechercheContenu.add( new actRechercheContenutrue()); + mnRechercheContenu.addSeparator(); + mnRechercheContenu.add( new actRechercheContenufalse()); + return mnRechercheContenu; + } + + /** + * Menu rechercher par le contenu du plus proche voisin.
+ * @return + */ + private JMenu mnRechercheContenuPlusProcheVoisin() { + JMenu mnRechercheContenuPlusProcheVoisin2 = new JMenu("Recherche par le plus proche voisin"); + mnRechercheContenuPlusProcheVoisin2.setIcon(new ImageIcon(create.class.getResource("/resources/recherchecontenuplusprochevoisinmini.png"))); + mnRechercheContenuPlusProcheVoisin2.add( new actRechercheContenuPlusProcheVoisintrue()); + mnRechercheContenuPlusProcheVoisin2.addSeparator(); + mnRechercheContenuPlusProcheVoisin2.add(new actRechercheContenuPlusProcheVoisinfalse()); + return mnRechercheContenuPlusProcheVoisin2; + } + + /** + * Menu analyseStyle.
+ * @return + */ + private JMenu mnAnalyseStyle() { + JMenu mnAnalyseStyle = new JMenu("Evaluer le style"); + mnAnalyseStyle.setIcon(new ImageIcon(create.class.getResource("/resources/evaluerstylemini.png"))); + mnAnalyseStyle.add(new actEvaluerStyleTrue()); + mnAnalyseStyle.addSeparator(); + mnAnalyseStyle.add( new actEvaluerStyleFalse()); + return mnAnalyseStyle; + } + + /** + * Menu entête active.
+ * @return + */ + private JMenu mnevalEnteteActive() { + JMenu mnevalEnteteActive = new JMenu("Entête activé"); + mnevalEnteteActive.setIcon(new ImageIcon(create.class.getResource("/resources/enteteouimini.png"))); + mnevalEnteteActive.add(new actEvalEnteteActive()); + mnevalEnteteActive.add(new actEvalEnteteActiveNon()); + return mnevalEnteteActive; + } + + /** + * Menu ent^te pas active.
+ * @return + */ + private JMenu mnevalEntetePasActive() { + JMenu mnevalEntetePasActive = new JMenu("Entête pas activé"); + mnevalEntetePasActive.setIcon(new ImageIcon(create.class.getResource("/resources/entetenonmini.png"))); + mnevalEntetePasActive.add(new actEvalEntetePasActive()); + mnevalEntetePasActive.add(new actEvalEntetePasActiveNon()); + return mnevalEntetePasActive; + } + + /** + * Menu pied de page active.
+ * @return + */ + private JMenu mnEvalPiedPageActive() { + JMenu mnEvalPiedPageActive = new JMenu("Pied page activé"); + mnEvalPiedPageActive.setIcon(new ImageIcon(create.class.getResource("/resources/piedpageouimini.png"))); + mnEvalPiedPageActive.add(new actEvalPiedPageActive()); + mnEvalPiedPageActive.add(new actEvalPiedPageActiveNon()); + return mnEvalPiedPageActive; + } + + /** + * Menu pied de page pas active.
+ * @return + */ + private JMenu mnEvalPiedPagePasActive() { + JMenu mnEvalPiedPagePasActive = new JMenu("Pied page pas activé"); + mnEvalPiedPagePasActive.setIcon(new ImageIcon(create.class.getResource("/resources/piedpagenonmini.png"))); + mnEvalPiedPagePasActive.add(new actEvalPiedPagePasActive()); + mnEvalPiedPagePasActive.add(new actEvalPiedPagePasActiveNon()); + return mnEvalPiedPagePasActive; + } + + /** + * Menu évaluer le nom du node.
+ * Revient à évaluer la présence du node.
+ * @return + */ + private JMenu mnEvalNameNode() { + JMenu mnEvalNameNode = new JMenu("Evaluer la présence du node"); + mnEvalNameNode.setIcon(new ImageIcon(create.class.getResource("/resources/evalnodemini.png"))); + mnEvalNameNode.add(new actEvalNameNodeOui()); + mnEvalNameNode.add(new actEvalNameNodeNon()); + return mnEvalNameNode; + } + + /** + * Menu évaluer une variable de séquence.
+ * @return + */ + private JMenu mnEvalNameSequence() { + JMenu mnEvalNameSequence = new JMenu("Evaluer le nom de la séquence"); + mnEvalNameSequence.setIcon(new ImageIcon(create.class.getResource("/resources/evalnamesequencemini.png"))); + mnEvalNameSequence.add(new actEvalNameSequenceOui()); + mnEvalNameSequence.add(new actEvalNameSequenceNon()); + return mnEvalNameSequence; + } + + /** + * Menu évaluer le nom de la page.
+ * @return + */ + private JMenu mnEvalNamePage() { + JMenu mnEvalNamePage = new JMenu("Evaluer le nom de la page"); + mnEvalNamePage.setIcon(new ImageIcon(create.class.getResource("/resources/evalnamepagemini.png"))); + mnEvalNamePage.add(new actEvalNamePageOui()); + mnEvalNamePage.add(new actEvalNamePageNon()); + return mnEvalNamePage; + } + + /** + * Menu évaluer le numéro de la page.
+ * @return + */ + private JMenu mnEvalNumeroPage() { + JMenu mnEvalNumeroPage = new JMenu("Evaluer le numéro de la page"); + mnEvalNumeroPage.setIcon(new ImageIcon(create.class.getResource("/resources/evalnumeropagemini.png"))); + mnEvalNumeroPage.add(new actEvalNumeroPageOui()); + mnEvalNumeroPage.add(new actEvalNumeroPageNon()); + return mnEvalNumeroPage; + } + + /* + * Menu évaluer le numéro absolu de la page.
+ */ + private JMenu mnEvalNumeroAbsoluePage() { + JMenu mnEvalNumeroAbsoluePage = new JMenu("Evaluer le numéro absolue de la page"); + mnEvalNumeroAbsoluePage.setIcon(new ImageIcon(create.class.getResource("/resources/evalnumeroabsoluepagemini.png"))); + mnEvalNumeroAbsoluePage.add(new actEvalNumeroAbsoluePageOui()); + mnEvalNumeroAbsoluePage.add(new actEvalNumeroAbsoluePageNon()); + return mnEvalNumeroAbsoluePage; + } + + /** + * Evaluer la propriété personnalisé.
+ * @return + */ + private JMenu mnEvalTextUserDefined() { + JMenu mnEvalTextUserDefined = new JMenu("Evaluer la valeur de la propriété"); + mnEvalTextUserDefined.setIcon(new ImageIcon(create.class.getResource("/resources/evaltextuserdefinedmini.png"))); + mnEvalTextUserDefined.add(new actEvalTextUserDefinedOui()); + mnEvalTextUserDefined.add(new actEvalTextUserDefinedNon()); + return mnEvalTextUserDefined; + } + + /** + * Menu rechercher par le numéro de la page ancrer.
+ * Ce menu est utilisé pour les frames.
+ * @return + */ + private JMenu mnRechercheParNumeroPageAncrer() { + JMenu mnRechercheParNumeroPageAncrer = new JMenu("Recherche par le numéro de la page"); + mnRechercheParNumeroPageAncrer.setIcon(new ImageIcon(create.class.getResource("/resources/rechercheancragepagemini.png"))); + mnRechercheParNumeroPageAncrer.add( new actRechercheAnchorPageNumberTrue()); + mnRechercheParNumeroPageAncrer.addSeparator(); + mnRechercheParNumeroPageAncrer.add( new actRechercheAnchorPageNumberFalse()); + return mnRechercheParNumeroPageAncrer; + } + + /** + * Menu pour la représentation dans les feedbacks des étudiants.
+ * Ce menu apparaît dans tous nodes supérieur à 1.
+ * @return + */ + private JMenu mnPourFeedback() { + JMenu mnPourFeedback = new JMenu("Pour représentation feedback"); + mnPourFeedback.add(mnSaut()); + mnPourFeedback.addSeparator(); + mnPourFeedback.add(mnTitre()); + mnPourFeedback.addSeparator(); + mnPourFeedback.add(mnAddMenuNiveauSup1()); + return mnPourFeedback; + } + + /** + * Menu pour évaluer les tous les styles de paragraphe ou de titre.
+ * Ce menu apparaît uniquement dans le node page de la structurepage.
+ * @return + */ + private JMenu mnEvaluerStylesParagraphes() { + JMenu mnEvaluerStylesParagraphes = new JMenu("Evaluer tous les styles (paragraphes ou titres)."); + mnEvaluerStylesParagraphes.setIcon(new ImageIcon(create.class.getResource("/resources/evaluertouslesstylesparagraphesmini.png"))); + mnEvaluerStylesParagraphes.add( new actEvaluerTousLesStylesParagraphesTrue()); + return mnEvaluerStylesParagraphes; + } + + + /** + * Menu permettant insérer le node OU.
+ * Uniquement accésible pour les nodes avec recherche par contenu.
+ * @return + */ + private JMenu mnOu() { + JMenu mnOu = new JMenu("Insérer un node OU"); + mnOu.setIcon(new ImageIcon(create.class.getResource("/resources/oumini.png"))); + mnOu.add( new actOu()); + return mnOu; + } + + /** + * Menu respecter l'ordre des paragraphes.
+ * Vérification de l'ordre par le node précédent.
+ * @return + */ + private JMenu mnOrdreParagraphe() { + JMenu mnOrdreParagraphe = new JMenu("Ordre des paragraphes"); + mnOrdreParagraphe.setIcon(new ImageIcon(create.class.getResource("/resources/ordreparagraphemini.png"))); + mnOrdreParagraphe.add(new actEvalOrdreParagrapheOui()); + mnOrdreParagraphe.add(new actEvalOrdreParagrapheNon()); + return mnOrdreParagraphe; + } + + /** + * Menu pour la représentation des nodes de niveau 1.
+ * Permet de modifier le coefficient du node de niveua 1.
+ * @return + */ + private JMenu mnNiveau1 () { + JMenu mnNiveau1 = new JMenu("Pour représentation & coefficient"); + mnNiveau1.setIcon( new ImageIcon(create.class.getResource("/resources/attributanalysewritermini.png"))); + mnNiveau1.add(new actCoefficient()); + mnNiveau1.addSeparator(); + mnNiveau1.add(mnSautNiveau1()); + mnNiveau1.addSeparator(); + mnNiveau1.add(mnTitreNiveau1()); + mnNiveau1.addSeparator(); + mnNiveau1.add(mnAddMenuNiveau1()); + return mnNiveau1; + } + + /** + * Menu regroupant les menus permettant de recherche un node par son contenu textuel.
+ * Ce menu apparaît uniquement pour les node de la liste recherche par contenu.
+ * @return + */ + private JMenu mnGroupeRechercheContenu(node nod) { + JMenu mnGroupeRechercheContenu = new JMenu("Recherche le node"); + mnGroupeRechercheContenu.setIcon( new ImageIcon(create.class.getResource("/resources/recherchemini.png"))); + + if(listeDesNodesRechercheByContenu.isRechercheByContenu(nod)) { + mnGroupeRechercheContenu.add(mnRechercheContenuExact()); + mnGroupeRechercheContenu.addSeparator(); + mnGroupeRechercheContenu.add(mnRechercheContenuPlusProcheVoisin()); + mnGroupeRechercheContenu.addSeparator(); + mnGroupeRechercheContenu.add(mnRechercheIndex()); + } + if(listeRechercheParAnchorPageNumber.isRechercheParAnchorPageNumber(nod)) { + mnGroupeRechercheContenu.addSeparator(); + mnGroupeRechercheContenu.add(mnRechercheParNumeroPageAncrer()); + } + + return mnGroupeRechercheContenu; + } + + /** + * + * @param nod + * @return + */ + private JMenu mnGroupeMethodeEvaluer(node nod) { + JMenu mnGroupeMethodeEvaluer = new JMenu("Evaluer le node"); + mnGroupeMethodeEvaluer.setIcon( new ImageIcon(create.class.getResource("/resources/evaluatemini.png"))); + + if(listeDesNodesAnalyseStyle.isAnalyseStyle(nod)) { + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(mnAnalyseStyle()); + } + + if(listeEvalNameNode.isNodeEvalNameNode(nod)) { + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(mnEvalNameNode()); + } + + if(listeDesNodesAllContent.isAllContent(nod) ) { + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(new actAllContent()); + } + + if(listeDesNodesPourEvaluerPage.isPage(nod)) { + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(mnEvalNamePage()); + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(mnEvalNumeroPage()); + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(mnEvalNumeroAbsoluePage()); + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(mnEvaluerStylesParagraphes()); + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(mnOrdreParagraphe()); + } + + if(listeDesNodesPourEvaluationEntetePage.isEntete(nod)) { + mnGroupeMethodeEvaluer.add(mnevalEnteteActive()); + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(mnevalEntetePasActive()); + } + + if(listeDesNodesPourEvaluerPiedDePage.isPiedDePage(nod)) { + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(mnEvalPiedPageActive()); + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(mnEvalPiedPagePasActive()); + } + + if(nod.getNomElt().equals("meta:initial-creator")) { + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(new actEvalInitialCreator()); + } + if(nod.getNomElt().equals("dc:creator")) { + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(new actevalNameCreator()); + } + + if(nod.getNomElt().equals("text:sequence-decl")) { + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(mnEvalNameSequence()); + } + + if(nod.getNomElt().equals("text:user-defined") && nod.chemin().contains("structurepage")) { + mnGroupeMethodeEvaluer.addSeparator(); + mnGroupeMethodeEvaluer.add(mnEvalTextUserDefined()); + } + + + return mnGroupeMethodeEvaluer; + } + +} diff --git a/src/fenetres/evaluate.java b/src/fenetres/evaluate.java index 1caf323..1c03738 100644 --- a/src/fenetres/evaluate.java +++ b/src/fenetres/evaluate.java @@ -19,7 +19,6 @@ import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JMenu; import javax.swing.JMenuBar; -import javax.swing.JMenuItem; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; @@ -43,7 +42,6 @@ import fenetres.create_act.actDocumentation; import fenetres.create_act.actLicence; import fenetres.create_act.actTutoriels; import net.miginfocom.swing.MigLayout; -import fenetres.create_act.actLicence; public class evaluate extends JFrame { diff --git a/src/list/descriptionNode.java b/src/list/descriptionNode.java index 889d9d0..7b0bf95 100644 --- a/src/list/descriptionNode.java +++ b/src/list/descriptionNode.java @@ -103,6 +103,10 @@ public class descriptionNode { if(nameNode.equals("saut:automatique")) descriptionNode = descriptionNode + "

Ce node correspond au node \"text:soft-page-break\" sur Writer. Il indique un saut de page automatique." + "
C'est à dire qu'un node \"text:p\" (un paragraphe) a été scindé par un saut de page. Sur Writer les node \"text:soft-page-break\" sont des marqueurs de début de page mais ne peuvent pas contenir du texte, contrairement au node \"saut:automatique\".

"; + if(nameNode.equals("OU")) descriptionNode = descriptionNode + "

Ce node permet de réaliser une fonction logique OU.
" + + "Les nodes enfants correspondent à plusieurs possibilités laissé aux étudiants.
" + + "Le node enfant qui obtient le plus grand nombre de point est retenu comme réalisation de l'étudiant.

"; + //**************************************** diff --git a/src/list/listeAttributWriterPasEvaluableAvecCodeEvaluateur.java b/src/list/listeAttributWriterPasEvaluableAvecCodeEvaluateur.java index e1d6730..d84a7d9 100644 --- a/src/list/listeAttributWriterPasEvaluableAvecCodeEvaluateur.java +++ b/src/list/listeAttributWriterPasEvaluableAvecCodeEvaluateur.java @@ -7,11 +7,13 @@ public class listeAttributWriterPasEvaluableAvecCodeEvaluateur { } /** - * Liste des attributs Writer qui ne peuvent pas être évaluer par un code évaluateurs + * Liste des attributs Writer qui ne peuvent pas être évaluer par un code évaluateurs.
+ * * @param nameAttribut * @return */ public static boolean isEvaluable(String nameAttribut) { + 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; diff --git a/src/list/listeDesNodesAllContent.java b/src/list/listeDesNodesAllContent.java new file mode 100644 index 0000000..d13a116 --- /dev/null +++ b/src/list/listeDesNodesAllContent.java @@ -0,0 +1,20 @@ +package list; + +import cXML.node; + +public class listeDesNodesAllContent { + + public static boolean isAllContent(node nod) { + if(nod.retourneLesContenusEnfants("").length()<=0) return false; + if(nod.getNomElt().equals("OU")) return false; + + if(nod.getNomElt().equals("page")) return true; + if(nod.getNomElt().contains("text:")) return true; + + return true; + } + + + + +} diff --git a/src/list/listeDesNodesAnalyseStyle.java b/src/list/listeDesNodesAnalyseStyle.java new file mode 100644 index 0000000..067b9a7 --- /dev/null +++ b/src/list/listeDesNodesAnalyseStyle.java @@ -0,0 +1,17 @@ +package list; + +import cXML.node; + +public class listeDesNodesAnalyseStyle { + + /** + * Retourne TRUE si on peut utiliser la procédure analyseStyle.<:br> + * @param nod + * @return + */ + public static Boolean isAnalyseStyle(node nod) { + if(nod.getNomElt().contains("text:database-display")) return false; + if(nod.getNomElt().contains("text:")) return true; + return false; + } +} diff --git a/src/list/listeDesNodesAvecEvalNameNode.java b/src/list/listeDesNodesAvecEvalNameNode.java new file mode 100644 index 0000000..2d97432 --- /dev/null +++ b/src/list/listeDesNodesAvecEvalNameNode.java @@ -0,0 +1,19 @@ +package list; + +import cXML.node; + +public class listeDesNodesAvecEvalNameNode { + + /** + * Retourne TRUE si on peut utiliser la procédure evalNameNode.
+ * @param nod + * @return + */ + public static boolean isEvalNameNode(node nod) { + if(nod.getNomElt().contains("meta:")) return true; + if(nod.getNomElt().contains("dc:")) return true; + if(nod.getNomElt().contains("text:")) return true; + return false; + } + +} diff --git a/src/list/listeDesNodesAvecOU.java b/src/list/listeDesNodesAvecOU.java new file mode 100644 index 0000000..9e4c78e --- /dev/null +++ b/src/list/listeDesNodesAvecOU.java @@ -0,0 +1,16 @@ +package list; + +import cXML.node; + +public class listeDesNodesAvecOU { + + public static Boolean isOU(node nod) { + if(nod.getNomElt().equals("page")) return true; + if(nod.getNomElt().equals("text:p")) return true; + if(nod.getNomElt().equals("text:h")) return true; + if(nod.getNomElt().equals("text:list")) return true; + if(nod.getNomElt().equals("draw:frame")) return true; + return false; + } + +} diff --git a/src/list/listeDesNodesPourEvaluationEntetePage.java b/src/list/listeDesNodesPourEvaluationEntetePage.java new file mode 100644 index 0000000..c8ba945 --- /dev/null +++ b/src/list/listeDesNodesPourEvaluationEntetePage.java @@ -0,0 +1,14 @@ +package list; + +import cXML.node; + +public class listeDesNodesPourEvaluationEntetePage { + + + public static Boolean isEntete(node nod) { + + if(nod.getNomElt().equals("style:header-style")) return true; + return false; + } + +} diff --git a/src/list/listeDesNodesPourEvaluerPage.java b/src/list/listeDesNodesPourEvaluerPage.java new file mode 100644 index 0000000..dba98f9 --- /dev/null +++ b/src/list/listeDesNodesPourEvaluerPage.java @@ -0,0 +1,11 @@ +package list; + +import cXML.node; + +public class listeDesNodesPourEvaluerPage { + + public static Boolean isPage(node nod) { + if(nod.getNomElt().equals("page")) return true; + return false; + } +} diff --git a/src/list/listeDesNodesPourEvaluerPiedDePage.java b/src/list/listeDesNodesPourEvaluerPiedDePage.java new file mode 100644 index 0000000..4edc526 --- /dev/null +++ b/src/list/listeDesNodesPourEvaluerPiedDePage.java @@ -0,0 +1,12 @@ +package list; + +import cXML.node; + +public class listeDesNodesPourEvaluerPiedDePage { + + public static Boolean isPiedDePage(node nod) { + if(nod.getNomElt().equals("style:footer-style")) return true; + return false; + } + +} diff --git a/src/list/listeDesNodesRechercheByContenu.java b/src/list/listeDesNodesRechercheByContenu.java new file mode 100644 index 0000000..9545628 --- /dev/null +++ b/src/list/listeDesNodesRechercheByContenu.java @@ -0,0 +1,32 @@ +package list; + +import cXML.node; + +public class listeDesNodesRechercheByContenu { + + /** + * Retourne TRUE si on peut utiliser la recherche par contenu textuel.
+ * La rechercher par contenu se réalise par les méthodes suivantes:
+ * 1-Recherche par le contenu exact (ignore la case, et les espace au début et fin).
+ * 2-Recherche par le contenu du plus proche voisin.
+ * 3-Recherche par l'index;
+ * @param nod + * @return + */ + public static Boolean isRechercheByContenu(node nod) { + if(nod.getNomElt().contains("text:p")) return true; + if(nod.getNomElt().contains("text:line-break")) return true; + if(nod.getNomElt().contains("text:h")) return true; + if(nod.getNomElt().contains("text:span")) return true; + if(nod.getNomElt().equals("draw:text-box")) return true; + if(nod.getNomElt().equals("text:soft-page-break")) return true; + if(nod.getNomElt().contains("text:list")) return true; + if(nod.getNomElt().contains("text:section")) return true; + if(nod.getNomElt().equals("table:table-cell")) return true; + if(nod.getNomElt().equals("table:table-row")) return true; + if(nod.getNomElt().equals("draw:frame")) return true; + return false; + } + + +} diff --git a/src/list/listeDesNotesAEvaluer.java b/src/list/listeDesNotesAEvaluer.java new file mode 100644 index 0000000..bde80c2 --- /dev/null +++ b/src/list/listeDesNotesAEvaluer.java @@ -0,0 +1,17 @@ +package list; + +import cXML.node; + +public class listeDesNotesAEvaluer { + + + public static Boolean isAEvaluer(node nod) { + if(nod.getNomElt().equals("meta:initial-creator")) return true; + if(nod.getNomElt().equals("dc:creator")) return true; + if(nod.getNomElt().equals("text:sequence-decl")) return true; + if(nod.getNomElt().equals("text:user-defined")) return true; + + return false; + } + +} diff --git a/src/list/listeEvalNameNode.java b/src/list/listeEvalNameNode.java index a0896d6..20c61b4 100644 --- a/src/list/listeEvalNameNode.java +++ b/src/list/listeEvalNameNode.java @@ -10,12 +10,10 @@ public class listeEvalNameNode { * @return */ public static boolean isNodeEvalNameNode(node nod) { - if(nod.getNomElt().contains("meta:")) return true; if(nod.getNomElt().contains("dc:")) return true; if(nod.getNomElt().contains("text:")) return true; if(nod.getNomElt().contains("draw:")) return true; - return false; } diff --git a/src/list/listeNodeAnalyseWriter.java b/src/list/listeNodeAnalyseWriter.java index 6f1cdd2..8486d2e 100644 --- a/src/list/listeNodeAnalyseWriter.java +++ b/src/list/listeNodeAnalyseWriter.java @@ -34,6 +34,8 @@ public class listeNodeAnalyseWriter { if(nameNode.equals("translation")) return true; if(nameNode.equals("import_moodle")) return true; + if(nameNode.equals("import_moodle")) return true; + if(nameNode.equals("OU")) return true; return false; } diff --git a/src/resources/recherche.png b/src/resources/recherche.png new file mode 100644 index 0000000..d5aa212 Binary files /dev/null and b/src/resources/recherche.png differ diff --git a/src/resources/recherchemini.png b/src/resources/recherchemini.png new file mode 100644 index 0000000..70f467a Binary files /dev/null and b/src/resources/recherchemini.png differ