} else if (i != 0) { rowWidth += 2;
public Point computeSize (int wHint, int hHint, boolean changed) {	checkWidget ();	int width = 0, rowWidth = 0, height = 0, rowHeight = 0;	RECT rect = new RECT ();	REBARBANDINFO rbBand = new REBARBANDINFO ();	rbBand.cbSize = REBARBANDINFO.sizeof;	rbBand.fMask = OS.RBBIM_IDEALSIZE | OS.RBBIM_CHILDSIZE | OS.RBBIM_STYLE;	int count = OS.SendMessage (handle, OS.RB_GETBANDCOUNT, 0, 0);	for (int i=0; i<count; i++) {		OS.SendMessage (handle, OS.RB_GETBANDINFO, i, rbBand);		OS.SendMessage (handle, OS.RB_GETBANDBORDERS, i, rect);		if ((rbBand.fStyle & OS.RBBS_BREAK) != 0) {			width = Math.max (width, rowWidth);			height += rowHeight;			rowWidth = rowHeight = 0;		} else if (i != 0) {			rowWidth += 2;		}		rowWidth += rbBand.cxIdeal + rect.left + rect.right;		rowHeight = Math.max (rowHeight, rbBand.cyMinChild + rect.top + rect.bottom);	}	width = Math.max (width, rowWidth);	height += rowHeight - rect.top - rect.bottom;	if (width == 0) width = DEFAULT_WIDTH;	if (height == 0) height = DEFAULT_HEIGHT;	if (wHint != SWT.DEFAULT) width = wHint;	if (hHint != SWT.DEFAULT) height = hHint;	int border = getBorderWidth ();	width += border * 2;	height += border * 2;	return new Point (width, height);}