using Robust.Shared.Analyzers; namespace Content.Shared.DragDrop { /// /// This interface allows the component's entity to be dragged and dropped /// onto by another entity and gives it behavior when that occurs. /// [RequiresExplicitImplementation] public interface IDragDropOn { /// /// Invoked when another entity is being dragged and dropped /// onto this one before invoking . /// Note that other drag and drop interactions may be attempted if /// this one fails. /// /// /// true if is valid, false otherwise. bool CanDragDropOn(DragDropEvent eventArgs); /// /// Invoked server-side when another entity is being dragged and dropped /// onto this one before invoking /// Note that other drag and drop interactions may be attempted if /// this one fails. /// /// /// true if an interaction occurred and no further interaction should /// be processed for this drop. /// bool DragDropOn(DragDropEvent eventArgs); } }