Smrf.NodeXL.ExcelTemplate.ColorColumnAutoFillUserSettingsDialog.DoDataExchange C# (CSharp) Method

DoDataExchange() protected method

protected DoDataExchange ( System.Boolean bFromControls ) : System.Boolean
bFromControls System.Boolean
return System.Boolean
    DoDataExchange
    (
        Boolean bFromControls
    )
    {
        AssertValid();

        if (bFromControls)
        {
            m_oColorColumnAutoFillUserSettings.SourceColumnContainsNumbers =
                (Boolean)cbxSourceColumnContainsNumbers.SelectedValue;

            if (m_oColorColumnAutoFillUserSettings.SourceColumnContainsNumbers)
            {
                const String Message = "Enter a number.";

                Boolean bUseSourceNumber1 = radUseSourceNumber1.Checked;
                Boolean bUseSourceNumber2 = radUseSourceNumber2.Checked;
                Boolean bUseLogs = chkUseLogs.Checked;
                Double dSourceNumber1 = 0;
                Double dSourceNumber2 = 0;

                if (
                    (bUseSourceNumber1
                    &&
                    !this.ValidateDoubleTextBox(txbSourceNumber1,
                        Double.MinValue, Double.MaxValue, Message,
                        out dSourceNumber1) )
                    ||
                    (bUseSourceNumber2
                    &&
                    !this.ValidateDoubleTextBox(txbSourceNumber2,
                        Double.MinValue, Double.MaxValue, Message,
                        out dSourceNumber2) )
                    )
                {
                    return (false);
                }

                if ( bUseLogs && ( (bUseSourceNumber1 && dSourceNumber1 <= 0)
                    ||
                    (bUseSourceNumber2 && dSourceNumber2 <= 0) ) )
                {
                    ShowWarning(
                        AutoFillWorkbookDialog.NegativeSourceRangeMessage);

                    return (false);
                }

                m_oColorColumnAutoFillUserSettings.UseSourceNumber1 =
                    bUseSourceNumber1;

                m_oColorColumnAutoFillUserSettings.UseSourceNumber2 =
                    bUseSourceNumber2;

                m_oColorColumnAutoFillUserSettings.SourceNumber1 =
                    dSourceNumber1;

                m_oColorColumnAutoFillUserSettings.SourceNumber2 =
                    dSourceNumber2;

                m_oColorColumnAutoFillUserSettings.DestinationColor1 =
                    usrDestinationColor1.Color;

                m_oColorColumnAutoFillUserSettings.DestinationColor2 =
                    usrDestinationColor2.Color;

                m_oColorColumnAutoFillUserSettings.IgnoreOutliers =
                    chkIgnoreOutliers.Checked;

                m_oColorColumnAutoFillUserSettings.UseLogs = bUseLogs;
            }
        }
        else
        {
            cbxSourceColumnContainsNumbers.SelectedValue =
                m_oColorColumnAutoFillUserSettings.SourceColumnContainsNumbers;

            radUseSourceNumber1.Checked =
                m_oColorColumnAutoFillUserSettings.UseSourceNumber1;

            radUseSourceNumber2.Checked =
                m_oColorColumnAutoFillUserSettings.UseSourceNumber2;

            txbSourceNumber1.Text =
                m_oColorColumnAutoFillUserSettings.SourceNumber1.ToString();

            txbSourceNumber2.Text =
                m_oColorColumnAutoFillUserSettings.SourceNumber2.ToString();

            usrDestinationColor1.Color =
                m_oColorColumnAutoFillUserSettings.DestinationColor1;

            usrDestinationColor2.Color =
                m_oColorColumnAutoFillUserSettings.DestinationColor2;

            chkIgnoreOutliers.Checked =
                m_oColorColumnAutoFillUserSettings.IgnoreOutliers;

            chkUseLogs.Checked =
                m_oColorColumnAutoFillUserSettings.UseLogs;

            EnableControls();
        }

        return (true);
    }