Example #1
0
 /// <summary>
 /// Removes the specified map frame if it is a root node.
 /// </summary>
 /// <param name="mapFrame">Map frame that gets removed.</param>
 /// <param name="preventRefresh">Boolean, if true, removing the map frame will not automatically force a refresh of the legend.</param>
 public void RemoveMapFrame(IFrame mapFrame, bool preventRefresh)
 {
     RootNodes.Remove(mapFrame);
     if (!RootNodes.Contains(mapFrame))
     {
         OnExcludeMapFrame(mapFrame);
     }
     if (preventRefresh)
     {
         return;
     }
     RefreshNodes();
 }
Example #2
0
        private void OnAddEdge(GraphEdge <T> edge)
        {
            if (edge.Source.IsLeafNode)
            {
                LeafNodes.Remove(edge.Source);
            }

            if (edge.Sink.IsRootNode)
            {
                RootNodes.Remove(edge.Sink);
            }

            edge.Source.OutgoingEdges.Add(edge);
            edge.Sink.IncomingEdges.Add(edge);
        }
Example #3
0
        private void OnRemoveNode(GraphNode <T> node)
        {
            RootNodes.Remove(node);
            var tempIncomingEdges = new List <GraphEdge <T> >(node.IncomingEdges);

            foreach (GraphEdge <T> incomingEdge in tempIncomingEdges)
            {
                RemoveEdge(incomingEdge);
            }

            LeafNodes.Remove(node);
            var tempOutgoingEdges = new List <GraphEdge <T> >(node.OutgoingEdges);

            foreach (GraphEdge <T> outgoingEdge in tempOutgoingEdges)
            {
                RemoveEdge(outgoingEdge);
            }
        }