Bug 87075 [SWT Examples - SWT Controls] Incorrect Dialog buttons creation with SWT.RETRY, SWT.ABORT, and SWT.IGNORE on MessageBox
When I was going through the Eclipse 3.1M5a examples (eclipse-examples- 3.1M5a.zip), on Solaris 9 (GTK), I realized that selecting SWT.RETRY, SWT.ABORT, or SWT.IGNORE individually for MessageBox always create the OK button on the dialog box. Steps to reproduce: 1. Install Eclipse 3.1M5a on Solaris 9. 2. Download Eclipse 3.1M5a Examples and install them. 3. Launch Eclipse 4. Select Window -> Show View -> Other.... This will launch the Show View Dialog. 5. From the Show View Dialog, select SWT Examples -> SWT Controls. This will display SWT Controls View. 6. Double click the SWT Controls tab and expand the view. 7. From SWT Controls View, select Dialog tab. and select the MessageBox. 8. Select either SWT.RETRY, SWT.ABORT, or SWT.IGNORE option and click the "Create Dialog" button. The "Title" dialog box comes up with an OK button. It should have the button according to the SWT option (RETRY, ABORT, or IGNORE). 9. Select 2 options from SWT.RETRY, SWT.ABORT, or SWT.IGNORE. Again, the dialog box comes up with only 1 OK button. In this case, I think 2 buttons should come up. 10. Select all 3 options from SWT.RETRY, SWT.ABORT, and SWT.IGNORE. The dialog box comes up correctly with all 3 buttons (RETRY, ABORT, and IGNORE).
examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/DialogTab.java
multiButton = new Button(fileDialogStyleGroup, SWT.CHECK);
		multiButton.setText("SWT.MULTI");
	
		
		if (RTL_SUPPORT_ENABLE) {
			createOrientationGroup();
		}
		
		
		dialogCombo.addSelectionListener (new SelectionAdapter () {
			public void widgetSelected (SelectionEvent event) {
				dialogSelected (event);
			}
		});
		createButton.addSelectionListener (new SelectionAdapter () {
			public void widgetSelected (SelectionEvent event) {
				createButtonSelected (event);
			}
		});
		SelectionListener buttonStyleListener = new SelectionAdapter () {
			public void widgetSelected (SelectionEvent event) {
				buttonStyleSelected (event);
			}
		};
		okButton.addSelectionListener (buttonStyleListener);
		cancelButton.addSelectionListener (buttonStyleListener);
		yesButton.addSelectionListener (buttonStyleListener);
		noButton.addSelectionListener (buttonStyleListener);
		retryButton.addSelectionListener (buttonStyleListener);
		abortButton.addSelectionListener (buttonStyleListener);