/*************************************************** * * cismet GmbH, Saarbruecken, Germany * * ... and it just works. * ****************************************************/ package Sirius.navigator.ui.status; import java.beans.*; /** * DOCUMENT ME! * * @author pascal * @version $Revision$, $Date$ */ public class DefaultStatusChangeSupport extends PropertyChangeSupport implements StatusChangeSupport { //~ Constructors ----------------------------------------------------------- /** * Creates a new DefaultStatusChangeSupport object. * * @param source DOCUMENT ME! */ public DefaultStatusChangeSupport(final Object source) { super(source); } //~ Methods ---------------------------------------------------------------- /** * DOCUMENT ME! * * @param status DOCUMENT ME! */ public void fireStatusChange(final Status status) { if (this.hasListeners()) { super.firePropertyChange(StatusChangeListener.STATUS_CHANGED, null, status); } } /** * DOCUMENT ME! * * @param statusMessage DOCUMENT ME! * @param messagePosition DOCUMENT ME! */ public void fireStatusChange(final String statusMessage, final int messagePosition) { if (this.hasListeners()) { this.fireStatusChange(new Status(statusMessage, messagePosition)); } } /** * DOCUMENT ME! * * @param statusMessage DOCUMENT ME! * @param messagePosition DOCUMENT ME! * @param greenIconState DOCUMENT ME! * @param redIconState DOCUMENT ME! */ public void fireStatusChange(final String statusMessage, final int messagePosition, final int greenIconState, final int redIconState) { if (this.hasListeners()) { this.fireStatusChange(new Status(statusMessage, messagePosition, greenIconState, redIconState)); } } @Override public void addStatusChangeListener(final StatusChangeListener listener) { if (MutableStatusBar.logger.isDebugEnabled()) { MutableStatusBar.logger.debug("register new status listener"); // NOI18N } this.addPropertyChangeListener(listener); } @Override public void removeStatusChangeListener(final StatusChangeListener listener) { if (MutableStatusBar.logger.isDebugEnabled()) { MutableStatusBar.logger.debug("unregister status listener"); // NOI18N } this.removePropertyChangeListener(listener); } /** * DOCUMENT ME! * * @return DOCUMENT ME! */ public boolean hasListeners() { return this.hasListeners(StatusChangeListener.STATUS_CHANGED); } }