Bug 249915 [Dialogs] TitleAreaDialog does not short circuit if message is null
M20080911-1700 When profiling use of a custom WizardDialog on Linux/GTK, a lot of time was spent in WizardPage.setMessage(...). It turns out that this was because we were setting a message of null after each keypress, and the page's description (DialogPage.getDescription()) was also null. In this case the short-circuit in TitleAreaDialog.setMessage(String, int) fails to notice that the message has not changed, and does a layout every time. For our dialog this takes about 40ms each time, which is noticeable when compounded with other work.
bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/TitleAreaDialog.java
* 
	 * @param parent
	 *            the SWT parent for the title area widgets
	 * @return Control with the highest x axis value.
	 */
	private Control createTitleArea(Composite parent) {
		
		parent.addDisposeListener(new DisposeListener() {
			public void widgetDisposed(DisposeEvent e) {
				if (titleAreaColor != null) {
					titleAreaColor.dispose();
				}
			}
		});
		
		Display display = parent.getDisplay();
		Color background;
		Color foreground;
		if (titleAreaRGB != null) {
			titleAreaColor = new Color(display, titleAreaRGB);
			background = titleAreaColor;
			foreground = null;
		} else {
			background = JFaceColors.getBannerBackground(display);
			foreground = JFaceColors.getBannerForeground(display);
		}
		parent.setBackground(background);
		int verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING);
		int horizontalSpacing = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING);