public void StopOperation(bool commit)
 {
     if (!_done)
     {
         _done = true;
         _ui._parent.Canvas.Children.Remove(_visualizer);
         _ui.MouseMove -= HandleMouseMove;
         _ui.MouseUp   -= HandleMouseUp;
         _ui.ReleaseMouseCapture();
         if (commit && (_startPoint - _p0).Length > 2)
         {
             if (!_moveEndingSuccessful)
             {
                 _movingPointDocking = ConnectorDocking.Undefined;
                 _newMoveDistance    = 0.5;
                 _otherPointDocking  = ConnectorDocking.Undefined;
             }
             _moveHelper.Commit(_movingPointDocking, _otherPointDocking, _movePointStart, _otherPointPosition, _newMoveDistance);
         }
         else
         {
             _ui.DropSnapshot();
         }
         _ui.UpdateGeometry();
     }
 }
            public void StopOperation(bool commit)
            {
                if (!_done)
                {
                    _done = true;

                    _ui.MouseMove -= Ui_MouseMove;
                    _ui.MouseUp   -= Ui_MouseUp;
                    _ui.ReleaseMouseCapture();
                    if (!commit)
                    {
                        _ui.DropSnapshot();
                    }
                }
                _ui.UpdateGeometry();
            }