private CursorType GetCursor(DragModes mode, Point pt) { CursorType c = CursorType.Arrow; switch (mode) { case DragModes.LeftTop: c = CursorType.ResizeNW; break; case DragModes.Top: c = CursorType.ResizeUp; break; case DragModes.RightTop: c = CursorType.ResizeNE; break; case DragModes.Left: c = CursorType.ResizeLeft; break; case DragModes.Right: c = CursorType.ResizeRight; break; case DragModes.LeftBottom: c = CursorType.ResizeSW; break; case DragModes.Bottom: c = CursorType.ResizeDown; break; case DragModes.RightBottom: c = CursorType.ResizeSE; break; case DragModes.Move: c = CursorType.Move; break; } return(c); }
private void ClrCapture() { // DockPanel.ClrHightlight(); owner.DockPanel.xwt.ReleaseCapture(this); this.captured = DragModes.None; }
protected override void OnButtonPressed(ButtonEventArgs args) { args.Handled = true; if (args.Button == PointerButton.Left) { var hit = HitTest(args.Position); /* if (hit == DragModes.Move) // hit titlebar * { * // todo check small move first * DockItDragDrop.StartDrag(this.owner, this.ConvertToScreenCoordinates(args.Position)); * return; * } * else */ if (hit != DragModes.None) { this.captured = hit; owner.DockPanel.xwt.SetCapture(this); this.orgpt = base.ConvertToScreenCoordinates(args.Position); this.orgpos = new Rectangle(this.owner.Location, base.Size); return; } } // base.OnButtonPressed(args); }
private void InitProperty(Vector3 force, float mass, float drag, DragModes dragMode, SolverModes solverMode) { Force = force; Mass = mass; Drag = drag; DragMode = dragMode; SolverMode = solverMode; }
internal void DragWindow(ref Event Event, DragModes Mode) { Rect Limits; Point Min, Max; Limits = Owner.Owner.GetExtent(); Owner.SizeLimits(out Min, out Max); Owner.DragView(Event, Owner.DragMode | Mode, Limits, Min, Max); ClearEvent(ref Event); }
public void toggleDragMode() { m_dragMode = m_dragMode == DragModes.Selection ? DragModes.Move : DragModes.Selection; Console.WriteLine("drag mode changed to " + m_dragMode); }
/// <summary> /// /// </summary> /// <param name="force"></param> /// <param name="mass"></param> /// <param name="drag"></param> /// <param name="dragMode">Drag代表的含义,Velocity表示drag=acc/v;SqrVelocity表示drag=acc/v^2</param> /// <param name="solverMode">Solver的模式,Interation表示使用迭代模拟,与Unity3d较为符合;EquationSolution表示使用运动微分方程的解,更接近理论值</param> public RigidbodySolver(Vector3 force, float mass, float drag, DragModes dragMode, SolverModes solverMode) { InitProperty(force, mass, drag, dragMode, solverMode); }