예제 #1
0
        public static DialogResult Show(
            QueryColumn qc)
        {
            ColumnFormatEnum displayFormat;
            int        decimals;
            MetaColumn mc = qc.MetaColumn;

            if (Instance == null)
            {
                Instance = new NumberFormatDialog();
            }
            NumberFormatDialog nfd = Instance;

            ResultsFormatter.GetOutputFormatForQueryColumn(qc, out displayFormat, out decimals);

            if (displayFormat == ColumnFormatEnum.SigDigits)
            {
                nfd.SigDigits.Checked = true;
            }
            else if (displayFormat == ColumnFormatEnum.Scientific)
            {
                nfd.Scientific.Checked = true;
            }
            else
            {
                nfd.Decimal.Checked = true;
            }

            if (qc.Decimals > 0)
            {
                decimals = qc.Decimals;
            }
            string tok = decimals.ToString();

            nfd.DecimalPlaces.Text = tok;

            new JupyterGuiConverter().ConvertFormOrUserControl(Instance);

            DialogResult dr = nfd.ShowDialog(SessionManager.ActiveForm);

            if (dr == DialogResult.OK)
            {
                if (nfd.SigDigits.Checked)
                {
                    qc.DisplayFormat = ColumnFormatEnum.SigDigits;
                }
                else if (nfd.Scientific.Checked)
                {
                    qc.DisplayFormat = ColumnFormatEnum.Scientific;
                }
                else
                {
                    qc.DisplayFormat = ColumnFormatEnum.Decimal;
                }

                tok         = nfd.DecimalPlaces.Text;
                qc.Decimals = Int32.Parse(tok);                 // already checked for validity
            }

            return(dr);
        }