/** * */ package icy.common.listener.weak; import icy.gui.main.ActiveSequenceListener; import icy.main.Icy; import icy.sequence.Sequence; import icy.sequence.SequenceEvent; /** * @author Stephane */ public class WeakActiveSequenceListener extends WeakListener<ActiveSequenceListener> implements ActiveSequenceListener { public WeakActiveSequenceListener(ActiveSequenceListener listener) { super(listener); } @Override public void removeListener(Object source) { Icy.getMainInterface().removeActiveSequenceListener(this); } @Override public void sequenceActivated(Sequence sequence) { final ActiveSequenceListener listener = getListener(null); if (listener != null) listener.sequenceActivated(sequence); } @Override public void sequenceDeactivated(Sequence sequence) { final ActiveSequenceListener listener = getListener(null); if (listener != null) listener.sequenceDeactivated(sequence); } @Override public void activeSequenceChanged(SequenceEvent event) { final ActiveSequenceListener listener = getListener(null); if (listener != null) listener.activeSequenceChanged(event); } }