static void OnSwDragMotion(object o, Gtk.DragMotionArgs args) { ScrolledWindow sw = (ScrolledWindow)o; int w = sw.Allocation.Width; int h = sw.Allocation.Height; ScrollAdjustment(sw.Vadjustment, args.Y, h); ScrollAdjustment(sw.Hadjustment, args.X, w); }
public void HandleTagSelectionDragMotion (object o, DragMotionArgs args) { TreePath path; TreeViewDropPosition position = TreeViewDropPosition.IntoOrAfter; tag_selection_widget.GetPathAtPos (args.X, args.Y, out path); if (path == null) return; // Tags can be dropped before, after, or into another tag if (args.Context.Targets[0].Name == "application/x-fspot-tags") { Gdk.Rectangle rect = tag_selection_widget.GetCellArea(path, tag_selection_widget.Columns[0]); double vpos = Math.Abs(rect.Y - args.Y) / (double)rect.Height; if (vpos < 0.2) { position = TreeViewDropPosition.Before; } else if (vpos > 0.8) { position = TreeViewDropPosition.After; } } tag_selection_widget.SetDragDestRow (path, position); // Scroll if within 20 pixels of the top or bottom of the tag list if (args.Y < 20) tag_selection_scrolled.Vadjustment.Value -= 30; else if (((o as Gtk.Widget).Allocation.Height - args.Y) < 20) tag_selection_scrolled.Vadjustment.Value += 30; }
public void HandleDragMotion (object o, DragMotionArgs args) { TreePath path; TreeViewDropPosition position = TreeViewDropPosition.IntoOrAfter; GetPathAtPos (args.X, args.Y, out path); if (path == null) return; // Tags can be dropped into another tag SetDragDestRow (path, position); // Scroll if within 20 pixels of the top or bottom of the tag list if (args.Y < 20) Vadjustment.Value -= 30; else if (((o as Gtk.Widget).Allocation.Height - args.Y) < 20) Vadjustment.Value += 30; }
/// <summary> /// Emitted on drop site. /// Set RetVal == cursor is over drop zone /// if (RetVal) Gdk.Drag.Status, unless the decision cannot be made, in which case it may be defered by /// a get data call /// </summary> void HandleDragMotion (object o, DragMotionArgs args) { if (RepositionMode) return; ExternalDragActive = !InternalDragActive; Owner.UpdateHoverText (); Owner.SetTooltipVisibility (); if (marker != args.Context.GetHashCode ()) { marker = args.Context.GetHashCode (); drag_known = false; } // we own the drag if InternalDragActive is true, lets not be silly if (!drag_known && !InternalDragActive) { drag_known = true; Gdk.Atom atom = Gtk.Drag.DestFindTarget (Owner, args.Context, null); if (atom != null) { Gtk.Drag.GetData (Owner, args.Context, atom, args.Time); drag_data_requested = true; } else { Gdk.Drag.Status (args.Context, DragAction.Private, args.Time); } } else { Gdk.Drag.Status (args.Context, DragAction.Copy, args.Time); } args.RetVal = true; }
public static void SetAllowDragAction(this DragMotionArgs args, DragAction action) { Gdk.Drag.Status(args.Context, action, args.Time); }
/// <summary>Node has been dragged over another node. Allow a drop here?</summary> /// <param name="sender">Event sender.</param> /// <param name="e">Event data.</param> private void OnDragOver(object sender, DragMotionArgs e) { //e.Effect = DragDropEffects.None; e.RetVal = false; // Get the drop location TreePath path; TreeIter dest; if (treeview1.GetPathAtPos(e.X, e.Y, out path) && treemodel.GetIter(out dest, path)) { AllowDropArgs Args = new AllowDropArgs(); Args.NodePath = FullPath(path); Drag.GetData(treeview1, e.Context, e.Context.Targets[0], e.Time); if (DragDropData != null) { Args.DragObject = DragDropData; if (AllowDrop != null) { AllowDrop(this, Args); if (Args.Allow) { e.RetVal = true; string SourceParent = null; if (sourcePathOfItemBeingDragged != null) SourceParent = StringUtilities.ParentName(sourcePathOfItemBeingDragged); // Now determine the effect. If the drag originated from a different view // (e.g. a toolbox or another file) then only copy is supported. if (sourcePathOfItemBeingDragged == null) Gdk.Drag.Status(e.Context, Gdk.DragAction.Copy, e.Time); else if (SourceParent == Args.NodePath) Gdk.Drag.Status(e.Context, Gdk.DragAction.Copy, e.Time); else // The "SuggestedAction" will normally be Copy, but will be Move // if shift is pressed, and Link if Ctrl-Shift is pressed Gdk.Drag.Status(e.Context, e.Context.SuggestedAction, e.Time); } else Gdk.Drag.Status(e.Context, 0, e.Time); } } } }
void Treeview1_DragMotion (object o, DragMotionArgs args) { TreeViewDropPosition pos; TreePath path; TreeIter iter; if (!treeview1.GetDestRowAtPos(args.X, args.Y, out path, out pos)) return; if (!listStore.GetIter(out iter, path)) return; if (treeview1.Model.GetValue(iter, 2).ToString() != ID_FILE) treeview1.SetDragDestRow(path, pos); else if (pos == TreeViewDropPosition.IntoOrBefore || pos == TreeViewDropPosition.Before) treeview1.SetDragDestRow(path, TreeViewDropPosition.Before); else treeview1.SetDragDestRow(path, TreeViewDropPosition.After); Gdk.Drag.Status (args.Context, args.Context.SuggestedAction, args.Time); args.RetVal = true; }
protected void OnDrawCupboardDragMotion(object o, DragMotionArgs args) { logger.Debug ("Drag motion x={0} y={1}", args.X, args.Y); int CubePosX = (args.X + (int)(CubePxSize * 1.5) - CurrentDrag.IconPosX - OrderCupboard.CupboardZeroX) / CubePxSize; int CubePosY = (args.Y + (int)(CubePxSize * 1.5) - CurrentDrag.IconPosY - OrderCupboard.CupboardZeroY) / CubePxSize; //Для того что бы корректно посчитать 0 ячейку добавли 1, сейчас онимаем. CubePosX--; CubePosY--; logger.Debug ("CupBoard pos x={0} y={1}", CubePosX, CubePosY); bool CanDrag = OrderCupboard.TestPutCube(CurrentDrag.cube, CubePosX, CubePosY); if (CanDrag) Gdk.Drag.Status(args.Context, args.Context.SuggestedAction, args.Time); else Gdk.Drag.Status(args.Context, Gdk.DragAction.Private, args.Time); args.RetVal = true; }
private static void HandlePopsiteMotion (object sender, DragMotionArgs args) { if (popup_timer == 0) popup_timer = GLib.Timeout.Add (500, new TimeoutHandler (HandlePopupCallback)); args.RetVal = true; }
public void HandleTagSelectionDragMotion (object o, DragMotionArgs args) { TreePath path; if (!tag_selection_widget.GetPathAtPos (args.X, args.Y, out path)) return; tag_selection_widget.SetDragDestRow (path, Gtk.TreeViewDropPosition.IntoOrAfter); //Scroll if required if (args.Y < 20) tag_selection_scrolled.Vadjustment.Value -= 30; if (((o as Gtk.Widget).Allocation.Height - args.Y) < 20) tag_selection_scrolled.Vadjustment.Value += 30; }
private static void HandlePopupMotion (object sender, DragMotionArgs args) { if (! in_popup) { in_popup = true; if (popdown_timer != 0) { Console.WriteLine ("removed popdown"); GLib.Source.Remove (popdown_timer); popdown_timer = 0; } } args.RetVal = true; }
private static void HandleTargetDragMotion (object sender, DragMotionArgs args) { if (! have_drag) { have_drag = true; // FIXME? Kinda wonky binding. (sender as Gtk.Image).FromPixbuf = trashcan_open_pixbuf; } Widget source_widget = Gtk.Drag.GetSourceWidget (args.Context); Console.WriteLine ("motion, source {0}", source_widget == null ? "null" : source_widget.ToString ()); Atom [] targets = args.Context.Targets; foreach (Atom a in targets) Console.WriteLine (a.Name); Gdk.Drag.Status (args.Context, args.Context.SuggestedAction, args.Time); args.RetVal = true; }
private void OnDragMotion(object o, DragMotionArgs args) { System.Console.WriteLine("Motion: " + args.X + " - " + args.Y); //Console.WriteLine("Blup: " + args.Context }
void HandlePhotoViewDragMotion (object sender, DragMotionArgs args) { //Widget source = Gtk.Drag.GetSourceWidget (args.Context); //Console.WriteLine ("Drag Motion {0}", source == null ? "null" : source.TypeName); Gdk.Drag.Status (args.Context, args.Context.SuggestedAction, args.Time); args.RetVal = true; }
private void OnDragMotion(object o, DragMotionArgs args) { dragging = true; Vector MousePos = new Vector((float) args.X - BORDER_LEFT + TILE_WIDTH / 2, (float) args.Y); int row = (int) Math.Floor( MousePos.Y / ROW_HEIGHT ); int column = (int) Math.Floor (MousePos.X / COLUMN_WIDTH); insertOnEnd = ( column >= TILES_PER_ROW ); //This is true on every end of line int selected = TILES_PER_ROW * row + column; if( selected > badguys.Count ) selected = badguys.Count; if( SelectedObjectNr != selected ){ SelectedObjectNr = selected; QueueDraw(); //redraw on any change of selected ID } }
void HandleDragMotion(object o, DragMotionArgs args) { if (preview) return; if (preview_widget == null) { preview_widget = new Gtk.Label (" | "); box.Add (preview_widget); } preview_widget.Show (); }
private void OnDragMotion(object o, DragMotionArgs args) { //pass motion event to editor if(Editor != null) { MousePos = MouseToWorld(new Vector((float) args.X, (float) args.Y)); Editor.OnMouseMotion(MousePos, ModifierType.Button1Mask); } }
private void OnIconViewDragMotion(object o, DragMotionArgs args) { Gdk.Drag.Status(args.Context, args.Context.SuggestedAction, args.Time); args.RetVal = true; }
void HandleIconViewDragMotion (object sender, DragMotionArgs args) { Gdk.Drag.Status (args.Context, args.Context.SuggestedAction, args.Time); args.RetVal = true; }
private void OnIconViewDragMotion(object o, DragMotionArgs args) { Console.WriteLine("iFolderWindow.OnIconViewDragMotion()"); Gdk.Drag.Status(args.Context, args.Context.SuggestedAction, args.Time); args.RetVal = true; }
protected void OnImageDocDragMotion(object o, DragMotionArgs args) { Console.WriteLine ("x={0} y={1}", args.X, args.Y); }
private void HandleDragMotion(object o, DragMotionArgs args) { if (!preview && rootTerm.Count > 0 && (Literal.FocusedLiterals.Count == 0 || Children.Length > 2)) { Preview (); preview = true; } }
void HandleBugsListDragMotion(object o, DragMotionArgs args) { if (draggedBugs != null) { if (!CheckAndDrop (args.X, args.Y, false, args.Context)) { Gdk.Drag.Status (args.Context, (Gdk.DragAction)0, args.Time); args.RetVal = true; } } }