Example #1
0
        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);
        }
Example #2
0
 public static Arrowhead NextArrow(Arrowhead arrow)
 {
     return(StdArrows[(StdArrows.IndexOf(arrow) + 1) % StdArrows.Length]);
 }
Example #3
0
		public static Arrowhead NextArrow(Arrowhead arrow)
		{
			return StdArrows[(StdArrows.IndexOf(arrow) + 1) % StdArrows.Length];
		}
Example #4
0
		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;
		}