Пример #1
0
        public override void Init()
        {
            dataGridViewMC.MakeDoubleBuffered();
            dataGridViewMC.DefaultCellStyle.WrapMode = DataGridViewTriState.False;
            dataGridViewMC.RowTemplate.Height        = 26;

            BaseUtils.Translator.Instance.Translate(this);
            BaseUtils.Translator.Instance.Translate(toolTip, this);

            cfs = new FilterSelector(DbFilterSave);

            MaterialCommodityData[] items;
            string[] types;

            if (materials)
            {
                dataGridViewMC.Columns.Remove(dataGridViewMC.Columns[5]);       // to give name,shortname abv,category,type,number
                labelItems1.Text = "Data".Tx(this);
                labelItems2.Text = "Mats".Tx(this);

                items = MaterialCommodityData.GetMaterials(true);
                types = MaterialCommodityData.GetTypes((x) => !x.IsCommodity, true);

                MaterialCommodityData[] raw = items.Where(x => x.IsRaw).ToArray();
                cfs.AddGroupOption("Raw", String.Join(";", raw.Select(x => x.Name).ToArray()) + ";");
                MaterialCommodityData[] enc = items.Where(x => x.IsEncoded).ToArray();
                cfs.AddGroupOption("Encoded", String.Join(";", enc.Select(x => x.Name).ToArray()) + ";");
                MaterialCommodityData[] manu = items.Where(x => x.IsManufactured).ToArray();
                cfs.AddGroupOption("Manufactured", String.Join(";", manu.Select(x => x.Name).ToArray()) + ";");
            }
            else
            {
                dataGridViewMC.Columns.Remove(dataGridViewMC.Columns[1]);       //shortname
                dataGridViewMC.Columns.Remove(dataGridViewMC.Columns[1]);       //then category to give name,type,number, avg price
                labelItems1.Text       = "Total".Tx(this);
                textBoxItems2.Visible  = labelItems2.Visible = false;
                checkBoxClear.Location = new Point(textBoxItems1.Right + 8, checkBoxClear.Top);

                items = MaterialCommodityData.GetCommodities(true);
                types = MaterialCommodityData.GetTypes((x) => x.IsCommodity, true);

                MaterialCommodityData[] rare = items.Where(x => x.IsRareCommodity).ToArray();
                cfs.AddGroupOption("Rare", String.Join(";", rare.Select(x => x.Name).ToArray()) + ";");
            }

            foreach (string t in types)
            {
                string[] members = MaterialCommodityData.GetMembersOfType(t, true);
                cfs.AddGroupOption(t, String.Join(";", members) + ";");
            }

            foreach (var x in items)
            {
                cfs.AddStandardOption(x.Name);
            }

            checkBoxClear.Checked         = EliteDangerousCore.DB.SQLiteDBClass.GetSettingBool(DbClearZeroSave, true);
            checkBoxClear.CheckedChanged += CheckBoxClear_CheckedChanged;

            cfs.Changed += FilterChanged;
        }