Blame mono/Assistance/Assistant.cs

ebcc4f
using System;
ebcc4f
using System.Drawing;
ebcc4f
using System.Drawing.Imaging;
ebcc4f
using System.Collections.Generic;
ebcc4f
ebcc4f
namespace Assistance {
ebcc4f
	public class Assistant {
ebcc4f
		public static readonly double maxLen = 1000.0;
ebcc4f
		public static readonly int gridPointsCount = 100;
ebcc4f
		public static readonly Pen pen = Pens.Gray;
ebcc4f
b1ff53
		public readonly Workarea canvas;
ebcc4f
		public readonly List<activepoint> points = new List<activepoint>();</activepoint></activepoint>
ebcc4f
b1ff53
		public Assistant(Workarea canvas) {
ebcc4f
			this.canvas = canvas;
ebcc4f
			canvas.assistants.Add(this);
ebcc4f
		}
ebcc4f
ebcc4f
		public void remove() {
ebcc4f
			foreach(ActivePoint point in points)
ebcc4f
				canvas.points.Remove(point);
ebcc4f
			canvas.assistants.Remove(this);
ebcc4f
		}
ebcc4f
ebcc4f
		public void bringToFront() {
ebcc4f
			canvas.assistants.Remove(this);
ebcc4f
			canvas.assistants.Add(this);
ebcc4f
		}
ebcc4f
ebcc4f
		public double getMaxLen() {
ebcc4f
			double l = 0.0;
ebcc4f
			foreach(ActivePoint point in points)
ebcc4f
				l = Math.Max(l, point.position.len());
ebcc4f
			return maxLen + l;
ebcc4f
		}
ebcc4f
ebcc4f
		public virtual void onMovePoint(ActivePoint point, Point position) {
ebcc4f
			point.position = position;
ebcc4f
		}
ebcc4f
ebcc4f
		public virtual void draw(Graphics g) { }
ebcc4f
38ad69
		public virtual void getGuidelines(List<guideline> outGuidelines, Point target) { }</guideline>
ebcc4f
	}
ebcc4f
}