Smrf.NodeXL.Visualization.Wpf.NodeXLControl.SetVertexSelectedInternal C# (CSharp) Method

SetVertexSelectedInternal() protected method

protected SetVertexSelectedInternal ( IVertex oVertex, System.Boolean bSelected ) : void
oVertex IVertex
bSelected System.Boolean
return void
    SetVertexSelectedInternal
    (
        IVertex oVertex,
        Boolean bSelected
    )
    {
        Debug.Assert(oVertex != null);
        AssertValid();

        if ( !VertexOrEdgeCanBeSelected(oVertex, bSelected) )
        {
            return;
        }

        // Modify the vertex's metadata to mark it as selected or unselected.

        MarkVertexOrEdgeAsSelected(oVertex, bSelected);

        // Modify the collection of selected vertices.

        if (bSelected)
        {
            m_oSelectedVertices.Add(oVertex);
        }
        else
        {
            m_oSelectedVertices.Remove(oVertex);
        }

        // Redraw the vertex using its modified metadata.

        Debug.Assert(m_oLastGraphDrawingContext != null);

        m_oGraphDrawer.RedrawVertex(oVertex, m_oLastGraphDrawingContext);
    }
NodeXLControl