RegistryFactory.getRegistry().addRegistryChangeListener(this, IPreferencesConstants.RUNTIME_NAME); RegistryFactory.getRegistry().addRegistryChangeListener(this, IPreferencesConstants.PREFERS_NAME);
	public PreferenceModifyListener[] getModifyListeners() {		if (modifyListeners == null) {			modifyListeners = new ListenerList();			IExtension[] extensions = getPrefExtensions();			for (int i = 0; i < extensions.length; i++) {				IConfigurationElement[] elements = extensions[i].getConfigurationElements();				for (int j = 0; j < elements.length; j++)					if (ELEMENT_MODIFIER.equalsIgnoreCase(elements[j].getName()))						addModifyListener(elements[j]);			}			RegistryFactory.getRegistry().addRegistryChangeListener(this, IPreferencesConstants.RUNTIME_NAME);			RegistryFactory.getRegistry().addRegistryChangeListener(this, IPreferencesConstants.PREFERS_NAME);		}		Object[] source = modifyListeners.getListeners();		PreferenceModifyListener[] result = new PreferenceModifyListener[source.length];		System.arraycopy(source, 0, result, 0, source.length);		return result;	}