Add migrating user settings for installer

master
LeapwardKoex 2024-11-19 20:46:40 +13:00
parent f239e9b534
commit f39fead973
4 changed files with 31 additions and 0 deletions

View File

@ -34,6 +34,9 @@
<setting name="BorderColour" serializeAs="String">
<value />
</setting>
<setting name="UserSettingsUpgradeRequired" serializeAs="String">
<value>True</value>
</setting>
</WpfMaiTouchEmulator.Properties.Settings>
</userSettings>
</configuration>

View File

@ -22,6 +22,7 @@ public partial class MainWindow : Window
public MainWindow()
{
InitializeComponent();
CheckForUserSettingsUpgrade();
DataContext = new MainWindowViewModel()
{
IsDebugEnabled = Properties.Settings.Default.IsDebugEnabled,
@ -154,6 +155,18 @@ public partial class MainWindow : Window
}
}
private static void CheckForUserSettingsUpgrade()
{
if (!Properties.Settings.Default.UserSettingsUpgradeRequired)
{
return;
}
Properties.Settings.Default.Upgrade();
Properties.Settings.Default.UserSettingsUpgradeRequired = false;
Properties.Settings.Default.Save();
}
private void ShowSetupInstructionsDialog()
{
var dataContext = (MainWindowViewModel)DataContext;

View File

@ -130,5 +130,17 @@ namespace WpfMaiTouchEmulator.Properties {
this["BorderColour"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool UserSettingsUpgradeRequired {
get {
return ((bool)(this["UserSettingsUpgradeRequired"]));
}
set {
this["UserSettingsUpgradeRequired"] = value;
}
}
}
}

View File

@ -29,5 +29,8 @@
<Setting Name="BorderColour" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="UserSettingsUpgradeRequired" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
</Settings>
</SettingsFile>