コード例 #1
0
 /// <summary>
 /// Initialise the settings object based upon the current character ID
 /// </summary>
 private void InitSettings()
 {
     EMMADataSet.APICharSettingsDataTable settingsTable = new EMMADataSet.APICharSettingsDataTable();
     settingsTableAdapter.FillByChar(settingsTable, _charID);
     if (settingsTable.Count > 0)
     {
         XmlDocument settingsDoc = new XmlDocument();
         settingsDoc.LoadXml(settingsTable[0].Settings);
         _settings = new APICharSettings(settingsDoc);
     }
     else
     {
         _settings = new APICharSettings(_charID);
     }
     _settings.SettingsUpdated += new SettingsUpdatedHandler(_settings_SettingsUpdated);
 }
コード例 #2
0
        /// <summary>
        /// Store the character's settings in the database
        /// </summary>
        public void StoreSettings()
        {
            // If it's null then it's not been accessed and there are no changes to store..
            if (_settings != null)
            {
                if (_settings.Changed)
                {
                    EMMADataSet.APICharSettingsDataTable settingsTable = new EMMADataSet.APICharSettingsDataTable();
                    lock (settingsTableAdapter)
                    {
                        settingsTableAdapter.FillByChar(settingsTable, _charID);
                        if (settingsTable.Count == 0)
                        {
                            EMMADataSet.APICharSettingsRow newRow = settingsTable.NewAPICharSettingsRow();
                            newRow.CharID = _charID;
                            // Just make this blank temporarilly so we are allowed to add it to the table.
                            newRow.Settings = "";
                            settingsTable.AddAPICharSettingsRow(newRow);
                        }
                        settingsTable[0].Settings = _settings.Xml.InnerXml;

                        settingsTableAdapter.Update(settingsTable);
                    }
                    _settings.Changed = false;
                }
            }
        }