//Метод по созданию новых зон для мыши public static void MethodAlternative(WorkObject _currentObject, List <RegionRectangle> regionRectangles) { foreach (var currentRegionRectangl in regionRectangles) { _currentObject.listRegionRectangle.Add(currentRegionRectangl); } }
/// <summary> /// Метод для отрисовке классической области /// </summary> /// <param name="_currentObject"></param> /// <param name="width"></param> /// <param name="height"></param> /// <param name="startX"></param> /// <param name="startY"></param> public static void MethodMain(WorkObject _currentObject, float width, float height, float startX = 0, float startY = 0) { float saveStartX = startX; float stepWidth = width / 3; float stepHeight = height / 3; float endX = stepWidth + startX; float endY = stepHeight + startY; int id = 0; for (int stepX = 0; stepX < 3; stepX++) { for (int stepY = 0; stepY < 3; stepY++) { id += 1; RegionRectangle createRegionRectangle = CreateRegionRectangle(id, startX, startY, endX, endY); _currentObject.listRegionRectangle.Add(createRegionRectangle); createRegionRectangle = null; startX += stepWidth; endX += stepWidth; } startX = saveStartX; endX = stepWidth + saveStartX; startY += stepHeight; endY += stepHeight; } }
//Метод по отрисовке зон private void DrawingZone(PaintEventArgs e, WorkObject _currentObject) { StartingDelimitationZone(); if (_currentObject.ChildNumberObject != null) { DrawingZone(e, _currentObject.ChildNumberObject); } _currentObject.DrawingRectangle(e); _currentObject.DrawingText(e); }
private void CommandEndSector(WorkObject Object) { ////метод отменяет разбитие сектора var ParantNumberObject = Object.ParantNumberObject; if (ParantNumberObject?.ChildNumberObject != null) { ParantNumberObject.ChildNumberObject = null; ParantNumberObject.Visible = true; } }
private void CommandEndMagnifier(WorkObject SearchChild) { var currentWorkObject = SearchChild; if (currentWorkObject.Magnifier != null) { //Метод отменяет лупу currentWorkObject.Magnifier.Dispose(); currentWorkObject.Magnifier = null; CommandMagnifier.magnifierForm.Close(); CommandMagnifier.magnifierForm.Dispose(); CommandMagnifier.magnifierForm = null; } }
private void CommandEndFull(int index) { WorkObject currentWorkObject = Auxiliary.SearchChild(); do { CommandEndMagnifier(currentWorkObject); if (index == 2) { CommandEndSector(currentWorkObject); } currentWorkObject = currentWorkObject.ParantNumberObject; }while (currentWorkObject != null); }
public Main(int widthFrom, int heightForm) { _widthFrom = widthFrom; _heightForm = heightForm; _workObject = new WorkObject { GenerationNumber = 1 }; commands.Add(new CommandLeftOneClick()); //0 commands.Add(new CommandRightOneClick()); //1 commands.Add(new CommandLeftDoubleClick()); //2 commands.Add(new CommandScale()); //3 commands.Add(new CommandMagnifier()); //4 commands.Add(new CommandLeftLeftDown()); //5 commands.Add(new CommandLeftLeftUp()); //6 commands.Add(new CommandScroll()); //7 commands.Add(new CommandEnd()); //8 Auxiliary.WorkObject = _workObject; }
public void Act(int index) { if (Auxiliary.SearchChild().listRegionRectangle.Count > index) { var currentNumberObject = Auxiliary.SearchChild(); var newChildNumberObject = new WorkObject { //Добавление родителя ParantNumberObject = currentNumberObject, GenerationNumber = currentNumberObject.GenerationNumber + 1 }; //Добавление потомка currentNumberObject.ChildNumberObject = newChildNumberObject; currentNumberObject.Visible = false; Drawing.MethodMain(newChildNumberObject, currentNumberObject.listRegionRectangle[index].Width, currentNumberObject.listRegionRectangle[index].Height, currentNumberObject.listRegionRectangle[index].StartX, currentNumberObject.listRegionRectangle[index].StartY); } }