src/share/classes/sun/swing/LightweightContent.java
Print this page
*** 83,117 ****
/**
* {@code JLightweightFrame} calls this method to notify the client
* application that a new data buffer has been set as a content pixel
* buffer. Typically this occurs when a buffer of a larger size is
! * created in response to a content resize event. The method reports
! * a reference to the pixel data buffer, the content image bounds
! * within the buffer and the line stride of the buffer. These values
! * have the following correlation.
* <p>
! * The {@code width} and {@code height} matches the size of the content
* (the component returned from the {@link #getComponent} method). The
* {@code x} and {@code y} is the origin of the content, {@code (0, 0)}
! * in the coordinate space of the content, appearing at
! * {@code data[y * linestride + x]} in the buffer. All indices
! * {@code data[(y + j) * linestride + (x + i)]} where
! * {@code (0 <= i < width)} and {@code (0 <= j < height)} will represent
! * valid pixel data, {@code (i, j)} in the coordinate space of the content.
*
* @param data the content pixel data buffer of INT_ARGB_PRE type
! * @param x the x coordinate of the image
! * @param y the y coordinate of the image
! * @param width the width of the image
! * @param height the height of the image
* @param linestride the line stride of the pixel buffer
*/
public void imageBufferReset(int[] data,
int x, int y,
int width, int height,
! int linestride);
/**
* {@code JLightweightFrame} calls this method to notify the client
* application that the content image bounds have been changed within the
* image's pixel buffer.
--- 83,126 ----
/**
* {@code JLightweightFrame} calls this method to notify the client
* application that a new data buffer has been set as a content pixel
* buffer. Typically this occurs when a buffer of a larger size is
! * created in response to a content resize event.
* <p>
! * When a scale factor greater than one is set on a {@code JLightweightFrame}
! * ({@link JLightweightFrame#setScaleFactor}), an {@link OffScreenHiDPIImage}
! * is created to server the pixel buffer.
! * <p>
! * The method reports a reference to the pixel data buffer, the content
! * image bounds within the buffer and the line stride of the buffer.
! * These values have the following correlation.
! * The {@code width} and {@code height} matches the layout size of the content
* (the component returned from the {@link #getComponent} method). The
* {@code x} and {@code y} is the origin of the content, {@code (0, 0)}
! * in the layout coordinate space of the content, appearing at
! * {@code data[y * scale * linestride + x * scale]} in the buffer.
! * A pixel with indices {@code (i, j)}, where {@code (0 <= i < width)} and
! * {@code (0 <= j < height)}, in the layout coordinate space of the content
! * is represented by a {@code scale^2} square of pixels in the physical
! * coordinate space of the buffer. The top-left corner of the square has the
! * following physical coordinate in the buffer:
! * {@code data[(y + j) * scale * linestride + (x + i) * scale]}.
*
* @param data the content pixel data buffer of INT_ARGB_PRE type
! * @param x the logical x coordinate of the image
! * @param y the logical y coordinate of the image
! * @param width the logical width of the image
! * @param height the logical height of the image
* @param linestride the line stride of the pixel buffer
+ * @param scale the scale factor of the pixel buffer
*/
public void imageBufferReset(int[] data,
int x, int y,
int width, int height,
! int linestride,
! int scale);
/**
* {@code JLightweightFrame} calls this method to notify the client
* application that the content image bounds have been changed within the
* image's pixel buffer.