aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarsten Heimrich <karsten.heimrich@qt.io>2016-11-14 15:22:34 +0100
committerKarsten Heimrich <karsten.heimrich@qt.io>2016-11-22 13:45:49 +0000
commit21b7147764ca249a335108753a7824bfac2f4feb (patch)
tree0a3bf59f3d303a8f399e5bd4d5f14780d7db96d5
parentfef343643282de0500c71fcaa6c649842070c948 (diff)
Use the ShellSettingsManager for registry reading/writing
Change-Id: I0108194afd445bbefb4b433a39e9e92a1634a718 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
-rw-r--r--src/qtprojectlib/Statics.cs10
-rw-r--r--src/qtvstools/AddQtVersionDialog.cs36
-rw-r--r--src/qtvstools/Classifier.cs4
-rw-r--r--src/qtvstools/QtHelpMenu.cs14
-rw-r--r--src/qtvstools/VSQtSettings.cs8
5 files changed, 33 insertions, 39 deletions
diff --git a/src/qtprojectlib/Statics.cs b/src/qtprojectlib/Statics.cs
index 05fd83eb..7b38f9b2 100644
--- a/src/qtprojectlib/Statics.cs
+++ b/src/qtprojectlib/Statics.cs
@@ -30,7 +30,13 @@ namespace QtProjectLib
{
public static class Statics
{
- public const string QtVsToolsQmlClassifierKey = @"Enabled";
- public const string QtVsToolsQmlClassifierPath = @"QtVsTools\Qml\Classifier";
+ public const string QmlClassifierKey = @"Enable";
+ public const string QmlClassifierPath = @"QtVsTools\Qml\Classifier";
+
+ public const string HelpPreferenceKey = @"Offline";
+ public const string HelpPreferencePath = @"QtVsTools\Help\Preference";
+
+ public const string AddQtVersionDialogKey = @"LastSelectedPath";
+ public const string AddQtVersionDialogPath = @"QtVsTools\AddQtVersionDialog";
}
}
diff --git a/src/qtvstools/AddQtVersionDialog.cs b/src/qtvstools/AddQtVersionDialog.cs
index 0b0c9d58..1b0207f0 100644
--- a/src/qtvstools/AddQtVersionDialog.cs
+++ b/src/qtvstools/AddQtVersionDialog.cs
@@ -26,7 +26,8 @@
**
****************************************************************************/
-using Microsoft.Win32;
+using Microsoft.VisualStudio.Settings;
+using Microsoft.VisualStudio.Shell.Settings;
using QtProjectLib;
using System;
using System.IO;
@@ -258,34 +259,19 @@ namespace QtVsTools
private void browseButton_Click(object sender, EventArgs e)
{
using (var fd = new FolderBrowserDialog()) {
+ var settingsManager = new ShellSettingsManager(Vsix.Instance);
+ var store = settingsManager.GetWritableSettingsStore(SettingsScope.UserSettings);
+
fd.Description = SR.GetString("SelectQtPath");
- fd.SelectedPath = RestoreLastSelectedPath();
+ fd.SelectedPath = store.GetString(Statics.AddQtVersionDialogPath,
+ Statics.AddQtVersionDialogKey, string.Empty);
+
if (fd.ShowDialog() == DialogResult.OK) {
- pathBox.Text = fd.SelectedPath;
- SaveLastSelectedPath(fd.SelectedPath);
+ store.CreateCollection(Statics.AddQtVersionDialogPath);
+ store.SetString(Statics.AddQtVersionDialogPath, Statics.AddQtVersionDialogKey,
+ (pathBox.Text = fd.SelectedPath));
}
}
}
-
- private static string RestoreLastSelectedPath()
- {
- try {
- var key = Registry.CurrentUser.OpenSubKey("SOFTWARE\\"
- + Resources.registryPackagePath, false);
- if (key != null)
- return (string) key.GetValue("QtVersionLastSelectedPath");
- } catch {
- }
-
- return string.Empty;
- }
-
- private static void SaveLastSelectedPath(string path)
- {
- var key = Registry.CurrentUser.CreateSubKey("SOFTWARE\\"
- + Resources.registryPackagePath);
- if (key != null)
- key.SetValue("QtVersionLastSelectedPath", path);
- }
}
}
diff --git a/src/qtvstools/Classifier.cs b/src/qtvstools/Classifier.cs
index b83dd674..4e276539 100644
--- a/src/qtvstools/Classifier.cs
+++ b/src/qtvstools/Classifier.cs
@@ -69,8 +69,8 @@ namespace QtVsTools
var settingsManager = new ShellSettingsManager(isp);
var store = settingsManager.GetReadOnlySettingsStore(SettingsScope.UserSettings);
- QmlClassifierEnabled = store.GetBoolean(Statics.QtVsToolsQmlClassifierPath,
- Statics.QtVsToolsQmlClassifierKey, true);
+ QmlClassifierEnabled = store.GetBoolean(Statics.QmlClassifierPath,
+ Statics.QmlClassifierKey, true);
whiteSpaceChars = new[] { ' ', '\t' };
separators = new List<char>
diff --git a/src/qtvstools/QtHelpMenu.cs b/src/qtvstools/QtHelpMenu.cs
index 8e125c85..fc545884 100644
--- a/src/qtvstools/QtHelpMenu.cs
+++ b/src/qtvstools/QtHelpMenu.cs
@@ -61,7 +61,6 @@ namespace QtVsTools
const int OfflineDocumentationId = 0x0103;
readonly Package package;
- const string QtVsToolsHelpPreferencePath = @"QtVsTools\Help\Preference";
static readonly Guid HelpMenuGroupGuid = new Guid("fc6244f9-ec84-4370-a59c-b009b2eafd1b");
QtHelpMenu(Package pkg)
@@ -202,7 +201,8 @@ namespace QtVsTools
var settingsManager = new ShellSettingsManager(Instance.ServiceProvider);
var store = settingsManager.GetReadOnlySettingsStore(SettingsScope.UserSettings);
- var offline = store.GetBoolean(QtVsToolsHelpPreferencePath, "Offline", true);
+ var offline =
+ store.GetBoolean(Statics.HelpPreferencePath, Statics.HelpPreferenceKey, true);
var linksForKeyword = string.Format("SELECT d.Title, f.Name, e.Name, "
+ "d.Name, a.Anchor FROM IndexTable a, FileNameTable d, FolderTable e, "
@@ -296,10 +296,10 @@ namespace QtVsTools
var settingsManager = new ShellSettingsManager(ServiceProvider);
var store = settingsManager.GetWritableSettingsStore(SettingsScope.UserSettings);
- store.CreateCollection(QtVsToolsHelpPreferencePath);
+ store.CreateCollection(Statics.HelpPreferencePath);
var value = command.CommandID.ID == OfflineDocumentationId;
- store.SetBoolean(QtVsToolsHelpPreferencePath, "Offline", value);
+ store.SetBoolean(Statics.HelpPreferencePath, Statics.HelpPreferenceKey, value);
}
void BeforeQueryStatus(object sender, EventArgs e)
@@ -313,10 +313,12 @@ namespace QtVsTools
switch (command.CommandID.ID) {
case OnlineDocumentationId:
- command.Checked = !store.GetBoolean(QtVsToolsHelpPreferencePath, "Offline", true);
+ command.Checked = !store.GetBoolean(Statics.HelpPreferencePath,
+ Statics.HelpPreferenceKey, false);
break;
case OfflineDocumentationId:
- command.Checked = store.GetBoolean(QtVsToolsHelpPreferencePath, "Offline", true);
+ command.Checked = store.GetBoolean(Statics.HelpPreferencePath,
+ Statics.HelpPreferenceKey, true);
break;
}
}
diff --git a/src/qtvstools/VSQtSettings.cs b/src/qtvstools/VSQtSettings.cs
index b8c9e3f5..16646fa3 100644
--- a/src/qtvstools/VSQtSettings.cs
+++ b/src/qtvstools/VSQtSettings.cs
@@ -52,8 +52,8 @@ namespace QtVsTools
var settingsManager = new ShellSettingsManager(Vsix.Instance);
var store = settingsManager.GetReadOnlySettingsStore(SettingsScope.UserSettings);
- EnableQmlClassifier = store.GetBoolean(Statics.QtVsToolsQmlClassifierPath,
- Statics.QtVsToolsQmlClassifierKey, true);
+ EnableQmlClassifier = store.GetBoolean(Statics.QmlClassifierPath,
+ Statics.QmlClassifierKey, true);
}
private string newMocDir;
@@ -82,8 +82,8 @@ namespace QtVsTools
var settingsManager = new ShellSettingsManager(Vsix.Instance);
var store = settingsManager.GetWritableSettingsStore(SettingsScope.UserSettings);
- store.CreateCollection(Statics.QtVsToolsQmlClassifierPath);
- store.SetBoolean(Statics.QtVsToolsQmlClassifierPath, Statics.QtVsToolsQmlClassifierKey,
+ store.CreateCollection(Statics.QmlClassifierPath);
+ store.SetBoolean(Statics.QmlClassifierPath, Statics.QmlClassifierKey,
EnableQmlClassifier);
}