Skip to content

Commit 803403e

Browse files
committed
Export Settings (from 'File' menu) + portable mode (no registry)
1 parent 5a8fe3b commit 803403e

3 files changed

Lines changed: 45 additions & 16 deletions

File tree

GUI/MainForm.Designer.cs

Lines changed: 25 additions & 14 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

GUI/MainForm.cs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -676,5 +676,18 @@ public HttpServer Server {
676676
get { return server; }
677677
}
678678

679+
private void ExportSettingsMenu_Click(object sender, EventArgs e) {
680+
var dlg = new SaveFileDialog {
681+
DefaultExt = ".config",
682+
FileName = "OpenHardwareMonitor.config",
683+
Filter = "Config files|*.config",
684+
RestoreDirectory = true,
685+
Title = "Export Settings As"
686+
};
687+
if (dlg.ShowDialog() != DialogResult.OK)
688+
return;
689+
settings.SaveToFile(dlg.FileName);
690+
MessageBox.Show("Settings export completed successfully!", "Export Settings", MessageBoxButtons.OK, MessageBoxIcon.Information);
691+
}
679692
}
680693
}

Utilities/PersistentSettings.cs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,11 @@ public void Load() {
4444

4545
public void Save() {
4646

47+
if (GetValue("portable", false)) {
48+
SaveToFile(configFilePath);
49+
return;
50+
}
51+
4752
try {
4853
//remove prev settings
4954
Registry.CurrentUser.DeleteSubKeyTree("Software\\sergiye\\openHardwareMonitor", false);
@@ -64,11 +69,11 @@ public void Save() {
6469
}
6570
} catch (Exception) {
6671
//save old-style config
67-
SaveToFile();
72+
SaveToFile(configFilePath);
6873
}
6974
}
7075

71-
public void SaveToFile() {
76+
public void SaveToFile(string configFilePath) {
7277
try {
7378
settings.ToJsonFile(configFilePath);
7479
} catch (UnauthorizedAccessException) {

0 commit comments

Comments
 (0)