public override DoOrUndo DoubleClickAction(Util.WinForms.HitTestResult htr_) { var htr = (HitTestResult)htr_; Arrowhead old = null; if (htr.IsPointHit) { if (htr.PointOrSegment == 0) { return @do => { if (@do) { old = FromArrow; FromArrow = NextArrow(FromArrow); } else { FromArrow = old; } } } ; else if (htr.PointOrSegment == Points.Count - 1) { return @do => { if (@do) { old = ToArrow; ToArrow = NextArrow(ToArrow); } else { ToArrow = old; } } } ; } else { // TODO: switch between curved and straight } return(null); }
public static Arrowhead NextArrow(Arrowhead arrow) { return(StdArrows[(StdArrows.IndexOf(arrow) + 1) % StdArrows.Length]); }
public static Arrowhead NextArrow(Arrowhead arrow) { return StdArrows[(StdArrows.IndexOf(arrow) + 1) % StdArrows.Length]; }
public override DoOrUndo DoubleClickAction(Util.WinForms.HitTestResult htr_) { var htr = (HitTestResult)htr_; Arrowhead old = null; if (htr.IsPointHit) { if (htr.PointOrSegment == 0) return @do => { if (@do) { old = FromArrow; FromArrow = NextArrow(FromArrow); } else FromArrow = old; }; else if (htr.PointOrSegment == Points.Count-1) return @do => { if (@do) { old = ToArrow; ToArrow = NextArrow(ToArrow); } else ToArrow = old; }; } else { // TODO: switch between curved and straight } return null; }