1 /******************************************************************************* 2 * Copyright (c) 2004, 2006 IBM Corporation and others. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Eclipse Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/epl-v10.html 7 * 8 * Contributors: 9 * IBM Corporation - initial API and implementation 10 *******************************************************************************/ 11 package org.eclipse.ui.internal.preferences; 12 13 /** 14 * @since 3.1 15 */ 16 public interface IDynamicPropertyMap extends IPropertyMap { 17 /** 18 * Attaches a property map listener to this map. The listener will be notified 19 * whenever one of the properties in the map is changed, added, or removed. 20 * 21 * @param listener 22 * @since 3.1 23 */ 24 public void addListener(IPropertyMapListener listener); 25 26 /** 27 * Attaches a listener that will receive notifications when any 28 * of the given properties change. If an identical listener is already registered, 29 * then this will add additional IDs to the set of properties being monitored 30 * by the given listener. 31 * 32 * @param listener 33 * @param propertyIds 34 * @since 3.1 35 */ 36 public void addListener(String[] propertyIds, IPropertyMapListener listener); 37 38 /** 39 * Removes a property map listener from this map . The listener will no longer 40 * be notified whenever one of the properties in the map is changed, added, or removed. 41 * 42 * @param listener 43 * @since 3.1 44 */ 45 public void removeListener(IPropertyMapListener listener); 46 } 47