예제 #1
0
        void ProtoPidsGenerate(string name)
        {
            listBox1.Items.Clear();
            List <string>  result    = new List <string>();
            ProtoItemFiles prItfiles = new ProtoItemFiles(name, NewItemPidPath.Text);

            result = prItfiles.GetPids();

            if (result.Count < 1)
            {
                listBox1.Items.Add("В файле нет прототипов!");
                return;
            }

            StreamWriter file = new StreamWriter(new FileStream("PID_" + name.Replace(".fopro", "").ToUpper() + ".txt", FileMode.Create), Encoding.Default);

            listBox1.Items.Add("Генерация именованых констант с " + name);
            file.WriteLine("//" + name);
            for (int i = 0; i < result.Count; i++)
            {
                listBox1.Items.Add("#define " + "PID_" + name.Replace(".fopro", "").ToUpper() + "_" + (i + 1) + "\t\t\t\t(" + result[i] + ")");
                file.WriteLine("#define " + "PID_" + name.Replace(".fopro", "").ToUpper() + "_" + (i + 1) + "\t\t\t\t(" + result[i] + ")");
            }

            file.Close();

            listBox1.Items.Add("");
            foreach (string str in result)
            {
                foreach (string subStr in prItfiles.arrayNewPidNumbers)
                {
                    if (str == subStr)
                    {
                        listBox1.Items.Add("Обратите внимание! Этот занятый номер вы зарезервировали в новом _itempid.fos: " + str);
                    }
                }
            }
        }