Skip to content

Commit 3627584

Browse files
committed
Leverage new ImageData.save API
1 parent b724b57 commit 3627584

File tree

6 files changed

+21
-35
lines changed

6 files changed

+21
-35
lines changed

bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/TaskBar.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717

1818
import java.io.*;
19+
import java.nio.file.Path;
1920

2021
import org.eclipse.swt.*;
2122
import org.eclipse.swt.graphics.*;
@@ -173,9 +174,7 @@ IShellLink createShellLink (MenuItem item) {
173174
} else {
174175
data = image.getImageData (DPIUtil.getDeviceZoom ());
175176
}
176-
ImageLoader loader = new ImageLoader ();
177-
loader.data = new ImageData [] {data};
178-
loader.save (icon, SWT.IMAGE_ICO);
177+
data.save(Path.of(icon));
179178
}
180179
}
181180
if (icon != null) {

examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet246.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
* For a list of all SWT example snippets see
2020
* http://www.eclipse.org/swt/snippets/
2121
*/
22+
import java.nio.file.Path;
23+
2224
import org.eclipse.swt.*;
2325
import org.eclipse.swt.graphics.*;
2426
import org.eclipse.swt.layout.*;
@@ -62,9 +64,7 @@ private static void createImage() {
6264
gc.drawString("T", 124, 10);
6365
gc.dispose();
6466

65-
ImageLoader loader = new ImageLoader();
66-
loader.data = new ImageData[] { image.getImageData() };
67-
loader.save("swt.png", SWT.IMAGE_PNG);
67+
image.getImageData().save(Path.of("swt.png"));
6868
image.dispose();
6969
font.dispose();
7070
}

tests/org.eclipse.swt.tests.gtk/ManualTests/org/eclipse/swt/tests/gtk/snippets/Bug547529_ControlPrintBroken.java

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
* Andrey Loskutov - initial API and implementation
1313
*******************************************************************************/
1414
package org.eclipse.swt.tests.gtk.snippets;
15-
import java.io.File;
15+
import java.nio.file.Path;
1616

1717
import org.eclipse.swt.SWT;
1818
import org.eclipse.swt.graphics.Color;
@@ -89,15 +89,11 @@ private static void snapshot(Display display, Composite composite, String filena
8989
composite.print(gc);
9090
gc.dispose();
9191

92-
ImageLoader loader = new ImageLoader();
93-
loader.data = new ImageData[] { image.getImageData() };
94-
File file = new File(filename + ".png");
95-
file.delete();
96-
loader.save(filename + ".png", SWT.IMAGE_PNG);
97-
92+
Path file = Path.of(filename + ".png");
93+
image.getImageData().save(file);
9894

99-
loader = new ImageLoader();
100-
ImageData[] loaded = loader.load(file.getAbsolutePath());
95+
ImageLoader loader = new ImageLoader();
96+
ImageData[] loaded = loader.load(file.toAbsolutePath().toString());
10197
Shell shell = display.getShells()[0];
10298
for (ImageData d : loaded) {
10399
Label l = new Label(shell, SWT.NONE);

tests/org.eclipse.swt.tests.gtk/ManualTests/org/eclipse/swt/tests/gtk/snippets/Bug547529_ImageLoaderStriping.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,14 @@
1313
*******************************************************************************/
1414
package org.eclipse.swt.tests.gtk.snippets;
1515

16+
import java.nio.file.Path;
17+
1618
import org.eclipse.swt.SWT;
1719
import org.eclipse.swt.events.SelectionAdapter;
1820
import org.eclipse.swt.events.SelectionEvent;
1921
import org.eclipse.swt.graphics.GC;
2022
import org.eclipse.swt.graphics.Image;
2123
import org.eclipse.swt.graphics.ImageData;
22-
import org.eclipse.swt.graphics.ImageLoader;
2324
import org.eclipse.swt.layout.FillLayout;
2425
import org.eclipse.swt.layout.RowLayout;
2526
import org.eclipse.swt.widgets.Button;
@@ -56,7 +57,7 @@ public void widgetSelected(SelectionEvent e) {
5657
dialog.setFileName("Untitled.png");
5758
String filename = dialog.open();
5859
if ((filename != null) && !filename.isEmpty()) {
59-
saveImage(composite, filename, SWT.IMAGE_PNG);
60+
saveImage(composite, Path.of(filename));
6061
}
6162
}
6263
});
@@ -71,15 +72,13 @@ public void widgetSelected(SelectionEvent e) {
7172
display.dispose();
7273
}
7374

74-
private static void saveImage(Control control, String filename, int format) {
75+
private static void saveImage(Control control, Path file) {
7576
Image image = new Image(control.getDisplay(), control.getBounds());
7677
GC gc = new GC(image);
7778
control.print(gc);
7879
gc.dispose();
7980
ImageData data = image.getImageData();
80-
ImageLoader loader = new ImageLoader();
81-
loader.data = new ImageData[] { data };
82-
loader.save(filename, format);
81+
data.save(file);
8382
image.dispose();
8483
}
8584
}

tests/org.eclipse.swt.tests.gtk/ManualTests/org/eclipse/swt/tests/gtk/snippets/Bug547557_ShellPrintGC.java

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,13 @@
1414
package org.eclipse.swt.tests.gtk.snippets;
1515

1616

17+
import java.nio.file.Path;
18+
1719
import org.eclipse.swt.SWT;
1820
import org.eclipse.swt.events.SelectionAdapter;
1921
import org.eclipse.swt.events.SelectionEvent;
2022
import org.eclipse.swt.graphics.GC;
2123
import org.eclipse.swt.graphics.Image;
22-
import org.eclipse.swt.graphics.ImageData;
23-
import org.eclipse.swt.graphics.ImageLoader;
2424
import org.eclipse.swt.graphics.Rectangle;
2525
import org.eclipse.swt.layout.RowLayout;
2626
import org.eclipse.swt.widgets.Button;
@@ -50,7 +50,7 @@ public void widgetSelected(SelectionEvent e) {
5050
// String filename = "/home/<user>/shell_test.png";
5151
String filename = "";
5252
if ((filename != null) && !filename.isEmpty()) {
53-
saveImage(shell, filename, SWT.IMAGE_PNG);
53+
saveImage(shell, Path.of(filename));
5454
}
5555
}
5656
});
@@ -64,18 +64,15 @@ public void widgetSelected(SelectionEvent e) {
6464
display.dispose();
6565
}
6666

