fJARPath= (oldEntry != null) ? oldEntry.getPath() : new Path("");
	public SourceAttachmentBlock(IProject project, IStatusChangeListener context, IClasspathEntry oldEntry) {		fContext= context;		fCurrProject= project;						fRoot= fCurrProject.getWorkspace().getRoot();				fIsVariableEntry= (oldEntry.getEntryKind() == IClasspathEntry.CPE_VARIABLE);				fNameStatus= new StatusInfo();		fNameExistsStatus= new StatusInfo();		fJavaDocStatus= new StatusInfo();						IPath attachPath= (oldEntry != null) ? oldEntry.getSourceAttachmentPath() : new Path("");		IPath attachRoot= (oldEntry != null) ? oldEntry.getSourceAttachmentRootPath() : new Path("");				SourceAttachmentAdapter adapter= new SourceAttachmentAdapter();		fPrefixField= new StringButtonDialogField(adapter);		fPrefixField.setDialogFieldListener(adapter);		fPrefixField.setLabelText(JavaPlugin.getResourceString(PREFIX + ".label"));		fPrefixField.setButtonLabel(JavaPlugin.getResourceString(PREFIX + ".button"));				fJavaDocField= new StringButtonDialogField(adapter);		fJavaDocField.setDialogFieldListener(adapter);		fJavaDocField.setLabelText(JavaPlugin.getResourceString(JAVADOC + ".label"));		fJavaDocField.setButtonLabel(JavaPlugin.getResourceString(JAVADOC + ".button"));						if (fIsVariableEntry) {			IStatusChangeListener listener= new IStatusChangeListener() {				public void statusChanged(IStatus status) {					variableUpdated(status);				}			};			fVariableSelectionBlock= new VariableSelectionBlock(listener, new ArrayList(), attachPath, true);			variableUpdated(fNameStatus);		} else {					fFileNameField= new StringButtonDialogField(adapter);			fFileNameField.setDialogFieldListener(adapter);			fFileNameField.setLabelText(JavaPlugin.getResourceString(FILENAME + ".label"));			fFileNameField.setButtonLabel(JavaPlugin.getResourceString(FILENAME + ".external.button"));					fInternalButtonField= new SelectionButtonDialogField(SWT.PUSH);			fInternalButtonField.setDialogFieldListener(adapter);			fInternalButtonField.setLabelText(JavaPlugin.getResourceString(FILENAME + ".internal.button"));					if (attachPath != null) {				fFileNameField.setText(attachPath.toString());			} else {				fFileNameField.setText("");			}		}			if (attachRoot != null) {			fPrefixField.setText(attachRoot.toString());		} else {			fPrefixField.setText("");		}						fJARPath= (oldEntry != null) ? oldEntry.getPath() : new Path("");	}