Display display = getDisplay();
Image closeButtonImage = getCloseButtonImage(false);
Rectangle boundsNow = item.getBoundsNow();
Rectangle closeButtonBounds = computeCloseButtonBounds(item, boundsNow);
Transform transform = new Transform(display);
if (placement.isRotateAll()) {
transform.translate(closeButtonBounds.x, closeButtonBounds.y);
if (placement == Placement.LEFT_ROTATE_ALL) {
transform.translate(0, closeButtonBounds.height);
transform.rotate(-90);
} else if (placement == Placement.RIGHT_ROTATE_ALL) {
transform.rotate(90);
transform.translate(0, -closeButtonBounds.width);
}
transform.translate(-closeButtonBounds.x, -closeButtonBounds.y);
}
gc.setTransform(transform);
gc.drawImage(closeButtonImage, closeButtonBounds.x, closeButtonBounds.y);
gc.setTransform(null);
transform.dispose();
}