public Canvas(Panel panelCanvas, MainForm mainForm) { this.panelCanvas = panelCanvas; this.itemDrawings = new List<ItemDrawing>(); this.connectionDrawings = new List<ConnectionDrawing>(); this.mainForm = mainForm; this.viewport = mainForm.circuitManager.circuit.Viewport; this.panelCanvas.MouseUp += new MouseEventHandler(mouseUp); this.panelCanvas.MouseWheel += new MouseEventHandler(mouseWheel); this.panelCanvas.Resize += new EventHandler(resize); this.panelCanvas.MouseMove += new MouseEventHandler(mouseMove); this.panelCanvas.Paint += new PaintEventHandler(paint); this.panelCanvas.DragOver += dragOver; changeSize(panelCanvas.Width, panelCanvas.Height); foreach (Item item in mainForm.circuitManager.circuit.Items) { ItemDrawing itemDrawing = new ItemDrawing(item, viewport, mainForm); itemDrawings.Add(itemDrawing); } this.lastMousePoint = Point.Empty; this.itemPreviewRectangle = new Rectangle(0, 0, viewport.getPixelLength(100), viewport.getPixelLength(100)); }