Index: openide/src/org/openide/actions/ToolsAction.java =================================================================== RCS file: /cvs/openide/src/org/openide/actions/ToolsAction.java,v retrieving revision 1.46 diff -u -r1.46 ToolsAction.java --- openide/src/org/openide/actions/ToolsAction.java 27 Aug 2003 20:37:22 -0000 1.46 +++ openide/src/org/openide/actions/ToolsAction.java 22 Nov 2003 19:14:34 -0000 @@ -18,6 +18,7 @@ import javax.swing.event.*; import java.util.*; import org.openide.actions.ActionManager; +import org.openide.awt.Actions; import org.openide.awt.JInlineMenu; import org.openide.util.ContextAwareAction; @@ -132,27 +133,25 @@ if (a == null) { if (firstItemAdded) separator = true; - } else if( forMenu ) { - if( a instanceof Presenter.Menu && a.isEnabled () ) { - if (separator) { - list.add (null); - separator = false; - } - - JMenuItem mi = ((Presenter.Menu)a).getMenuPresenter (); - list.add (mi); - - firstItemAdded = true; + } else if (a.isEnabled()) { + JMenuItem mi; + if (forMenu && a instanceof Presenter.Menu) { + mi = ((Presenter.Menu)a).getMenuPresenter(); + } else if (!forMenu && a instanceof Presenter.Popup) { + mi = ((Presenter.Popup)a).getPopupPresenter(); + } else if (!(a instanceof Presenter.Menu) && !(a instanceof Presenter.Popup)) { + // Generic Swing action. + mi = new JMenuItem(); + Actions.connect(mi, a, !forMenu); + } else { + // Should not be here. + continue; } - } else if( a instanceof Presenter.Popup && a.isEnabled() ) { if (separator) { - list.add (null); + list.add(null); separator = false; } - - JMenuItem mi = ((Presenter.Popup)a).getPopupPresenter (); - list.add (mi); - + list.add(mi); firstItemAdded = true; } }