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: XPathFragmentAddingItem.java,v 1.7 2005/08/23 17:17:49 tomcopeland Exp $ 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 32 this.model = model; 33 this.fragment = fragment; 34 35 addActionListener(this); 36 } 37 38 /*** 39 * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent) 40 */ 41 public void actionPerformed(ActionEvent e) { 42 model.appendToXPathExpression(fragment, this); 43 } 44 }