Exemple #1
0
        // // Naming service subs:

        public string GetNewProgramFileShortName(IIDE ide)
        {
            if (ide == null)
            {
                throw new NullReferenceException();
            }

            string name;

            name  = "New_";
            name += (ide.Machine.CurrentLanguage.IsNotNullOrEmpty()) ? ide.Machine.CurrentLanguage : ide.Machine.BaseLanguage;
            name += "_program";

            int lastnumber = -1;
            int num        = -1;

            foreach (IIDE ide_ in IDEs)
            {
                if (ide_.ProgramFile.ShortFileName.IndexOf(name) == 0)
                {
                    if ((ide_.ProgramFile.ShortFileName + "|").Substring(name.Length) == "|")
                    {
                        num = 1;
                    }
                    else if (ide_.ProgramFile.ShortFileName.Length - name.Length > 3 &&
                             ide_.ProgramFile.ShortFileName.Substring(name.Length, 2) == " (" &&
                             XString.Right(ide_.ProgramFile.ShortFileName, 1) == ")")
                    {
                        string snum = ide_.ProgramFile.ShortFileName.Substring(name.Length + 2);
                        snum = snum.Substring(0, snum.Length - 1);
                        if (!Int32.TryParse(snum, out num))
                        {
                            num = -1;
                        }
                    }
                }
                if (num > lastnumber)
                {
                    lastnumber = num;
                }
            }
            lastnumber++;
            name += (lastnumber > 1) ? " (" + lastnumber.ToString() + ")" : "";

            return(name);
        }
Exemple #2
0
        public string GetNewIDEtitle(IIDE ide)
        {
            if (ide == null)
            {
                throw new NullReferenceException();
            }

            string name;

            name  = ((ide.Machine.CustomName.IsNotNullOrEmpty()) ? ide.Machine.CustomName : ide.Machine.DefaultName);
            name += " IDE";

            int lastnumber = -1;
            int num        = -1;

            foreach (IIDE ide_ in IDEs)
            {
                if (ide_.Title.IndexOf(name) == 0)
                {
                    if ((ide_.Title + "|").Substring(name.Length) == "|")
                    {
                        num = 1;
                    }
                    else if (ide_.Title.Length - name.Length > 3 &&
                             ide_.Title.Substring(name.Length, 2) == " (" &&
                             XString.Right(ide_.Title, 1) == ")")
                    {
                        string snum = ide_.Title.Substring(name.Length + 2);
                        snum = snum.Substring(0, snum.Length - 1);
                        if (!Int32.TryParse(snum, out num))
                        {
                            num = -1;
                        }
                    }
                }
                if (num > lastnumber)
                {
                    lastnumber = num;
                }
            }
            lastnumber++;
            name += (lastnumber > 1) ? " (" + lastnumber.ToString() + ")" : "";

            return(name);
        }