package net.sourceforge.pmd.util.viewer.gui.menu; import net.sourceforge.pmd.ast.Node; import net.sourceforge.pmd.ast.SimpleNode; import net.sourceforge.pmd.util.viewer.model.ViewerModel; import net.sourceforge.pmd.util.viewer.util.NLS; import javax.swing.*; import java.text.MessageFormat; /** * submenu for the simple node itself * * @author Boris Gruschko ( boris at gruschko.org ) * @version $Id: SimpleNodeSubMenu.java,v 1.3 2004/04/15 18:21:58 tomcopeland Exp $ */ public class SimpleNodeSubMenu extends JMenu { private ViewerModel model; private SimpleNode node; /** * constructs the submenu * * @param model model to which the actions will be forwarded * @param node menu's owner */ public SimpleNodeSubMenu( ViewerModel model, SimpleNode node ) { super( MessageFormat.format( NLS.nls( "AST.MENU.NODE.TITLE" ), new Object[] { node.toString( ) } ) ); this.model = model; this.node = node; init( ); } private void init( ) { StringBuffer buf = new StringBuffer( 200 ); for ( Node temp = node; temp != null; temp = temp.jjtGetParent( ) ) { buf.insert( 0, "/" + temp.toString( ) ); } add( new XPathFragmentAddingItem( NLS.nls( "AST.MENU.NODE.ADD_ABSOLUTE_PATH" ), model, buf.toString( ) ) ); add( new XPathFragmentAddingItem( NLS.nls( "AST.MENU.NODE.ADD_ALLDESCENDANTS" ), model, "//" + node.toString( ) ) ); } } /* * $Log: SimpleNodeSubMenu.java,v $ * Revision 1.3 2004/04/15 18:21:58 tomcopeland * Cleaned up imports with new version of IDEA; fixed some deprecated Ant junx * * Revision 1.2 2003/09/23 20:51:06 tomcopeland * Cleaned up imports * * Revision 1.1 2003/09/23 20:32:42 tomcopeland * Added Boris Gruschko's new AST/XPath viewer * * Revision 1.1 2003/09/24 01:33:03 bgr * moved to a new package * * Revision 1.1 2003/09/23 07:52:16 bgr * menus added * */