View Javadoc

1   package net.sourceforge.pmd.util.viewer.gui.menu;
2   
3   import net.sourceforge.pmd.util.viewer.model.ViewerModel;
4   
5   import javax.swing.*;
6   import java.awt.event.ActionEvent;
7   import java.awt.event.ActionListener;
8   
9   
10  /**
11   * adds the given path fragment to the XPath expression upon action
12   *
13   * @author Boris Gruschko ( boris at gruschko.org )
14   * @version $Id$
15   */
16  public class XPathFragmentAddingItem
17          extends JMenuItem
18          implements ActionListener {
19      private ViewerModel model;
20      private String fragment;
21  
22      /**
23       * constructs the item
24       *
25       * @param caption  menu item's caption
26       * @param model    model to refer to
27       * @param fragment XPath expression fragment to be added upon action
28       */
29      public XPathFragmentAddingItem(String caption, ViewerModel model, String fragment) {
30          super(caption);
31          this.model = model;
32          this.fragment = fragment;
33          addActionListener(this);
34      }
35  
36      /**
37       * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
38       */
39      public void actionPerformed(ActionEvent e) {
40          model.appendToXPathExpression(fragment, this);
41      }
42  }