private void AddLink(link Lnk) { MapElement el1 = ActiveMap.getById(Lnk.selementid1); MapElement el2 = ActiveMap.getById(Lnk.selementid2); MapVisualElement vEl1 = (MapVisualElement)el1.Tag; MapVisualElement vEl2 = (MapVisualElement)el2.Tag; if (el1 == null || el2 == null) { MessageBox.Show("ELEMENT NULL"); } Line ln = new Line(); System.Drawing.Color cl = System.Drawing.ColorTranslator.FromHtml("#" + Lnk.color); ln.Stroke = new SolidColorBrush(Colors.Black); if (Lnk.drawtype == "4") { ln.StrokeDashArray = new DoubleCollection(); ln.StrokeDashArray.Add(3); ln.StrokeDashArray.Add(2); } ln.X1 = el1.x + 30; ln.X2 = el2.x + 30; ln.Y1 = el1.y + 30; ln.Y2 = el2.y + 30; //ln.ToolTip = Lnk.drawtype; ln.StrokeThickness = 2; Lnk.Tag = ln; mapCanvas.Children.Add(ln); Canvas.SetZIndex(ln, 10); }
private void AddElement(MapElement element) { MapVisualElement rt = new MapVisualElement(element, ActiveMap, zApi); element.Tag = rt; rt.MouseDown += rectangle1_MouseDown; rt.MouseUp += map_MouseUp; Canvas.SetLeft(rt, element.x); Canvas.SetTop(rt, element.y); mapCanvas.Children.Add(rt); Canvas.SetZIndex(rt, 15); i++; // Index.Content = i.ToString(); }
private void rectangle1_MouseDown(object sender, MouseButtonEventArgs e) { lastCursor = mapCanvas.Cursor; shape = sender as MapVisualElement;//)sender; md = shape != null; if (!md) { mapCanvas.Cursor = Cursors.Hand; } else { dx = e.GetPosition(shape).X; dy = e.GetPosition(shape).Y; } }
private void mapCanvas_ContextMenuOpening(object sender, ContextMenuEventArgs e) { MapVisualElement elem = (MapVisualElement)e.Source; if (elem != null) { mapCanvas.ContextMenu.Items.Clear(); mapCanvas.ContextMenu.Items.Insert(0, "ping"); mapCanvas.ContextMenu.Items.Insert(0, "tracerote"); if (elem.data.url != "") { mapCanvas.ContextMenu.Items.Insert(0, elem.data.url); } mapCanvas.ContextMenu.Items.Insert(0, elem.data.label); MenuItem itm = new MenuItem(); itm.Click += delegate(object sender2, RoutedEventArgs e2) { elem.SetState(0); }; itm.Header = "SetState(0)"; mapCanvas.ContextMenu.Items.Add(itm); itm = new MenuItem(); itm.Click += delegate(object sender2, RoutedEventArgs e2) { elem.SetState(1); }; itm.Header = "SetState(1)"; mapCanvas.ContextMenu.Items.Add(itm); itm = new MenuItem(); itm.Click += delegate(object sender2, RoutedEventArgs e2) { elem.SetState(2); }; itm.Header = "SetState(2)"; mapCanvas.ContextMenu.Items.Add(itm); } else { mapCanvas.ContextMenu.Items.Clear(); MenuItem itm = new MenuItem(); itm.Click += delegate(object sender2, RoutedEventArgs e2) { MessageBox.Show("Добавление линка пока не реализовано"); }; itm.Header = "Add Link"; mapCanvas.ContextMenu.Items.Add(itm); MenuItem itm2 = new MenuItem(); itm2.Click += delegate(object sender2, RoutedEventArgs e2) { MessageBox.Show("Добавление объектов пока не реализовано"); }; itm2.Header = "Add Device"; mapCanvas.ContextMenu.Items.Add(itm2); } }