Bug 127184 New API elements missing @since
Build id: I20060208-0848 The following new API elements in Eclipse 3.2 are missing "@since 3.2" tags: org.eclipse.jdt.ui.actions.FindExceptionOccurrencesAction#selectionChanged(org.eclipse.jface.viewers.IStructuredSelection) org.eclipse.jdt.ui.actions.FindImplementOccurrencesAction#selectionChanged(org.eclipse.jface.viewers.IStructuredSelection) org.eclipse.jdt.ui.actions.JdtActionConstants#INTRODUCE_INDIRECTION org.eclipse.jdt.ui.jarpackager.JarPackageData#createJarWriter3(org.eclipse.swt.widgets.Shell) org.eclipse.ltk.core.refactoring.CompositeChange#getRefactoringDescriptor() org.eclipse.ltk.core.refactoring.IRefactoringCoreStatusCodes#MISSING_REFACTORING_HISTORY_VERSION org.eclipse.ltk.core.refactoring.IRefactoringCoreStatusCodes#UNSUPPORTED_REFACTORING_HISTORY_VERSION org.eclipse.ltk.core.refactoring.IRefactoringCoreStatusCodes#REFACTORING_HISTORY_IO_ERROR org.eclipse.ltk.core.refactoring.IRefactoringCoreStatusCodes#REFACTORING_HISTORY_FORMAT_ERROR org.eclipse.ltk.core.refactoring.TextChange#getPreviewContent(org.eclipse.ltk.core.refactoring.TextEditBasedChangeGroup[], org.eclipse.jface.text.IRegion, boolean, int, org.eclipse.core.runtime.IProgressMonitor) org.eclipse.ltk.core.refactoring.participants.CopyArguments#toString() org.eclipse.ltk.core.refactoring.participants.CreateArguments#toString() org.eclipse.ltk.core.refactoring.participants.DeleteArguments#toString() org.eclipse.ltk.core.refactoring.participants.MoveArguments#toString() org.eclipse.ltk.core.refactoring.participants.RenameArguments#toString() org.eclipse.ltk.ui.refactoring.RefactoringUI#createLightWeightStatusDialog(org.eclipse.ltk.core.refactoring.RefactoringStatus, org.eclipse.swt.widgets.Shell, java.lang.String)
org.eclipse.ltk.core.refactoring/src/org/eclipse/ltk/core/refactoring/TextChange.java
* @throws CoreException if an exception occurs while generating the preview
	 * 
	 * @see #getCurrentContent(IRegion, boolean, int, IProgressMonitor)
	 */
	public String getPreviewContent(TextEditBasedChangeGroup[] changeGroups, IRegion region, boolean expandRegionToFullLine, int surroundingLines, IProgressMonitor pm) throws CoreException {
		IRegion currentRegion= getRegion(changeGroups);
		Assert.isTrue(region.getOffset() <= currentRegion.getOffset() && 
			currentRegion.getOffset() + currentRegion.getLength() <= region.getOffset() + region.getLength());
		
		TextEdit root= getEdit();
		Assert.isNotNull(root, "No root edit"); 
		for (int c= 0; c < changeGroups.length; c++) {
			TextEditBasedChangeGroup group= changeGroups[c];
			TextEdit[] edits= group.getTextEdits();
			for (int e= 0; e < edits.length; e++) {
				Assert.isTrue(root == edits[e].getRoot(), "Wrong root edit"); 
			}
		}
		PreviewAndRegion result= getPreviewDocument(changeGroups, pm);
		int delta;
		if (result.region == null) {	
			delta= -currentRegion.getLength();
		} else {
			delta= result.region.getLength() - currentRegion.getLength();
		}
		return getContent(result.document, new Region(region.getOffset(), region.getLength() + delta), expandRegionToFullLine, surroundingLines);
		
	}