Smrf.NodeXL.ExcelTemplate.TaskAutomator.TryCalculateGraphMetrics C# (CSharp) Method

TryCalculateGraphMetrics() private static method

private static TryCalculateGraphMetrics ( Microsoft oWorkbook ) : System.Boolean
oWorkbook Microsoft
return System.Boolean
    TryCalculateGraphMetrics
    (
        Microsoft.Office.Interop.Excel.Workbook oWorkbook
    )
    {
        Debug.Assert(oWorkbook != null);

        CalculateGraphMetricsDialog oCalculateGraphMetricsDialog =
            new CalculateGraphMetricsDialog(null, oWorkbook);

        if (oCalculateGraphMetricsDialog.ShowDialog() != DialogResult.OK)
        {
            return (false);
        }

        if ( ( new GraphMetricUserSettings() ).ShouldCalculateGraphMetrics(
            GraphMetrics.TopNBy) )
        {
            // See the comments in GraphMetricsDialog for details on how
            // top-N-by metrics must be calculated after the other metrics
            // are calculated.

            TopNByMetricCalculator2 oTopNByMetricCalculator2 =
                new TopNByMetricCalculator2();

            oCalculateGraphMetricsDialog = new CalculateGraphMetricsDialog(
                null, oWorkbook,
                new IGraphMetricCalculator2 [] {oTopNByMetricCalculator2},
                null, true);

            if (oCalculateGraphMetricsDialog.ShowDialog() != DialogResult.OK)
            {
                return (false);
            }
        }

        return (true);
    }