/** * Sets the receiver's image at a column. * * @param index the column index * @param image the new image * @exception IllegalArgumentException * <ul> * <li>ERROR_INVALID_ARGUMENT - if the image has been disposed * </ul> * * @exception SWTException * <ul> * <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver * </ul> */ public void setImage(final int index, final Image image) { checkWidget(); if (image != null && image.isDisposed()) { error(SWT.ERROR_INVALID_ARGUMENT); } int count = Math.max(1, parent.getColumnCount()); if (index >= 0 && index < count) { ensureData(index, count); if (!equals(data[index].image, image)) { parent.updateColumnImageCount(index, data[index].image, image); data[index].image = image; parent.updateItemImageSize(image); markCached(); if (parent.getColumnCount() == 0) { parent.updateScrollBars(); } parent.redraw(); } } }