Bug 76726 [Jobs][Progress] Redesign job error dialog
The job error dialog is very confusing. It shows two lists in a sort of master/detail paradigm. When you first see the error, you have to click on the first error listing in the top of the dialog to see the actual error message in the bottom of the dialog. This is not obvious. Furthermore, there is no text on the dialog to give users any help. Suggest that, if there is only one error reported, that you use the regular single error dialog (that dialog does appear if you click the 'job-errored' icon in the status line of the workbench). If multiple errors occur then use a multi-error dialog. And redesign a new multi-error dialog that is a little easier for the user to understand. Perhaps a listing of the errors in a FormText where the error title and error text could be displayed without the user clicking on each error individually (just an idea).
bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ErrorDialog.java
protected void configureShell(Shell shell) {
        super.configureShell(shell);
        shell.setText(title);
    }
    /*
     * (non-Javadoc) Method declared on Dialog.
     */
    protected void createButtonsForButtonBar(Composite parent) {
        
        createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL,
                true);
        if (status.isMultiStatus()) {
            detailsButton = createButton(parent, IDialogConstants.DETAILS_ID,
                    IDialogConstants.SHOW_DETAILS_LABEL, false);
        }
    }
    /**
     * This implementation of the <code>Dialog</code> framework method creates
     * and lays out a composite and calls <code>createMessageArea</code> and
     * <code>createCustomArea</code> to populate it. Subclasses should
     * override <code>createCustomArea</code> to add contents below the
     * message.
     */
    protected Control createDialogArea(Composite parent) {
        createMessageArea(parent);
        
        Composite composite = new Composite(parent, SWT.NONE);
        GridLayout layout = new GridLayout();
        layout.marginHeight = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_MARGIN);
        layout.marginWidth = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_MARGIN);