| package $packageName$; |
| |
| import org.eclipse.jface.action.Action; |
| import org.eclipse.jface.dialogs.MessageDialog; |
| import org.eclipse.ui.IWorkbenchPage; |
| import org.eclipse.ui.IWorkbenchWindow; |
| import org.eclipse.ui.PartInitException; |
| |
| |
| public class OpenViewAction extends Action { |
| |
| private final IWorkbenchWindow window; |
| private int instanceNum = 0; |
| private final String viewId; |
| |
| public OpenViewAction(IWorkbenchWindow window, String label, String viewId) { |
| this.window = window; |
| this.viewId = viewId; |
| setText(label); |
| // The id is used to refer to the action in a menu or toolbar |
| setId(ICommandIds.CMD_OPEN); |
| // Associate the action with a pre-defined command, to allow key bindings. |
| setActionDefinitionId(ICommandIds.CMD_OPEN); |
| setImageDescriptor($pluginClass$.getImageDescriptor("/icons/sample2.gif")); |
| } |
| |
| public void run() { |
| if(window != null) { |
| try { |
| window.getActivePage().showView(viewId, Integer.toString(instanceNum++), IWorkbenchPage.VIEW_ACTIVATE); |
| } catch (PartInitException e) { |
| MessageDialog.openError(window.getShell(), "Error", "Error opening view:" + e.getMessage()); |
| } |
| } |
| } |
| } |