public void Dispose() { if (oldSelection.IsEmpty) { oldSelection.Start = SelectionRegion.Min(oldCaret, owner.view.Position); oldSelection.End = SelectionRegion.Max(oldCaret, owner.view.Position); } else if (oldSelection.Start == oldCaret) { var pt = oldSelection.End; oldSelection.Start = SelectionRegion.Min(pt, owner.view.Position); oldSelection.End = SelectionRegion.Max(pt, owner.view.Position); } else if (oldSelection.End == oldCaret) { var pt = oldSelection.Start; oldSelection.Start = SelectionRegion.Min(pt, owner.view.Position); oldSelection.End = SelectionRegion.Max(pt, owner.view.Position); } owner.view.Selection = oldSelection; owner.processing = false; owner = null; GC.SuppressFinalize(this); }
public SelectionReset(PcSelectionMode owner) { this.owner = owner; owner.processing = true; oldSelection = owner.view.Selection; oldCaret = owner.view.Position; }
public void Dispose() { if (oldSelection.IsEmpty) { oldSelection.Start = SelectionRegion.minimum(oldCaret, owner.view.Caret); oldSelection.End = SelectionRegion.maximum(oldCaret, owner.view.Caret); } else if (oldSelection.Start == oldCaret) { Point pt = oldSelection.End; oldSelection.Start = SelectionRegion.minimum(pt, owner.view.Caret); oldSelection.End = SelectionRegion.maximum(pt, owner.view.Caret); } else if (oldSelection.End == oldCaret) { Point pt = oldSelection.Start; oldSelection.Start = SelectionRegion.minimum(pt, owner.view.Caret); oldSelection.End = SelectionRegion.maximum(pt, owner.view.Caret); } owner.view.Selection = oldSelection; owner.processing = false; owner = null; }