Bug 40638 [Dialogs] TitleAreaDialog is not initialized in the usual way.
When the TitleAreaDialog is constructed, it isn't ready to handle all of its mutators. In this snippet, the create() line is required, because otherwise setMessage() will throw a NullPointer when it attempts to modify the messageLabel; but it shouldn't be (according to Eclipse conventions). TitleAreaDialog titleAreaDialog = new TitleAreaDialog(getShell()); titleAreaDialog.create(); titleAreaDialog.setTitle("Title: org.eclipse.jface.dialogs.TitleAreaDialog"); titleAreaDialog.setMessage("Message: org.eclipse.jface.dialogs.TitleAreaDialog"); titleAreaDialog.open();
bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/TitleAreaDialog.java
}
/**
 * Creates the dialog's title area.
 *
 * @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);
	}	
	int verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING);