OS.SendMessage (hwndHeader, OS.HDM_SETITEM, index, hdItem);
super.setImage (image); if (parent.sortColumn != this || parent.sortDirection != SWT.NULL) { setImage (image, false, false); }
void setImage (Image image, boolean sort, boolean right) {	int index = parent.indexOf (this);	if (index == -1) return;	int hwndHeader = parent.hwndHeader;	if (hwndHeader == 0) return;	HDITEM hdItem = new HDITEM ();	hdItem.mask = OS.HDI_FORMAT | OS.HDI_IMAGE | OS.HDI_BITMAP;	OS.SendMessage (hwndHeader, OS.HDM_GETITEM, index, hdItem);	hdItem.fmt &= ~OS.HDF_BITMAP_ON_RIGHT;	if (image != null) {		if (sort) {			hdItem.mask &= ~OS.HDI_IMAGE;			hdItem.fmt &= ~OS.HDF_IMAGE;			hdItem.fmt |= OS.HDF_BITMAP;			hdItem.hbm = image.handle;		} else {			hdItem.mask &= ~OS.HDI_BITMAP;			hdItem.fmt &= ~OS.HDF_BITMAP;			hdItem.fmt |= OS.HDF_IMAGE;			hdItem.iImage = parent.imageIndexHeader (image);		}		if (right) hdItem.fmt |= OS.HDF_BITMAP_ON_RIGHT;	} else {		hdItem.fmt &= ~(OS.HDF_IMAGE | OS.HDF_BITMAP);	}	OS.SendMessage (hwndHeader, OS.HDM_SETITEM, index, hdItem);}