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.4 2004/04/15 18:21:58 tomcopeland Exp $
19   */
20  public class AttributesSubMenu
21    extends JMenu
22  {
23    private ViewerModel model;
24    private SimpleNode  node;
25  
26    public AttributesSubMenu( ViewerModel model, SimpleNode node )
27    {
28      super(
29        MessageFormat.format(
30          NLS.nls( "AST.MENU.ATTRIBUTES" ), new Object[] { node.toString(  ) } ) );
31  
32      this.model   = model;
33      this.node    = node;
34  
35      init(  );
36    }
37  
38    private void init(  )
39    {
40      AttributeAxisIterator i = new AttributeAxisIterator( node );
41  
42      while (i.hasNext())
43      {
44        Attribute attribute = (Attribute)i.next(  );
45  
46        add(
47          new XPathFragmentAddingItem(
48            attribute.getName(  ) + " = " + attribute.getValue(  ), model,
49            AttributeToolkit.constructPredicate( attribute ) ) );
50      }
51    }
52  }
53  
54  
55  /*
56   * $Log: AttributesSubMenu.java,v $
57   * Revision 1.4  2004/04/15 18:21:58  tomcopeland
58   * Cleaned up imports with new version of IDEA; fixed some deprecated Ant junx
59   *
60   * Revision 1.3  2003/09/23 20:51:06  tomcopeland
61   * Cleaned up imports
62   *
63   * Revision 1.2  2003/09/23 20:34:34  tomcopeland
64   * Fixed some stuff PMD found
65   *
66   * Revision 1.1  2003/09/23 20:32:42  tomcopeland
67   * Added Boris Gruschko's new AST/XPath viewer
68   *
69   * Revision 1.1  2003/09/24 01:33:03  bgr
70   * moved to a new package
71   *
72   * Revision 1.1  2003/09/23 07:52:16  bgr
73   * menus added
74   *
75   */