Skip to content

Commit 7ad0a96

Browse files
arunjose696HeikoKlare
authored andcommitted
Simplify newImageData API: pass integer zoom instead of zoomContext
All callers currently use a zoom context with targetZoom == nativeZoom. This change passes a single integer zoom to AbstractImageProviderWrapper::newImageData, removing the unnecessary zoomContext parameter.
1 parent ee0856f commit 7ad0a96

File tree

1 file changed

+17
-18
lines changed
  • bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/graphics

1 file changed

+17
-18
lines changed

bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/graphics/Image.java

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1328,7 +1328,7 @@ public ImageData getImageData (int zoom) {
13281328
if (zoomLevelToImageHandle.containsKey(zoom)) {
13291329
return zoomLevelToImageHandle.get(zoom).getImageData();
13301330
}
1331-
return this.imageProvider.newImageData(new ZoomContext(zoom));
1331+
return this.imageProvider.newImageData(zoom);
13321332
}
13331333

13341334

@@ -2007,7 +2007,7 @@ public Collection<Integer> getPreservedZoomLevels() {
20072007

20082008
protected abstract ElementAtZoom<ImageData> loadImageData(int zoom);
20092009

2010-
abstract ImageData newImageData(ZoomContext zoomContext);
2010+
abstract ImageData newImageData(int zoom);
20112011

20122012
abstract AbstractImageProviderWrapper createCopy(Image image);
20132013

@@ -2068,8 +2068,8 @@ protected Rectangle getBounds(int zoom) {
20682068
}
20692069

20702070
@Override
2071-
ImageData newImageData(ZoomContext zoomContext) {
2072-
return getScaledImageData(zoomContext.targetZoom());
2071+
ImageData newImageData(int zoom) {
2072+
return getScaledImageData(zoom);
20732073
}
20742074

20752075
@Override
@@ -2095,18 +2095,18 @@ private abstract class ImageFromImageDataProviderWrapper extends AbstractImagePr
20952095
void initImage() {
20962096
// As the init call configured some Image attributes (e.g. type)
20972097
// it must be called
2098-
newImageData(new ZoomContext(100));
2098+
newImageData(100);
20992099
}
21002100

21012101
@Override
2102-
ImageData newImageData(ZoomContext zoomContext) {
2102+
ImageData newImageData(int zoom) {
21032103
Function<Integer, ImageData> imageDataRetrieval = zoomToRetrieve -> {
2104-
ImageHandle handle = initializeHandleFromSource(zoomContext);
2104+
ImageHandle handle = initializeHandleFromSource(new ZoomContext(zoomToRetrieve));
21052105
ImageData data = handle.getImageData();
21062106
handle.destroy();
21072107
return data;
21082108
};
2109-
return (ImageData) cachedImageData.computeIfAbsent(zoomContext.targetZoom(), imageDataRetrieval).clone();
2109+
return (ImageData) cachedImageData.computeIfAbsent(zoom, imageDataRetrieval).clone();
21102110
}
21112111

21122112
@Override
@@ -2270,17 +2270,16 @@ protected Rectangle getBounds(int zoom) {
22702270
}
22712271

22722272
@Override
2273-
ImageData newImageData(ZoomContext zoomContext) {
2274-
int targetZoom = zoomContext.targetZoom();
2273+
ImageData newImageData(int zoom) {
22752274
if (zoomLevelToImageHandle.isEmpty()) {
2276-
return createBaseHandle(targetZoom).getImageData();
2275+
return createBaseHandle(zoom).getImageData();
22772276
}
22782277
// if a GC is initialized with an Image (memGC != null), the image data must not be resized, because it would
22792278
// be a destructive operation. Therefor, a new handle is created for the requested zoom
22802279
if (memGC != null) {
2281-
return newImageHandle(zoomContext).getImageData();
2280+
return newImageHandle(new ZoomContext(zoom)).getImageData();
22822281
}
2283-
return getScaledImageData(targetZoom);
2282+
return getScaledImageData(zoom);
22842283
}
22852284

22862285
@Override
@@ -2392,14 +2391,14 @@ Object getProvider() {
23922391
}
23932392

23942393
@Override
2395-
ImageData newImageData(ZoomContext zoomContext) {
2394+
ImageData newImageData(int zoom) {
23962395
Function<Integer, ImageData> imageDataRetrival = zoomToRetrieve -> {
23972396
ImageHandle handle = initializeHandleFromSource(zoomToRetrieve);
23982397
ImageData data = handle.getImageData();
23992398
handle.destroy();
24002399
return data;
24012400
};
2402-
return (ImageData) cachedImageData.computeIfAbsent(zoomContext.targetZoom(), imageDataRetrival).clone();
2401+
return (ImageData) cachedImageData.computeIfAbsent(zoom, imageDataRetrival).clone();
24032402
}
24042403

24052404
@Override
@@ -2432,7 +2431,7 @@ private class ImageFileNameProviderWrapper extends BaseImageProviderWrapper<Imag
24322431
super(provider, ImageFileNameProvider.class);
24332432
// Checks for the contract of the passed provider require
24342433
// checking for valid image data creation
2435-
newImageData(new ZoomContext(DPIUtil.getDeviceZoom()));
2434+
newImageData(DPIUtil.getDeviceZoom());
24362435
}
24372436

24382437
@Override
@@ -2735,8 +2734,8 @@ protected long configureGCData(GCData data) {
27352734
}
27362735

27372736
@Override
2738-
ImageData newImageData(ZoomContext zoomContext) {
2739-
return loadImageData(zoomContext.targetZoom).element();
2737+
ImageData newImageData(int zoom) {
2738+
return loadImageData(zoom).element();
27402739
}
27412740

27422741
@Override

0 commit comments

Comments
 (0)