private void pictureDrawing_MouseDown(object sender, MouseEventArgs e) { Point startPoint = new Point(e.X, e.Y); if (frame != null) { if (!frame.IsExistFrame && frame.CreateFrame(shapesList, startPoint, pictureDrawing)) { Bitmap bitmap = new Bitmap(pictureDrawing.Width, pictureDrawing.Height); Graphics tempGr = Graphics.FromImage(bitmap); tempGr.Clear(Color.White); OpenFile.WriteOnImage(tempGr, shapesList); displayManager.DeleteAll(); displayManager.InitComponent(bitmap); } else { if (frame.IsExistFrame) { frame.DeleteFrame(shapesList, pictureDrawing.Width, pictureDrawing.Height); Bitmap bitmap = new Bitmap(pictureDrawing.Width, pictureDrawing.Height); Graphics tempGr = Graphics.FromImage(bitmap); tempGr.Clear(Color.White); OpenFile.WriteOnImage(tempGr, shapesList); displayManager.DeleteAll(); displayManager.InitComponent(bitmap); frame = null; } else { frame = null; } } } else { if (numberAddTools != -1) { isMouseClick = true; shapesList.Add((Shape)Activator.CreateInstance(addinTypes[numberAddTools])); shapesList.Last().setFirstPoint(new Point(e.X, e.Y)); } } }