Skip to content

Commit 2ad2498

Browse files
committed
Avoid implementations of ImageDescriptor.getImageData()
ImageDescriptor.getImageData() is deprecated and sub-classes are advised to stop re-implementing it and instead implement getImageData(int). The still existing implementations just replicate the default implementation and therefore can just be removed. Additionally implementation of ImageDescriptor.getMissingImageDescriptor() is simplified and ImageDescriptor implementations are cleaned-up.
1 parent b5ed8be commit 2ad2498

File tree

7 files changed

+11
-86
lines changed

7 files changed

+11
-86
lines changed

bundles/org.eclipse.jface/META-INF/MANIFEST.MF

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
22
Bundle-ManifestVersion: 2
33
Bundle-Name: %pluginName
44
Bundle-SymbolicName: org.eclipse.jface;singleton:=true
5-
Bundle-Version: 3.36.100.qualifier
5+
Bundle-Version: 3.37.0.qualifier
66
Bundle-Vendor: %providerName
77
Bundle-Localization: plugin
88
Export-Package: org.eclipse.jface,

bundles/org.eclipse.jface/src/org/eclipse/jface/resource/CompositeImageDescriptor.java

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -347,15 +347,6 @@ final protected void drawImage(ImageDataProvider srcProvider, int ox, int oy) {
347347
}
348348
}
349349

350-
/**
351-
* @deprecated Use {@link #getImageData(int)} instead.
352-
*/
353-
@Deprecated
354-
@Override
355-
public ImageData getImageData() {
356-
return getImageData(100);
357-
}
358-
359350
@Override
360351
public ImageData getImageData(int zoom) {
361352
if (!supportsZoomLevel(zoom)) {

bundles/org.eclipse.jface/src/org/eclipse/jface/resource/ImageDescriptor.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*******************************************************************************
2-
* Copyright (c) 2000, 2024 IBM Corporation and others.
2+
* Copyright (c) 2000, 2025 IBM Corporation and others.
33
*
44
* This program and the accompanying materials
55
* are made available under the terms of the Eclipse Public License 2.0
@@ -434,12 +434,15 @@ public ImageData getImageData() {
434434
return getImageData(100);
435435
}
436436

437+
private static final ImageDescriptor MISSING_IMAGE = createFromImageDataProvider(
438+
z -> z == 100 ? DEFAULT_IMAGE_DATA : null);
439+
437440
/**
438441
* Returns the shared image descriptor for a missing image.
439442
*
440443
* @return the missing image descriptor
441444
*/
442445
public static ImageDescriptor getMissingImageDescriptor() {
443-
return MissingImageDescriptor.getInstance();
446+
return MISSING_IMAGE;
444447
}
445448
}

bundles/org.eclipse.jface/src/org/eclipse/jface/resource/MissingImageDescriptor.java

Lines changed: 0 additions & 52 deletions
This file was deleted.

bundles/org.eclipse.jface/src/org/eclipse/jface/resource/URLImageDescriptor.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -130,12 +130,6 @@ public boolean equals(Object o) {
130130
return ((URLImageDescriptor) o).url.equals(this.url);
131131
}
132132

133-
@Deprecated
134-
@Override
135-
public ImageData getImageData() {
136-
return getImageData(getURL(url), 100, 100);
137-
}
138-
139133
@Override
140134
public ImageData getImageData(int zoom) {
141135
return getImageData(url, zoom);

bundles/org.eclipse.ui.forms/src/org/eclipse/ui/internal/forms/widgets/FormImages.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ public int hashCode() {
108108
}
109109

110110
@Override
111-
public ImageData getImageData() {
111+
public ImageData getImageData(int zoom) {
112112
return null;
113113
}
114114

@@ -177,7 +177,7 @@ public int hashCode() {
177177
}
178178

179179
@Override
180-
public ImageData getImageData() {
180+
public ImageData getImageData(int zoom) {
181181
return null;
182182
}
183183

@@ -273,7 +273,7 @@ public int hashCode() {
273273
}
274274

275275
@Override
276-
public ImageData getImageData() {
276+
public ImageData getImageData(int zoom) {
277277
return null;
278278
}
279279

bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/misc/ExternalProgramImageDescriptor.java

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
package org.eclipse.ui.internal.misc;
1515

1616
import org.eclipse.jface.resource.ImageDescriptor;
17-
import org.eclipse.swt.graphics.Image;
1817
import org.eclipse.swt.graphics.ImageData;
1918
import org.eclipse.swt.program.Program;
2019
import org.eclipse.ui.ISharedImages;
@@ -26,7 +25,7 @@
2625
*/
2726
public class ExternalProgramImageDescriptor extends ImageDescriptor {
2827

29-
public Program program;
28+
private Program program;
3029

3130
/**
3231
* Creates a new ImageDescriptor. The image is loaded from a file with the given
@@ -41,11 +40,9 @@ public ExternalProgramImageDescriptor(Program program) {
4140
*/
4241
@Override
4342
public boolean equals(Object o) {
44-
if (!(o instanceof ExternalProgramImageDescriptor)) {
43+
if (!(o instanceof ExternalProgramImageDescriptor other)) {
4544
return false;
4645
}
47-
ExternalProgramImageDescriptor other = (ExternalProgramImageDescriptor) o;
48-
4946
// See if there is a name - compare it if so and compare the programs if not
5047
String otherName = other.program.getName();
5148
if (otherName == null) {
@@ -54,14 +51,6 @@ public boolean equals(Object o) {
5451
return otherName.equals(program.getName());
5552
}
5653

57-
/**
58-
* Returns an SWT Image that is described by the information in this descriptor.
59-
* Each call returns a new Image.
60-
*/
61-
public Image getImage() {
62-
return createImage();
63-
}
64-
6554
@Override
6655
public ImageData getImageData(int zoom) {
6756
if (program != null) {

0 commit comments

Comments
 (0)