Пример #1
0
        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;
            }
        }
Пример #2
0
        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);
        }
Пример #3
0
 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;
             }
         }
     }
 }
Пример #4
0
        // 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;
                }
            }
        }