private void OnDiagramShapeRemoveRequested(DiagramShapeViewModelBase diagramShapeViewModel) { DiagramViewportViewModel.StopFollowingDiagramNodes(); if (RelatedEntityListBoxViewModel.OwnerDiagramShape == diagramShapeViewModel) { HideRelatedEntityListBox(); } }
private void AddToViewModels(DiagramShapeViewModelBase diagramShapeViewModel) { if (diagramShapeViewModel is DiagramNodeViewModel) { DiagramNodeViewModels.Add((DiagramNodeViewModel)diagramShapeViewModel); } else if (diagramShapeViewModel is DiagramConnectorViewModel) { DiagramConnectorViewModels.Add((DiagramConnectorViewModel)diagramShapeViewModel); } else { throw new Exception($"Unexpected DiagramShapeViewModelBase: {diagramShapeViewModel.GetType().Name}"); } }
private void RemoveFromViewModels(DiagramShapeViewModelBase diagramShapeViewModel) { if (diagramShapeViewModel is DiagramNodeViewModel) { var diagramNodeViewModel = (DiagramNodeViewModel)diagramShapeViewModel; DiagramNodeViewModels.Remove(diagramNodeViewModel); diagramNodeViewModel.Dispose(); } else if (diagramShapeViewModel is DiagramConnectorViewModel) { var diagramConnectorViewModel = (DiagramConnectorViewModel)diagramShapeViewModel; DiagramConnectorViewModels.Remove(diagramConnectorViewModel); diagramConnectorViewModel.Dispose(); } else { throw new Exception($"Unexpected DiagramShapeViewModelBase: {diagramShapeViewModel.GetType().Name}"); } }
public override void AssociateWith(DiagramShapeViewModelBase diagramNodeViewModel) { base.AssociateWith(diagramNodeViewModel); UpdateEnabledState(); }