public virtual void HandleDragDrop(object o, Gtk.DragDropArgs args) { DragArgs = GetDragEventArgs(args.Context, new PointF(args.X, args.Y), args.Time); Handler.Callback.OnDragDrop(Handler.Widget, DragArgs); Gtk.Drag.Finish(args.Context, true, DragArgs.Effects.HasFlag(DragEffects.Move), args.Time); DragArgs = null; args.RetVal = true; }
public override void HandleDragDrop(object o, Gtk.DragDropArgs args) { // use the info from last drag if it was set var info = Handler?.GetDragInfo(DragArgs); if (info?.IsChanged == true) { _dragInfo = info; } base.HandleDragDrop(o, args); _dragInfo = null; }
void FixedDragDrop(object obj, Gtk.DragDropArgs args) { Gtk.Widget w = DND.Drop(args.Context, gtkfixed, args.Time); Widget ww = Widget.Lookup(w); if (ww != null) { gtkfixed.Put(w, args.X - DND.DragHotX, args.Y - DND.DragHotY); NotifyChildAdded(w); args.RetVal = true; ww.Select(); } }
void HandleStatBarDragDrop (object sender, Gtk.DragDropArgs args) { isChecked = !isChecked; if (isChecked) { sBar.Push((uint)StatusType.Checked, "Checked"); } else { sBar.Pop((uint)StatusType.Checked); } }
static void FaultDragDrop(object obj, Gtk.DragDropArgs args) { Gtk.Widget w = DND.Drop(args.Context, (Gtk.Widget)obj, args.Time); Stetic.Wrapper.Widget dropped = Stetic.Wrapper.Widget.Lookup(w); if (dropped != null) { Gtk.Widget targetWidget = (Gtk.Widget)obj; int px = args.X + targetWidget.Allocation.X; int py = args.Y + targetWidget.Allocation.Y; FaultDrop(dropped, px, py, targetWidget); args.RetVal = true; } }
void HandleTargetDragDrop (object sender, Gtk.DragDropArgs args) { Console.WriteLine("drop"); if (args.Context.Targets.Length != 0) { Gtk.Drag.GetData ((Gtk.Widget)sender, args.Context, args.Context.Targets[0], args.Time); args.RetVal = true; } args.RetVal = false; }
void HandleWidgetDragDrop(object o, Gtk.DragDropArgs args) { lastDragPosition = new Point(args.X, args.Y); var cda = ConvertDragAction(args.Context.Action); DragDropResult res; if ((enabledEvents & WidgetEvent.DragDropCheck) == 0) { if ((enabledEvents & WidgetEvent.DragDrop) != 0) { res = DragDropResult.None; } else { res = DragDropResult.Canceled; } } else { DragCheckEventArgs da = new DragCheckEventArgs(new Point(args.X, args.Y), Util.GetDragTypes(args.Context.Targets), cda); Toolkit.Invoke(delegate { EventSink.OnDragDropCheck(da); }); res = da.Result; if ((enabledEvents & WidgetEvent.DragDrop) == 0 && res == DragDropResult.None) { res = DragDropResult.Canceled; } } if (res == DragDropResult.Canceled) { args.RetVal = true; Gtk.Drag.Finish(args.Context, false, false, args.Time); } else if (res == DragDropResult.Success) { args.RetVal = true; Gtk.Drag.Finish(args.Context, true, cda == DragDropAction.Move, args.Time); } else { // Undefined, we need more data args.RetVal = true; QueryDragData(args.Context, args.Time, false); } }
void HandleWidgetDragDrop(object o, Gtk.DragDropArgs args) { args.RetVal = DoDragDrop(args.Context, args.X, args.Y, args.Time); }
/// <summary> /// Handles the drag drop event. /// </summary> /// <param name="o">The menu layout Gtk.TreeView.</param> /// <param name="args">The event data.</param> protected void HandleDragDrop(object o, Gtk.DragDropArgs args) { DebugDragDrop("HandleDragDrop"); }
void OnLabelDragDrop(object sender, Gtk.DragDropArgs args) { Gtk.Drag.GetData ((Gtk.Widget)sender, args.Context, args.Context.Targets[0], args.Time); }