Bug 85255 Replace custom Link implementation with SWT Link
I20050215-0800 Replace custom Link implementation with SWT Link. Note: improve work for translators and get rid of cutom escape chars in string.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/SmartTypingConfigurationBlock.java
}
	
	private void createMessage(final Composite composite) {
		 
		
		String before= PreferencesMessages.getString("SmartTypingConfigurationBlock.tabs.message.before"); 
		String linkText= PreferencesMessages.getString("SmartTypingConfigurationBlock.tabs.message.linktext"); 
		String linkTooltip= PreferencesMessages.getString("SmartTypingConfigurationBlock.tabs.message.linktooltip"); 
		String after= PreferencesMessages.getFormattedString("SmartTypingConfigurationBlock.tabs.message.after", new String[] {Integer.toString(getIndentSize()), getIndentChar()}); 
		
		final CHyperLinkText link= new CHyperLinkText(composite, SWT.NONE);
		link.setText(before + " {org.eclipse.jdt.ui.preferences.CodeFormatterPreferencePage," + linkText + "," + linkTooltip + "}" + after ); 
		GridData gd= new GridData(SWT.FILL, SWT.BEGINNING, true, false);
		gd.widthHint= 300; 
		link.setLayoutData(gd);
		link.addLinkListener(new ILinkListener() {
			public void linkSelected(String url) {
				PreferencesUtil.createPreferenceDialogOn(link.getShell(), url, null, null);
			}
		});
		
		final IPreferenceStore combinedStore= JavaPlugin.getDefault().getCombinedPreferenceStore();
		final IPropertyChangeListener propertyChangeListener= new IPropertyChangeListener() {
			private boolean fHasRun= false;
			public void propertyChange(PropertyChangeEvent event) {
				if (fHasRun)
					return;
				if (composite.isDisposed())
					return;
				String property= event.getProperty();