67-
private static void saveImage(Shell shell, String filename, int format) {
67+
private static void saveImage(Shell shell, Path file) {
6868
Rectangle bounds = shell.getBounds();
6969
Image image = new Image(shell.getDisplay(), bounds);
7070
// Printing the client area will result in a warning and only the client area being printed
7171
// Image image = new Image(shell.getDisplay(), shell.getClientArea());
7272
GC gc = new GC(image);
7373
shell.print(gc);
7474
gc.dispose();
75-
ImageData data = image.getImageData();
76-
ImageLoader loader = new ImageLoader();
77-
loader.data = new ImageData[] { data };
78-
loader.save(filename, format);
75+
image.getImageData().save(file);
7976
image.dispose();
8077
}
8178
}

tests/org.eclipse.swt.tests.gtk/ManualTests/org/eclipse/swt/tests/gtk/snippets/Bug553240_ImageLoaderSavingStriped.java

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -56,13 +56,8 @@ static void initUI() throws Exception {
5656
ImageLoader loader = new ImageLoader();
5757
final ImageData[] loadedImageData = loader.load("./images/map.png");
5858
final ImageData tileImageData = loadedImageData[0];
59-
final ImageLoader imageLoader = new ImageLoader();
60-
imageLoader.data = new ImageData[] { tileImageData };
61-
62-
final int imageType = tileImageData.type;
6359
file.delete();
64-
final String imageFilePath = file.getAbsolutePath();
65-
imageLoader.save(imageFilePath, imageType);
60+
tileImageData.save(file.toPath());
6661
text.setText(file.getAbsolutePath());
6762

6863
Composite composite = new Composite(shell, SWT.NONE);

0 commit comments

Comments
 (0)