analyseWriter/src/action/actEvaluerStyleTousLesNodes...

78 lines
2.8 KiB
Java

package action;
import java.awt.event.ActionEvent;
import javax.swing.AbstractAction;
import javax.swing.Action;
import javax.swing.ImageIcon;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.TreePath;
import MEPTL.commandes;
import cXML.node;
import fenetres.create;
import list.listeDesNodesAnalyseStyle;
public class actEvaluerStyleTousLesNodesTrue extends AbstractAction{
private static final long serialVersionUID = 1L;
{
putValue( Action.NAME, "Evaluer le style." );
putValue( Action.SHORT_DESCRIPTION, "Evaluer le style:name de ce node dans le fichier de l'étudiant");
putValue( Action.SMALL_ICON, new ImageIcon(create.class.getResource("/resources/truemini.png")));
}
@Override
public void actionPerformed(ActionEvent e) {
node nod = (node) fenetres.create.getSelectNode().getUserObject();
if(nod.getNomElt().equals("structurepage")) {
for(int i = 0 ; i < nod.getNodes().size(); i++) {
if(nod.getNodes().get(i).getNomElt().equals("page")) {
ajouteAttribut(nod.getNodes().get(i));
}
}
}
TreePath path = fenetres.create.getTree().getSelectionPath();
DefaultTreeModel model = (DefaultTreeModel) fenetres.create.getTree().getModel();
DefaultMutableTreeNode root = (DefaultMutableTreeNode) model.getRoot();
model.reload(root);
fenetres.create.getTree().setSelectionPath(path);
fenetres.create.getTree().expandPath(path);
fenetres.create.getTextNodeSelect().refreshAffichage(nod);
}
private void ajouteAttribut(node nodePage) {
for(int i = 0 ; i < nodePage.getNodes().size(); i++) {
if(listeDesNodesAnalyseStyle.isAnalyseStyle(nodePage.getNodes().get(i))) {
nodePage.getNodes().get(i).getAttributs().put("analyseStyle", "true");
//***************************************************************************************************************
//** Place l'attribut EvaluerATraversAnalyseStyle=true au style qui doit être évaluer à travers d'analyseStyle **
//** S'il y a des attributs évaluer avec ‽ alors change par ‼ **
//***************************************************************************************************************
String nameStyle = nodePage.getNodes().get(i).getAttributs().get("text:style-name");
node nodStyle = commandes.sujet.retourneFirstNodeByNameAndAttributValueExactStrict("style:style", "style:name", nameStyle);
if(nodStyle!=null) {
nodStyle.getAttributs().put("EvaluerATraversAnalyseStyle", "true");
nodStyle.evaluerTrue();
nodStyle.changeLesCodesEvaluateursVersCodeATraversAnalyseStyle();
}
}
}
}
}