diff --git a/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/ExternalProgramImageDescriptor.java b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/ExternalProgramImageDescriptor.java index ad1e0a2edd8..8b08b5fb297 100644 --- a/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/ExternalProgramImageDescriptor.java +++ b/bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/ExternalProgramImageDescriptor.java @@ -13,6 +13,7 @@ *******************************************************************************/ package org.eclipse.ui.internal.misc; +import org.eclipse.core.runtime.IAdaptable; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.swt.graphics.ImageData; import org.eclipse.swt.program.Program; @@ -23,7 +24,7 @@ * The external program image descriptor is the descriptor used to handle images * that are from a Program. */ -public class ExternalProgramImageDescriptor extends ImageDescriptor { +public class ExternalProgramImageDescriptor extends ImageDescriptor implements IAdaptable { private Program program; @@ -73,4 +74,12 @@ public int hashCode() { } return programName.hashCode(); } + + @Override + public T getAdapter(Class adapter) { + if (adapter == Program.class) { + return adapter.cast(program); + } + return null; + } }