public void ShowVerticeMenu(VertexClickedEventArgs args, MainWindow mainWindow) { DataVertex selectedVertex = new DataVertex(); string mouseButton = args.MouseArgs.ChangedButton.ToString(); selectedVertex = args.Control.GetDataVertex <DataVertex>(); if (mouseButton == "Left") { selectedVertex.Text = "NewLabel".ToString(); mainWindow.graphArea.GenerateGraph(); } else if (mouseButton == "Right") { VertexMenu vertexMenu = new VertexMenu(); vertexMenu.Owner = mainWindow; ContextMenu contextMenu = new ContextMenu(); contextMenu.Items.Add("Удалить фрейм"); contextMenu.Items.Add("Изменить параметры"); args.Control.ContextMenu = contextMenu; args.Control.ContextMenu.IsOpen = true; vertexMenu.vertexMenuMainGroupBox.Header = selectedVertex.Text.ToString(); System.Windows.Media.Effects.BlurEffect objBlur = new System.Windows.Media.Effects.BlurEffect(); objBlur.Radius = 5; mainWindow.Effect = objBlur; if (vertexMenu.ShowDialog() == true) { } mainWindow.Effect = null; } }
private void GraphArea_VertexClicked(object sender, VertexClickedEventArgs args) { int selectedVertexId = (int)args.Control.GetDataVertex <DataVertex>().ID; Frame frame = viewModel.Events.viewModelFramesHierarchy.GetFrameFromNodesById(selectedVertexId); string messageBoxString; if (frame != null) { messageBoxString = viewModel.Events.viewModelFramesHierarchy.viewModelGraph._GetGraphVerticeText(frame); } else { messageBoxString = "Не удалось получить информацию."; } MessageBox.Show(messageBoxString); }
private void MyAreaOnVertexClicked(object sender, VertexClickedEventArgs args) { if (args.MouseArgs.ChangedButton == MouseButton.Left) { if (args.Modifiers == ModifierKeys.Control) { if (control == null) { control = args.Control; } else if (!control.Equals(args.Control)) { myArea.AddLink(control.Vertex as MyVertex, args.Control.Vertex as MyVertex); control = null; } } } }
// Temporary vertex control // TODO: Rework private void g_area_VertexClicked(object sender, VertexClickedEventArgs args) { var vm = DataContext as GraphAreaViewModel; if (Keyboard.IsKeyDown(Key.LeftCtrl) && vm.SelectedDevice != null) { if (vm.TryAddEdge(vm.SelectedDevice, (DataVertex)args.Control.Vertex)) { g_area.GenerateAllEdges(); } } else { var vcpe = args.Control as VertexControlPE; var vert = args.Control.Vertex as DeviceBase; if (vcpe != null && vert != null) { DeselectVertices(); vcpe.IsSelected = true; vm.SelectedDevice = vert; } } }