Smrf.NodeXL.ExcelTemplate.DynamicFiltersLegendControl.DrawDynamicFilterRangeTrackBars C# (CSharp) Method

DrawDynamicFilterRangeTrackBars() protected method

protected DrawDynamicFilterRangeTrackBars ( DrawingObjects oDrawingObjects, String sGroupName, ICollection oDynamicFilterRangeTrackBars, Rectangle oColumnRectangle ) : Int32
oDrawingObjects DrawingObjects
sGroupName String
oDynamicFilterRangeTrackBars ICollection
oColumnRectangle System.Drawing.Rectangle
return System.Int32
    DrawDynamicFilterRangeTrackBars
    (
        DrawingObjects oDrawingObjects,
        String sGroupName,
        ICollection<IDynamicFilterRangeTrackBar> oDynamicFilterRangeTrackBars,
        Rectangle oColumnRectangle
    )
    {
        Debug.Assert(oDrawingObjects != null);
        Debug.Assert( !String.IsNullOrEmpty(sGroupName) );
        Debug.Assert(oDynamicFilterRangeTrackBars != null);
        AssertValid();

        Int32 iTop = oColumnRectangle.Top;

        if (oDynamicFilterRangeTrackBars.Count > 0)
        {
            // Draw the group name at the top of the group.

            DrawColumnHeader(oDrawingObjects, sGroupName, oColumnRectangle.Left,
                oColumnRectangle.Right, ref iTop);

            Int32 iTrackBarLeft = oColumnRectangle.Left;
            Int32 iTrackBarRight = oColumnRectangle.Right;

            Pen oAvailableRangeLinePen = new Pen(SystemBrushes.ControlDark,
                AvailableLineHeight);

            Pen oSelectedRangeLinePen = new Pen(SystemBrushes.Highlight,
                SelectedLineHeight);

            foreach (IDynamicFilterRangeTrackBar oDynamicFilterRangeTrackBar in
                oDynamicFilterRangeTrackBars)
            {
                DrawDynamicFilterRangeTrackBar(oDrawingObjects,
                    oDynamicFilterRangeTrackBar, oAvailableRangeLinePen,
                    oSelectedRangeLinePen, oColumnRectangle, iTrackBarLeft,
                    iTrackBarRight, ref iTop);
            }

            oAvailableRangeLinePen.Dispose();
            oSelectedRangeLinePen.Dispose();
        }

        return (iTop);
    }