blob: b3b967182e743d458603b51b7c5d2de481d7b047 [file] [log] [blame]
package com.intellij.designer.model;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public interface IComponentDeletionParticipant {
/**
* Called when one or more children are about to be deleted by the user.
*
* @param parent the parent of the deleted children (which still contains
* the children since this method is called before the deletion
* is performed)
* @param deleted a nonempty list of children about to be deleted
* @return true if the children have been fully deleted by this participant; false
* if normal deletion should resume. Note that even though an implementation may return
* false from this method, that does not mean it did not perform any work. For example,
* a RelativeLayout handler could remove constraints pointing to now deleted components,
* but leave the overall deletion of the elements to the core designer.
*/
boolean deleteChildren(@NotNull RadComponent parent, @NotNull List<RadComponent> deleted) throws Exception;
}