private void saveConfiguration()
{
try
{
Configuration c = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
//always back this up. File paths only backed up when load is used
AppState.Backup = chkBackup.Checked;
saveSetting(c, "ConfigVersion", "3");
saveSetting(c, "InputFormat", AppState.InputFormat);
saveSetting(c, "PakFilename", AppState.PakFilename);
saveSetting(c, "PabFilename", AppState.PabFilename);
saveSetting(c, "DebugFilename", AppState.DebugFilename);
saveSetting(c, "Backup", AppState.Backup.ToString());
saveSetting(c, "LastQbReplacePath", AppState.LastQbReplacePath);
saveSetting(c, "LastQbExtractPath", AppState.LastQbExtractPath);
saveSetting(c, "LastScriptPath", AppState.LastScriptPath);
saveSetting(c, "LastArrayPath", AppState.LastArrayPath);
saveSetting(c, "ScriptActiveTab", AppState.ScriptActiveTab.ToString());
AppState.SavePakListColInfo(lstPakContents);
saveSetting(c, "PakListColPositions", AppState.PakListColPositions);
saveSetting(c, "PakListColWidths", AppState.PakListColWidths);
saveSetting(c, "PakListSort", AppState.PakListSort);
AppState.SaveSearchListColInfo(lstSearchResults);
saveSetting(c, "SearchListColPositions", AppState.SearchListColPositions);
saveSetting(c, "SearchListColWidths", AppState.SearchListColWidths);
saveSetting(c, "SearchListSort", AppState.SearchListSort);
AppState.SaveQbListColInfo(lstQbItems);
saveSetting(c, "QbListColPositions", AppState.QbListColPositions);
saveSetting(c, "QbListColWidths", AppState.QbListColWidths);
AppState.SaveWindowInfo(this);
saveSetting(c, "WindowInfo", AppState.WindowInfo);
saveSetting(c, "PakSplitterPosition", AppState.PakSplitterPosition.ToString());
saveSetting(c, "SearchSplitterPosition", AppState.SearchSplitterPosition.ToString());
saveSetting(c, "QbSplitterPosition", AppState.QbSplitterPosition.ToString());
saveSetting(c, "AllowedScriptStringChars", QbFile.AllowedScriptStringChars);
c.Save();
}
catch (Exception ex)
{
showException("Save Configuration Error", ex);
}
}