// fix for defect 109 - storing reference to rollover listener
this.substanceRolloverListener = new RolloverMenuItemListener(
this.menuItem);
this.menuItem.addMouseListener(this.substanceRolloverListener);
this.substanceFadeStateListener = new FadeStateListener(this.menuItem,
this.menuItem.getModel(), SubstanceCoreUtilities
.getFadeCallback(this.menuItem, this.menuItem
.getModel(), true, false, this.menuItem));
this.substanceFadeStateListener.registerListeners();
this.substancePropertyListener = new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
if (AbstractButton.MODEL_CHANGED_PROPERTY.equals(evt
.getPropertyName())) {
if (substanceFadeStateListener != null)
substanceFadeStateListener.unregisterListeners();
substanceFadeStateListener = new FadeStateListener(
menuItem, menuItem.getModel(),
SubstanceCoreUtilities.getFadeCallback(menuItem,
menuItem.getModel(), true, false, menuItem));
substanceFadeStateListener.registerListeners();
}