From 71b94e798bbdd9a1ee251f8ce89dcc396735530e Mon Sep 17 00:00:00 2001 From: Hannes Wellmann Date: Sat, 17 May 2025 08:47:27 +0200 Subject: [PATCH] Support adapting the ExternalProgramImageDescriptor for its program --- .../internal/misc/ExternalProgramImageDescriptor.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) 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; + } }