Skip to content

Commit 15c78c2

Browse files
committed
Leverage new screenshot API
1 parent ecf0f9b commit 15c78c2

File tree

2 files changed

+6
-17
lines changed

2 files changed

+6
-17
lines changed

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

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import org.eclipse.swt.SWT;
2020
import org.eclipse.swt.graphics.Color;
2121
import org.eclipse.swt.graphics.GC;
22-
import org.eclipse.swt.graphics.Image;
2322
import org.eclipse.swt.graphics.ImageData;
2423
import org.eclipse.swt.graphics.ImageLoader;
2524
import org.eclipse.swt.graphics.Rectangle;
@@ -54,7 +53,7 @@ public static void main(String[] args) {
5453

5554
shell.open();
5655

57-
snapshot(display, composite, filename);
56+
snapshot(composite, filename);
5857

5958
while (!shell.isDisposed()) {
6059
if (!display.readAndDispatch()) {
@@ -79,15 +78,11 @@ private static Composite canvas(Display display, Shell shell) {
7978
return composite;
8079
}
8180

82-
private static void snapshot(Display display, Composite composite, String filename) {
83-
Rectangle bounds = composite.getBounds();
84-
Image image = new Image(display, bounds);
85-
GC gc = new GC(image);
86-
composite.print(gc);
87-
gc.dispose();
81+
private static void snapshot(Composite composite, String filename) {
82+
ImageData screenshot = SWT.takeScreenShot(composite);
8883

8984
ImageLoader loader = new ImageLoader();
90-
loader.data = new ImageData[] { image.getImageData() };
85+
loader.data = new ImageData[] { screenshot };
9186
File output = new File(filename);
9287
output.delete();
9388
loader.save(filename, SWT.IMAGE_PNG);

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

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@
1616
import org.eclipse.swt.SWT;
1717
import org.eclipse.swt.events.SelectionAdapter;
1818
import org.eclipse.swt.events.SelectionEvent;
19-
import org.eclipse.swt.graphics.GC;
20-
import org.eclipse.swt.graphics.Image;
2119
import org.eclipse.swt.graphics.ImageData;
2220
import org.eclipse.swt.graphics.ImageLoader;
2321
import org.eclipse.swt.layout.FillLayout;
@@ -72,14 +70,10 @@ public void widgetSelected(SelectionEvent e) {
7270
}
7371

7472
private static void saveImage(Control control, String filename, int format) {
75-
Image image = new Image(control.getDisplay(), control.getBounds());
76-
GC gc = new GC(image);
77-
control.print(gc);
78-
gc.dispose();
79-
ImageData data = image.getImageData();
73+
ImageData screenshot = SWT.takeScreenShot(control);
74+
ImageData data = screenshot;
8075
ImageLoader loader = new ImageLoader();
8176
loader.data = new ImageData[] { data };
8277
loader.save(filename, format);
83-
image.dispose();
8478
}
8579
}

0 commit comments

Comments
 (0)