/// <summary> /// Создает связь основаную на старых координатах связи /// </summary> /// <param name="canvas">Контейнер</param> /// <param name="x2">Новые координаты x</param> /// <param name="y2">Новые координаты y</param> public void CreateOldXY(Canvas canvas, double x2, double y2) { this.parent_canvas = canvas; line = new Line(); expander = new LMD_GUI.LMD_CircleExpander(); expander.expanderClickItem += expander_expanderClickItem; #region begin line line.X1 = _x; line.Y1 = _y; #endregion #region end line line.X2 = x2; line.Y2 = y2; #endregion line.StrokeThickness = 2; line.Stroke = new SolidColorBrush(Color.FromRgb(30, 150, 90)); canvas.Children.Add(line); Canvas.SetLeft(expander, line.X2 - 10); Canvas.SetTop(expander, line.Y2 - 10); canvas.Children.Add(expander); workspace.selectJoint = null; createNewJoint(this); expander.Tag = this; }
/// <summary> /// Создает связь на старых координатах основаную на новом объекте /// </summary> /// <param name="canvas">Контейнер</param> /// <param name="element_end">Новый элемент</param> public void CreateOldXYToBlock(Canvas canvas, UIElement element_end) { this.parent_canvas = canvas; line = new Line(); expander = new LMD_GUI.LMD_CircleExpander(); expander.expanderClickItem += expander_expanderClickItem; #region begin line line.X1 = _x; line.Y1 = _y; #endregion #region end line #region begin line if (element_end.GetType() == typeof(LMD_BLOCKS.BlockBegin) || element_end.GetType() == typeof(LMD_BLOCKS.BlockEnd)) { line.X2 = Canvas.GetLeft(element_end) + 75; line.Y2 = Canvas.GetTop(element_end); } else if (element_end.GetType() == typeof(LMD_BLOCKS.BlockInput) || element_end.GetType() == typeof(LMD_BLOCKS.BlockOutput) || element_end.GetType() == typeof(LMD_BLOCKS.BlockCalculate)) { line.X2 = Canvas.GetLeft(element_end) + 140; line.Y2 = Canvas.GetTop(element_end); } else if (element_end.GetType() == typeof(LMD_BLOCKS.BlockCondition)) { line.X2 = Canvas.GetLeft(element_end) + 175; line.Y2 = Canvas.GetTop(element_end); } #endregion #endregion line.StrokeThickness = 2; line.Stroke = new SolidColorBrush(Color.FromRgb(30, 150, 90)); canvas.Children.Add(line); Canvas.SetLeft(expander, line.X2 - 10); Canvas.SetTop(expander, line.Y2 - 10); canvas.Children.Add(expander); workspace.selectJoint = null; createNewJoint(this); expander.Tag = this; }
/// <summary> /// Создает связь на готовых соединениях /// </summary> /// <param name="canvas">Контейнер</param> public void Create(Canvas canvas) { this.parent_canvas = canvas; line = new Line(); expander = new LMD_GUI.LMD_CircleExpander(); expander.expanderClickItem += expander_expanderClickItem; #region begin line if (element_begin.GetType() == typeof(LMD_BLOCKS.BlockBegin) || element_begin.GetType() == typeof(LMD_BLOCKS.BlockEnd)) { line.X1 = Canvas.GetLeft(element_begin) + 75; line.Y1 = Canvas.GetTop(element_begin) + 35; } else if (element_begin.GetType() == typeof(LMD_BLOCKS.BlockInput) || element_begin.GetType() == typeof(LMD_BLOCKS.BlockOutput) || element_begin.GetType() == typeof(LMD_BLOCKS.BlockCalculate)) { line.X1 = Canvas.GetLeft(element_begin) + 140; line.Y1 = Canvas.GetTop(element_begin) + 35; } #endregion #region end line if (element_end.GetType() == typeof(LMD_BLOCKS.BlockBegin) || element_end.GetType() == typeof(LMD_BLOCKS.BlockEnd)) { line.X2 = Canvas.GetLeft(element_end) + 75; line.Y2 = Canvas.GetTop(element_end); } else if (element_end.GetType() == typeof(LMD_BLOCKS.BlockInput) || element_end.GetType() == typeof(LMD_BLOCKS.BlockOutput) || element_end.GetType() == typeof(LMD_BLOCKS.BlockCalculate)) { line.X2 = Canvas.GetLeft(element_end) + 140; line.Y2 = Canvas.GetTop(element_end); } else if (element_end.GetType() == typeof(LMD_BLOCKS.BlockCondition)) { line.X2 = Canvas.GetLeft(element_end) + 175; line.Y2 = Canvas.GetTop(element_end); } #endregion line.StrokeThickness = 2; line.Stroke = new SolidColorBrush(Color.FromRgb(30, 150, 90)); canvas.Children.Add(line); Canvas.SetLeft(expander, line.X2 - 10); Canvas.SetTop(expander, line.Y2 - 10); canvas.Children.Add(expander); workspace.selectJoint = null; /* * if (element_begin.GetType() == typeof(LMD_BLOCKS.BlockBegin)) * joint.Type = LMD_GUI.TYPE_BLOCK.begin; * else if (element_begin.GetType() == typeof(LMD_BLOCKS.BlockEnd)) * joint.Type = LMD_GUI.TYPE_BLOCK.end; * else if (element_begin.GetType() == typeof(LMD_BLOCKS.BlockCalculate)) * joint.Type = LMD_GUI.TYPE_BLOCK.calculate; * else if (element_begin.GetType() == typeof(LMD_BLOCKS.BlockCondition)) * joint.Type = LMD_GUI.TYPE_BLOCK.condition; * else if (element_begin.GetType() == typeof(LMD_BLOCKS.BlockInput)) * joint.Type = LMD_GUI.TYPE_BLOCK.input; * else if (element_begin.GetType() == typeof(LMD_BLOCKS.BlockOutput)) * joint.Type = LMD_GUI.TYPE_BLOCK.output; * * joint.element_begin = element_begin; * joint.element_end = element_end; */ createNewJoint(this); expander.Tag = this; }