1 11 package org.eclipse.debug.internal.ui.actions.context; 12 13 import org.eclipse.core.runtime.IAdaptable; 14 import org.eclipse.debug.internal.ui.DebugPluginImages; 15 import org.eclipse.debug.internal.ui.IInternalDebugUIConstants; 16 import org.eclipse.debug.internal.ui.actions.ActionMessages; 17 import org.eclipse.debug.internal.ui.actions.provisional.IAsynchronousTerminateAdapter; 18 import org.eclipse.debug.internal.ui.actions.provisional.IBooleanRequestMonitor; 19 import org.eclipse.jface.resource.ImageDescriptor; 20 21 public class TerminateAction extends AbstractDebugContextAction { 22 23 protected void doAction(final Object element) { 24 if (element instanceof IAdaptable) { 25 IAsynchronousTerminateAdapter adapter = (IAsynchronousTerminateAdapter) ((IAdaptable)element).getAdapter(IAsynchronousTerminateAdapter.class); 26 if (adapter != null) 27 adapter.terminate(element, new ActionRequestMonitor()); 28 } 29 } 30 31 32 33 protected void isEnabledFor(Object element, IBooleanRequestMonitor monitor) { 34 if (element instanceof IAdaptable) { 35 IAsynchronousTerminateAdapter adapter = (IAsynchronousTerminateAdapter) ((IAdaptable)element).getAdapter(IAsynchronousTerminateAdapter.class); 36 if (adapter != null) { 37 adapter.canTerminate(element, monitor); 38 } else { 39 notSupported(monitor); 40 } 41 } 42 } 43 44 protected String getStatusMessage() { 45 return ActionMessages.TerminateActionDelegate_Exceptions_occurred_attempting_to_terminate__2; 46 } 47 48 protected String getErrorDialogMessage() { 49 return ActionMessages.TerminateActionDelegate_Terminate_failed__1; 50 } 51 52 public String getText() { 53 return ActionMessages.TerminateAction_0; 54 } 55 56 public String getHelpContextId() { 57 return "terminate_action_context"; } 59 60 public String getId() { 61 return "org.eclipse.debug.ui.debugview.toolbar.terminate"; } 63 64 public String getToolTipText() { 65 return ActionMessages.TerminateAction_3; 66 } 67 68 public ImageDescriptor getDisabledImageDescriptor() { 69 return DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_TERMINATE); 70 } 71 72 public ImageDescriptor getHoverImageDescriptor() { 73 return DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_TERMINATE); 74 } 75 76 public ImageDescriptor getImageDescriptor() { 77 return DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_TERMINATE); 78 } 79 } 80 | Popular Tags |