Beispiel #1
0
        /// <summary>
        /// adds a new commodity the the dictionary
        /// </summary>
        /// <param name="commodity"></param>
        /// <param name="language"></param>
        private void addCommodity(string commodity, enLanguage language)
        {
            dsCommodities                ownCommodities = new dsCommodities();

            if(File.Exists(@".\Data\Commodities_own.xml"))
                ownCommodities.ReadXml(@".\Data\Commodities_own.xml");

            dsCommodities.NamesRow newCommodity     = (dsCommodities.NamesRow)_commodities.Names.NewRow();
            dsCommodities.NamesRow newOwnCommodity  = (dsCommodities.NamesRow)ownCommodities.Names.NewRow();

            foreach (enLanguage availableLanguage in Enum.GetValues(typeof(enLanguage)))
                newOwnCommodity[availableLanguage.ToString()] = Program.COMMODITY_NOT_SET;

            newOwnCommodity[language.ToString()] = commodity;

            foreach (enLanguage availableLanguage in Enum.GetValues(typeof(enLanguage)))
                newCommodity[availableLanguage.ToString()] = newOwnCommodity[availableLanguage.ToString()];

            // add to both dictionaries
            ownCommodities.Names.AddNamesRow(newOwnCommodity);
            _commodities.Names.AddNamesRow(newCommodity);

            // save to "own" file
            ownCommodities.WriteXml(@".\Data\Commodities_own_new.xml");
            FileSaver.rotateSaveFiles(@".\Data\Commodities_own.xml");

            // reload in working array
            loadCommodities(RegulatedNoiseSettings.Language);
        }