< prev index next >
src/java.desktop/macosx/classes/sun/lwawt/macosx/CImage.java
Print this page
*** 136,156 ****
g2.dispose();
return ((DataBufferInt)bimg.getRaster().getDataBuffer()).getData();
}
- public CImage createFromImageImmediately(final Image image) {
- int[] buffer = imageToArray(image, false);
-
- if (buffer == null) {
- return null;
- }
-
- return new CImage(nativeCreateNSImageFromArray(buffer, image.getWidth(null),
- image.getHeight(null)));
- }
-
public byte[] getPlatformImageBytes(final Image image) {
int[] buffer = imageToArray(image, false);
if (buffer == null) {
return null;
--- 136,145 ----
*** 166,189 ****
return createImageUsingNativeSize(nativeCreateNSImageFromBytes(buffer));
}
// This is used to create a CImage from a Image
public CImage createFromImage(final Image image) {
if (image instanceof MultiResolutionImage) {
List<Image> resolutionVariants
= ((MultiResolutionImage) image).getResolutionVariants();
! return createFromImages(resolutionVariants);
}
! int[] buffer = imageToArray(image, true);
if (buffer == null) {
return null;
}
return new CImage(nativeCreateNSImageFromArray(buffer, image.getWidth(null), image.getHeight(null)));
}
! public CImage createFromImages(List<Image> images) {
if (images == null || images.isEmpty()) {
return null;
}
int num = images.size();
--- 155,191 ----
return createImageUsingNativeSize(nativeCreateNSImageFromBytes(buffer));
}
// This is used to create a CImage from a Image
public CImage createFromImage(final Image image) {
+ return createFromImage(image, true);
+ }
+
+ public CImage createFromImageImmediately(final Image image) {
+ return createFromImage(image, false);
+ }
+
+ // This is used to create a CImage from a Image
+ private CImage createFromImage(final Image image, final boolean prepareImage) {
if (image instanceof MultiResolutionImage) {
List<Image> resolutionVariants
= ((MultiResolutionImage) image).getResolutionVariants();
! return createFromImages(resolutionVariants, prepareImage);
}
! int[] buffer = imageToArray(image, prepareImage);
if (buffer == null) {
return null;
}
return new CImage(nativeCreateNSImageFromArray(buffer, image.getWidth(null), image.getHeight(null)));
}
! public CImage createFromImages(final List<Image> images) {
! return createFromImages(images, true);
! }
!
! private CImage createFromImages(final List<Image> images, final boolean prepareImage) {
if (images == null || images.isEmpty()) {
return null;
}
int num = images.size();
*** 192,203 ****
int[] w = new int[num];
int[] h = new int[num];
num = 0;
! for (Image img : images) {
! buffers[num] = imageToArray(img, true);
if (buffers[num] == null) {
// Unable to process the image
continue;
}
w[num] = img.getWidth(null);
--- 194,205 ----
int[] w = new int[num];
int[] h = new int[num];
num = 0;
! for (final Image img : images) {
! buffers[num] = imageToArray(img, prepareImage);
if (buffers[num] == null) {
// Unable to process the image
continue;
}
w[num] = img.getWidth(null);
< prev index next >