using Godot; public partial class TimeSlot : PanelContainer { public MeetingControl MeetingControl { get; set; } public override bool _CanDropData(Vector2 atPosition, Variant data) { GD.Print("DRAGGED OVERR!!!"); return data.VariantType == Variant.Type.Object && data.AsGodotObject() is MeetingControlDragData; } public override void _DropData(Vector2 atPosition, Variant data) { var meetingData = (MeetingControlDragData)data; MeetingControl = meetingData.MeetingControl; meetingData.MeetingControl.InSlot = true; MeetingControl.Reparent(this, false); MeetingControl.Visible = true; } public override void _Notification(int what) { if (what == NotificationDragBegin) { MouseFilter = MouseFilterEnum.Pass; } if (what == NotificationDragEnd) { MouseFilter = MouseFilterEnum.Ignore; } } }