Example #1
0
        public static MTVars ListViewToMTV(ListView lv)
        {
            double expbase, opt;
            MTVars mtv = new MTVars();
            MTVars.MTVariable mtvar;
            ListViewItem lvi;
            string text;

            for(int lvindex=0;lvindex!=lv.Items.Count;lvindex+=1){
                lvi = lv.Items[lvindex];
                mtvar = new MTVars.MTVariable(lvi.Text);
                for(int index=1;index<lvi.SubItems.Count;index+=2) {
                    text = lvi.SubItems[index].Text;
                    if (double.TryParse(text,out opt)) mtvar.AddOption(opt);
                    else mtvar.AddOption(text);
                }
                for(int index=2;index<lvi.SubItems.Count;index+=2) {
                    text = lvi.SubItems[index].Text.ToLower(Util.cfi);
                    Util.ScaleRatioS srs = new Util.ScaleRatioS();
                    expbase = 1;

                    if (double.TryParse(text, out opt)) {
                        srs.srt = Util.ScaleRatioType.Polynomial;
                        expbase = opt;
                    }
                    if ((text.StartsWith("log")) && (double.TryParse(text.Substring(3,text.Length-3), out opt))) {
                        srs.srt = Util.ScaleRatioType.Logarithmic;
                        expbase = opt;
                    }
                    else if ((text.StartsWith("exp")) && (double.TryParse(text.Substring(3, text.Length-3), out opt))) {
                        srs.srt = Util.ScaleRatioType.Exponential;
                        expbase = opt;
                    }

                    srs.expbase = expbase;
                    mtvar.AddAccel(srs);
                }
                mtv.AddVariable(mtvar);
            }
            return mtv;
        }