View Javadoc

    1   package net.sourceforge.pmd.util.viewer.gui.menu;
    2
    3   import net.sourceforge.pmd.ast.SimpleNode;
    4   import net.sourceforge.pmd.jaxen.Attribute;
    5   import net.sourceforge.pmd.jaxen.AttributeAxisIterator;
    6   import net.sourceforge.pmd.util.viewer.model.AttributeToolkit;
    7   import net.sourceforge.pmd.util.viewer.model.ViewerModel;
    8   import net.sourceforge.pmd.util.viewer.util.NLS;
    9
    10  import javax.swing.*;
    11  import java.text.MessageFormat;
    12
    13
    14  /***
    15   * contains menu items for the predicate creation
    16   *
    17   * @author Boris Gruschko ( boris at gruschko.org )
    18   * @version $Id: AttributesSubMenu.java,v 1.10 2006/02/10 14:15:31 tomcopeland Exp $
    19   */
    20  public class AttributesSubMenu
    21          extends JMenu {
    22      private ViewerModel model;
    23      private SimpleNode node;
    24
    25      public AttributesSubMenu(ViewerModel model, SimpleNode node) {
    26          super(MessageFormat.format(NLS.nls("AST.MENU.ATTRIBUTES"), new Object[]{node.toString()}));
    27          this.model = model;
    28          this.node = node;
    29          init();
    30      }
    31
    32      private void init() {
    33          AttributeAxisIterator i = new AttributeAxisIterator(node);
    34          while (i.hasNext()) {
    35              Attribute attribute = (Attribute) i.next();
    36              add(new XPathFragmentAddingItem(attribute.getName() + " = " + attribute.getValue(), model,
    37                      AttributeToolkit.constructPredicate(attribute)));
    38          }
    39      }
    40  }