/******************************************************************************* * Copyright (c) 2004, 2006 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.ui.internal.preferences; /** * @since 3.1 */ public abstract class AbstractIntegerListener extends AbstractPropertyListener { private IDynamicPropertyMap map; private int defaultValue; private String propertyId; public AbstractIntegerListener() { } public void attach(IDynamicPropertyMap map, String propertyId, int defaultValue) { this.defaultValue = defaultValue; this.propertyId = propertyId; if (this.map != null) { this.map.removeListener(this); } this.map = map; if (this.map != null) { this.map.addListener(new String[]{propertyId}, this); } } /* (non-Javadoc) * @see org.eclipse.ui.internal.preferences.AbstractPropertyListener#update() */ protected void update() { handleValue(PropertyUtil.get(map, propertyId, defaultValue)); } /** * @param b * @since 3.1 */ protected abstract void handleValue(int b); }