MessageDialog.openInformation(shell, errorTitle, errorMessage);
String invalidSelectionMessage= CompareMessages.getString("CompareWithHistory.invalidSelectionMessage"); MessageDialog.openInformation(shell, errorTitle, invalidSelectionMessage);
	public void run(IAction action) {				String errorTitle= CompareMessages.getString("ReplaceFromHistory.title"); //$NON-NLS-1$		String errorMessage= CompareMessages.getString("ReplaceFromHistory.internalErrorMessage"); //$NON-NLS-1$				Shell shell= JavaPlugin.getActiveWorkbenchShell();		// shell can be null; as a result error dialogs won't be parented				ISelection selection= getSelection();		IMember input= getEditionElement(selection);		if (input == null) {			// shouldn't happen because Action should not be enabled in the first place			MessageDialog.openInformation(shell, errorTitle, errorMessage);			return;		}				IFile file= getFile(input);		if (file == null) {			MessageDialog.openError(shell, errorTitle, errorMessage);			return;		}				boolean inEditor= beingEdited(file);		if (inEditor)			input= (IMember) getWorkingCopy(input);		// get a TextBuffer where to insert the text		TextBuffer buffer= null;		try {			buffer= TextBuffer.acquire(file);			ITypedElement target= new JavaTextBufferNode(buffer, inEditor);			ITypedElement[] editions= buildEditions(target, file);			ResourceBundle bundle= ResourceBundle.getBundle(BUNDLE_NAME);			EditionSelectionDialog d= new EditionSelectionDialog(shell, bundle);			d.setHelpContextId(IJavaHelpContextIds.COMPARE_ELEMENT_WITH_HISTORY_DIALOG);			d.setCompareMode(true);			d.setEditionTitleImage(JavaCompareUtilities.getImage(input));			d.selectEdition(target, editions, input);								} catch(CoreException ex) {			ExceptionHandler.handle(ex, shell, errorTitle, errorMessage);		} finally {			if (buffer != null)				TextBuffer.release(buffer);		}	}