for (int i = 0; i < months.length; i++) {
width = Math.max(width, gc.textExtent(months[i]).x);
}
width += prevMonth.computeSize(SWT.DEFAULT, SWT.DEFAULT, changed).x * 2
+ HEADER_SPACING * 4 + gc.textExtent(" 9999").x; //$NON-NLS-1$
width = Math.max(width, (gc.textExtent("99").x + theme.cellPadding * 2)
* colCount + linesCount); //$NON-NLS-1$
int cw = (width - linesCount) / colCount + 1;
width = cw * colCount + linesCount;
((GridData) monthHeader.getLayoutData()).widthHint = width;
((GridData) footer.getLayoutData()).widthHint = width;