All Downloads are FREE. Search and download functionalities are using the official Maven repository.

fr.lteconsulting.hexa.client.interfaces.AValueControl Maven / Gradle / Ivy

The newest version!
package fr.lteconsulting.hexa.client.interfaces;

import com.google.gwt.user.client.ui.Composite;

public abstract class AValueControl extends Composite implements IValueControl
{
	@Override
	public void addCallback( Callback callback, Object cookie ) // throws
																	// Exception
	{
		assert (this.callback == null);
		// if( this.callback != null )
		// throw new Exception(
		// "AValueControl::addCallback has been called but a callback was already set !"
		// );

		this.callback = callback;
		this.cookie = cookie;
	}

	@Override
	public abstract void setValue( T value );

	@Override
	public abstract T getValue();

	private Callback callback = null;
	private Object cookie = null;

	protected void signalCallbacks()
	{
		if( callback == null )
			return;

		callback.onValueControlChange( cookie );
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy