package de.unisiegen.gtitool.core.storage; import de.unisiegen.gtitool.core.entities.listener.ModifyStatusChangedListener; /** * The interface of all modify able objects. * * @author Christian Fehler * @version $Id$ */ public interface Modifyable { /** * Adds the given {@link ModifyStatusChangedListener}. * * @param listener The {@link ModifyStatusChangedListener}. */ public void addModifyStatusChangedListener ( ModifyStatusChangedListener listener ); /** * Returns true if this {@link Modifyable} is modified, otherwise false. * * @return True if this {@link Modifyable} is modified, otherwise false. */ public boolean isModified (); /** * Removes the given {@link ModifyStatusChangedListener}. * * @param listener The {@link ModifyStatusChangedListener}. */ public void removeModifyStatusChangedListener ( ModifyStatusChangedListener listener ); /** * Resets the modify status of this {@link Modifyable}. */ public void resetModify (); }