package com.revolsys.swing.action.enablecheck;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import com.revolsys.beans.AbstractPropertyChangeSupportProxy;
public abstract class AbstractEnableCheck extends AbstractPropertyChangeSupportProxy
implements EnableCheck, PropertyChangeListener {
private boolean enabled = false;
public AbstractEnableCheck() {
}
public AbstractEnableCheck(final boolean enabled) {
this.enabled = enabled;
}
public boolean disabled() {
return setEnabled(false);
}
public boolean enabled() {
return setEnabled(true);
}
@Override
public boolean isEnabled() {
return this.enabled;
}
@Override
public void propertyChange(final PropertyChangeEvent event) {
isEnabled();
}
protected boolean setEnabled(final boolean enabled) {
final boolean oldValue = this.enabled;
this.enabled = enabled;
firePropertyChange("enabled", oldValue, enabled);
return enabled;
}
@Override
public String toString() {
return Boolean.toString(isEnabled());
}
}