diff --git a/Installer/Filters/Harvest_Filter.xslt b/Installer/Filters/Harvest_Filter.xslt
index 3eecf0f9e..dbf9ab5cd 100644
--- a/Installer/Filters/Harvest_Filter.xslt
+++ b/Installer/Filters/Harvest_Filter.xslt
@@ -11,6 +11,9 @@ xmlns:wix="http://schemas.microsoft.com/wix/2006/wi">
+
+
+
\ No newline at end of file
diff --git a/Installer/Fragments/FilesFragment.wxs b/Installer/Fragments/FilesFragment.wxs
deleted file mode 100644
index 2ac17efca..000000000
--- a/Installer/Fragments/FilesFragment.wxs
+++ /dev/null
@@ -1,3204 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Installer/Fragments/MiscTextFilesFragment.wxs b/Installer/Fragments/MiscTextFilesFragment.wxs
new file mode 100644
index 000000000..d03e498b3
--- /dev/null
+++ b/Installer/Fragments/MiscTextFilesFragment.wxs
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Installer/Fragments/ShortcutFragment.wxs b/Installer/Fragments/ShortcutFragment.wxs
index cb89f9135..4c25b8fe1 100644
--- a/Installer/Fragments/ShortcutFragment.wxs
+++ b/Installer/Fragments/ShortcutFragment.wxs
@@ -1,7 +1,7 @@
-
+
diff --git a/Installer/Installer.wixproj b/Installer/Installer.wixproj
index 57a2437da..41cb23698 100644
--- a/Installer/Installer.wixproj
+++ b/Installer/Installer.wixproj
@@ -28,6 +28,7 @@
+
@@ -47,7 +48,7 @@
-
+
diff --git a/Installer/mRemoteNGV1.wxs b/Installer/mRemoteNGV1.wxs
index 5e2b34164..1def32307 100644
--- a/Installer/mRemoteNGV1.wxs
+++ b/Installer/mRemoteNGV1.wxs
@@ -11,6 +11,9 @@
+
+
+
@@ -27,15 +30,21 @@
-
-
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/mRemoteNGTests/mRemoteNGTests.csproj b/mRemoteNGTests/mRemoteNGTests.csproj
index 3d32dc4d7..4b6335d57 100644
--- a/mRemoteNGTests/mRemoteNGTests.csproj
+++ b/mRemoteNGTests/mRemoteNGTests.csproj
@@ -111,10 +111,6 @@
{4934a491-40bc-4e5b-9166-ea1169a220f6}
mRemoteV1
-
- {0f615504-5f30-4cf2-8341-1de7fec95a23}
- SharedLibraryNG
-
diff --git a/mRemoteV1.sln b/mRemoteV1.sln
index feabb7b3a..8b2ed76a1 100644
--- a/mRemoteV1.sln
+++ b/mRemoteV1.sln
@@ -4,11 +4,6 @@ Microsoft Visual Studio Solution File, Format Version 12.00
VisualStudioVersion = 14.0.25123.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mRemoteV1", "mRemoteV1\mRemoteV1.csproj", "{4934A491-40BC-4E5B-9166-EA1169A220F6}"
- ProjectSection(ProjectDependencies) = postProject
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23} = {0F615504-5F30-4CF2-8341-1DE7FEC95A23}
- EndProjectSection
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharedLibraryNG", "SharedLibraryNG\SharedLibraryNG.csproj", "{0F615504-5F30-4CF2-8341-1DE7FEC95A23}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mRemoteNGTests", "mRemoteNGTests\mRemoteNGTests.csproj", "{1453B37F-8621-499E-B0B2-6091F76DC0BB}"
EndProject
@@ -42,22 +37,6 @@ Global
{4934A491-40BC-4E5B-9166-EA1169A220F6}.Release|Any CPU.Build.0 = Release|Any CPU
{4934A491-40BC-4E5B-9166-EA1169A220F6}.Release|x86.ActiveCfg = Release|Any CPU
{4934A491-40BC-4E5B-9166-EA1169A220F6}.Release|x86.Build.0 = Release|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Debug Portable|Any CPU.ActiveCfg = Debug|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Debug Portable|Any CPU.Build.0 = Debug|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Debug Portable|x86.ActiveCfg = Debug|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Debug Portable|x86.Build.0 = Debug|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Debug|x86.ActiveCfg = Debug|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Debug|x86.Build.0 = Debug|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Release Portable|Any CPU.ActiveCfg = Release|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Release Portable|Any CPU.Build.0 = Release|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Release Portable|x86.ActiveCfg = Release|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Release Portable|x86.Build.0 = Release|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Release|Any CPU.Build.0 = Release|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Release|x86.ActiveCfg = Release|Any CPU
- {0F615504-5F30-4CF2-8341-1DE7FEC95A23}.Release|x86.Build.0 = Release|Any CPU
{1453B37F-8621-499E-B0B2-6091F76DC0BB}.Debug Portable|Any CPU.ActiveCfg = Debug|Any CPU
{1453B37F-8621-499E-B0B2-6091F76DC0BB}.Debug Portable|Any CPU.Build.0 = Debug|Any CPU
{1453B37F-8621-499E-B0B2-6091F76DC0BB}.Debug Portable|x86.ActiveCfg = Debug|Any CPU
diff --git a/mRemoteV1/Config/KeyboardShortcuts/KeyboardShortcutMap.cs b/mRemoteV1/Config/KeyboardShortcuts/KeyboardShortcutMap.cs
deleted file mode 100644
index af9383e61..000000000
--- a/mRemoteV1/Config/KeyboardShortcuts/KeyboardShortcutMap.cs
+++ /dev/null
@@ -1,160 +0,0 @@
-using mRemoteNG.App;
-using SharedLibraryNG;
-using System;
-using System.Collections.Generic;
-
-namespace mRemoteNG.Config.KeyboardShortcuts
-{
- public class KeyboardShortcutMap : ICloneable
- {
- private List _mappings;
-
-
- public List Mappings
- {
- get
- {
- return _mappings;
- }
- }
-
-
- public KeyboardShortcutMap()
- {
- _mappings = new List();
- }
-
- public KeyboardShortcutMap(List mappings)
- {
- _mappings = mappings;
- }
-
-
- public void Add(ShortcutCommand command, ShortcutKey shortcutKey)
- {
- if (Mappings.Contains(new ShortcutMapping(command, shortcutKey)))
- {
- return;
- }
- Mappings.Add(new ShortcutMapping(command, shortcutKey));
- }
-
- public void AddRange(ShortcutCommand command, IEnumerable shortcutKeys)
- {
- foreach (ShortcutKey shortcutKey in shortcutKeys)
- {
- Add(command, shortcutKey);
- }
- }
-
- public void Remove(ShortcutCommand command, ShortcutKey shortcutKey)
- {
- Mappings.Remove(new ShortcutMapping(command, shortcutKey));
- }
-
- public void AddFromConfigString(ShortcutCommand command, string configString)
- {
- foreach (ShortcutKey shortcutKey in ParseConfigString(configString))
- {
- Add(command, shortcutKey);
- }
- }
-
- public string GetConfigString(ShortcutCommand command)
- {
- List parts = new List();
- foreach (ShortcutKey shortcutKey in GetShortcutKeys(command))
- {
- parts.Add(shortcutKey.ToConfigString());
- }
- return string.Join(", ", parts.ToArray());
- }
-
- public ShortcutKey[] GetShortcutKeys(ShortcutCommand command)
- {
- List shortcutKeys = new List();
- foreach (ShortcutMapping shortcutMapping in Mappings)
- {
- if (shortcutMapping.Command == command)
- {
- shortcutKeys.Add(shortcutMapping.Key);
- }
- }
- return shortcutKeys.ToArray();
- }
-
- public void SetShortcutKeys(ShortcutCommand command, IEnumerable shortcutKeys)
- {
- ClearShortcutKeys(command);
- AddRange(command, shortcutKeys);
- }
-
- public ShortcutCommand GetCommand(int keyCode, KeyboardHook.ModifierKeys modifierKeys)
- {
- return GetCommand(new ShortcutKey(keyCode, modifierKeys));
- }
-
- public object Clone()
- {
- List newMappings = new List();
- newMappings.AddRange(Mappings);
- return new KeyboardShortcutMap(newMappings);
- }
-
- private static ShortcutKey[] ParseConfigString(string shortcutKeysString)
- {
- List shortcutKeys = new List();
- foreach (string shortcutKeyString in shortcutKeysString.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries))
- {
- try
- {
- shortcutKeys.Add(ShortcutKey.FromConfigString(shortcutKeyString.Trim()));
- }
- catch (Exception ex)
- {
- Runtime.MessageCollector.AddExceptionMessage(message: string.Format("KeyboardShortcuts.ParseShortcutKeysString({0}) failed at {1}.", shortcutKeysString, shortcutKeyString), ex: ex, logOnly: true);
- continue;
- }
- }
- return shortcutKeys.ToArray();
- }
-
- private ShortcutCommand GetCommand(ShortcutKey shortcutKey)
- {
- foreach (ShortcutMapping shortcutMapping in Mappings)
- {
- if (ShortcutKeysMatch(shortcutMapping.Key, shortcutKey))
- {
- return shortcutMapping.Command;
- }
- }
- return ShortcutCommand.None;
- }
-
- private static bool ShortcutKeysMatch(ShortcutKey wanted, ShortcutKey pressed)
- {
- if (!(wanted.KeyCode == pressed.KeyCode))
- {
- return false;
- }
- return KeyboardHook.ModifierKeysMatch(wanted.ModifierKeys, pressed.ModifierKeys);
- }
-
- private void ClearShortcutKeys(ShortcutCommand command)
- {
- List mappingsToRemove = new List();
- foreach (ShortcutMapping mapping in Mappings)
- {
- if (mapping.Command == command)
- {
- mappingsToRemove.Add(mapping);
- }
- }
-
- foreach (ShortcutMapping mapping in mappingsToRemove)
- {
- Mappings.Remove(mapping);
- }
- }
- }
-}
\ No newline at end of file
diff --git a/mRemoteV1/Config/KeyboardShortcuts/KeyboardShortcuts.cs b/mRemoteV1/Config/KeyboardShortcuts/KeyboardShortcuts.cs
deleted file mode 100644
index 4c4812104..000000000
--- a/mRemoteV1/Config/KeyboardShortcuts/KeyboardShortcuts.cs
+++ /dev/null
@@ -1,118 +0,0 @@
-using System;
-using System.Windows.Forms;
-using System.Runtime.InteropServices;
-using SharedLibraryNG;
-
-
-namespace mRemoteNG.Config.KeyboardShortcuts
-{
- public class KeyboardShortcuts
- {
- private static KeyboardHook _keyboardHook = new KeyboardHook();
- private static bool _mapLoaded = false;
- private static IntPtr _handle = IntPtr.Zero;
-
- #region Public Properties
- private static KeyboardShortcutMap _defaultMap = null;
- public static KeyboardShortcutMap DefaultMap
- {
- get
- {
- LoadDefaultMap();
- return _defaultMap;
- }
- }
-
- private static KeyboardShortcutMap _map;
- public static KeyboardShortcutMap Map
- {
- get
- {
- Load();
- return _map;
- }
- set
- {
- CancelKeyNotifications();
- _map = value;
- Save();
- RequestKeyNotifications(_handle);
- }
- }
- #endregion
-
- #region Public Methods
- public static void RequestKeyNotifications(IntPtr handle)
- {
- // ReSharper disable LocalizableElement
- if (handle == IntPtr.Zero)
- {
- throw (new ArgumentException("The handle cannot be null.", "handle"));
- }
- if (!(_handle == IntPtr.Zero) && !(_handle == handle))
- {
- throw (new ArgumentException("The handle must match the handle that was specified the first time this function was called.", "handle"));
- }
- // ReSharper restore LocalizableElement
- _handle = handle;
- foreach (ShortcutMapping shortcutMapping in Map.Mappings)
- {
- KeyboardHook.RequestKeyNotification(handle, shortcutMapping.Key.KeyCode, shortcutMapping.Key.ModifierKeys, false);
- }
- }
-
- public static ShortcutCommand CommandFromHookKeyMessage(Message m)
- {
- KeyboardHook.HookKeyMsgData msgData = (SharedLibraryNG.KeyboardHook.HookKeyMsgData)Marshal.PtrToStructure(m.LParam, typeof(KeyboardHook.HookKeyMsgData));
- return Map.GetCommand(msgData.KeyCode, msgData.ModifierKeys);
- }
- #endregion
-
- #region Private Methods
- private static void LoadDefaultMap()
- {
- if (_defaultMap != null)
- {
- return ;
- }
- _defaultMap = new KeyboardShortcutMap();
- _defaultMap.AddFromConfigString(ShortcutCommand.PreviousTab, Convert.ToString(mRemoteNG.Settings.Default.Properties["KeysPreviousTab"].DefaultValue));
- _defaultMap.AddFromConfigString(ShortcutCommand.NextTab, Convert.ToString(mRemoteNG.Settings.Default.Properties["KeysNextTab"].DefaultValue));
- }
-
- private static void Load()
- {
- if (_mapLoaded)
- {
- return ;
- }
- _map = new KeyboardShortcutMap();
- _map.AddFromConfigString(ShortcutCommand.PreviousTab, Convert.ToString(mRemoteNG.Settings.Default.KeysPreviousTab));
- _map.AddFromConfigString(ShortcutCommand.NextTab, Convert.ToString(mRemoteNG.Settings.Default.KeysNextTab));
- _mapLoaded = true;
- }
-
- private static void Save()
- {
- if (_map == null)
- {
- return ;
- }
- mRemoteNG.Settings.Default.KeysPreviousTab = _map.GetConfigString(ShortcutCommand.PreviousTab);
- mRemoteNG.Settings.Default.KeysNextTab = _map.GetConfigString(ShortcutCommand.NextTab);
- }
-
- private static void CancelKeyNotifications()
- {
- if (_handle == IntPtr.Zero)
- {
- return ;
- }
- foreach (ShortcutMapping shortcutMapping in Map.Mappings)
- {
- KeyboardHook.CancelKeyNotification(_handle, shortcutMapping.Key.KeyCode, shortcutMapping.Key.ModifierKeys, false);
- }
- }
- #endregion
- }
-}
diff --git a/mRemoteV1/Config/KeyboardShortcuts/ShortcutCommandEnum.cs b/mRemoteV1/Config/KeyboardShortcuts/ShortcutCommandEnum.cs
deleted file mode 100644
index 4925d9190..000000000
--- a/mRemoteV1/Config/KeyboardShortcuts/ShortcutCommandEnum.cs
+++ /dev/null
@@ -1,13 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace mRemoteNG.Config.KeyboardShortcuts
-{
- public enum ShortcutCommand
- {
- None = 0,
- PreviousTab,
- NextTab
- }
-}
\ No newline at end of file
diff --git a/mRemoteV1/Config/KeyboardShortcuts/ShortcutKey.cs b/mRemoteV1/Config/KeyboardShortcuts/ShortcutKey.cs
deleted file mode 100644
index f50a558e8..000000000
--- a/mRemoteV1/Config/KeyboardShortcuts/ShortcutKey.cs
+++ /dev/null
@@ -1,135 +0,0 @@
-using mRemoteNG.App;
-using mRemoteNG.Messages;
-using SharedLibraryNG;
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Text;
-using System.Windows.Forms;
-
-namespace mRemoteNG.Config.KeyboardShortcuts
-{
- [ImmutableObject(true)]
- public class ShortcutKey : IEquatable
- {
- #region Public Properties
- private int _keyCode;
- public int KeyCode
- {
- get
- {
- return _keyCode;
- }
- }
-
- private KeyboardHook.ModifierKeys _modifierKeys;
- public KeyboardHook.ModifierKeys ModifierKeys
- {
- get
- {
- return _modifierKeys;
- }
- }
- #endregion
-
- #region Constructors
- public ShortcutKey(int keyCode, KeyboardHook.ModifierKeys modifierKeys)
- {
- _keyCode = keyCode;
- _modifierKeys = modifierKeys;
- }
-
- public ShortcutKey(Keys keysValue)
- {
- _keyCode = (int)(keysValue & Keys.KeyCode);
- if (!((keysValue & Keys.Shift) == 0))
- {
- _modifierKeys = _modifierKeys | KeyboardHook.ModifierKeys.Shift;
- }
- if (!((keysValue & Keys.Control) == 0))
- {
- _modifierKeys = _modifierKeys | KeyboardHook.ModifierKeys.Control;
- }
- if (!((keysValue & Keys.Alt) == 0))
- {
- _modifierKeys = _modifierKeys | KeyboardHook.ModifierKeys.Alt;
- }
- }
- #endregion
-
- #region Public Methods
- public string ToConfigString()
- {
- return string.Join("/", new string[] { KeyCode.ToString(), (Convert.ToInt32(ModifierKeys)).ToString() });
- }
-
- public static ShortcutKey FromConfigString(string shortcutKeyString)
- {
- string[] parts = shortcutKeyString.Split(new char[] { '/' }, 2);
- if (!(parts.Length == 2))
- {
- throw (new ArgumentException(string.Format("ShortcutKey.FromString({0}) failed. parts.Length != 2", shortcutKeyString), shortcutKeyString));
- }
- return new ShortcutKey(Convert.ToInt32(parts[0]), (SharedLibraryNG.KeyboardHook.ModifierKeys)Convert.ToInt32(parts[1]));
- }
-
- public override string ToString()
- {
- return HotkeyControl.KeysToString((System.Windows.Forms.Keys)this.KeyCode);
- }
-
- public bool Equals(ShortcutKey other)
- {
- try
- {
- if (KeyCode != other.KeyCode)
- return false;
- if (ModifierKeys != other.ModifierKeys)
- return false;
- }
- catch (NullReferenceException e)
- {
- Runtime.MessageCollector.AddExceptionMessage("Encountered Exception", e);
- return false;
- }
- return true;
- }
- #endregion
-
- #region Operators
- public static bool operator ==(ShortcutKey shortcutKey1, ShortcutKey shortcutKey2)
- {
- return shortcutKey1.Equals(shortcutKey2);
- }
-
- public static bool operator !=(ShortcutKey shortcutKey1, ShortcutKey shortcutKey2)
- {
- return !shortcutKey1.Equals(shortcutKey2);
- }
-
- // This is a narrowing conversion because (Keys Or Keys.Modifiers) cannot hold all possible values of KeyboardHook.ModifierKeys
- public static explicit operator Keys(ShortcutKey shortcutKey)
- {
- Keys keysValue = System.Windows.Forms.Keys.A;
- if (!((shortcutKey.ModifierKeys & KeyboardHook.ModifierKeys.Shift) == 0))
- {
- keysValue = (Keys)(keysValue | Keys.Shift);
- }
- if (!((shortcutKey.ModifierKeys & KeyboardHook.ModifierKeys.Control) == 0))
- {
- keysValue = (Keys)(keysValue | Keys.Control);
- }
- if (!((shortcutKey.ModifierKeys & KeyboardHook.ModifierKeys.Alt) == 0))
- {
- keysValue = (Keys)(keysValue | Keys.Alt);
- }
- return keysValue;
- }
-
- public static implicit operator ShortcutKey(Keys keys)
- {
- return new ShortcutKey(keys);
- }
- #endregion
- }
-}
\ No newline at end of file
diff --git a/mRemoteV1/Config/KeyboardShortcuts/ShortcutMapping.cs b/mRemoteV1/Config/KeyboardShortcuts/ShortcutMapping.cs
deleted file mode 100644
index 6713368aa..000000000
--- a/mRemoteV1/Config/KeyboardShortcuts/ShortcutMapping.cs
+++ /dev/null
@@ -1,45 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Text;
-
-namespace mRemoteNG.Config.KeyboardShortcuts
-{
- [ImmutableObject(true)]
- public class ShortcutMapping : IEquatable
- {
- private ShortcutCommand _command;
- private ShortcutKey _key;
-
- public ShortcutCommand Command
- {
- get { return _command; }
- }
-
- public ShortcutKey Key
- {
- get { return _key; }
- }
-
-
- public ShortcutMapping(ShortcutCommand command, ShortcutKey key)
- {
- _command = command;
- _key = key;
- }
-
-
- public bool Equals(ShortcutMapping other)
- {
- if (!(Command == other.Command))
- {
- return false;
- }
- if (!(Key == other.Key))
- {
- return false;
- }
- return true;
- }
- }
-}
\ No newline at end of file
diff --git a/mRemoteV1/UI/Forms/ExportForm.Designer.cs b/mRemoteV1/UI/Forms/ExportForm.Designer.cs
index 41c45a3b6..53f0dbbcf 100644
--- a/mRemoteV1/UI/Forms/ExportForm.Designer.cs
+++ b/mRemoteV1/UI/Forms/ExportForm.Designer.cs
@@ -10,275 +10,275 @@ namespace mRemoteNG.Forms
private void InitializeComponent()
{
- this.btnCancel = new System.Windows.Forms.Button();
- this.Load += new System.EventHandler(ExportForm_Load);
- this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
- this.btnOK = new System.Windows.Forms.Button();
- this.btnOK.Click += new System.EventHandler(this.btnOK_Click);
- this.lblUncheckProperties = new System.Windows.Forms.Label();
- this.chkUsername = new System.Windows.Forms.CheckBox();
- this.chkPassword = new System.Windows.Forms.CheckBox();
- this.chkDomain = new System.Windows.Forms.CheckBox();
- this.chkInheritance = new System.Windows.Forms.CheckBox();
- this.txtFileName = new System.Windows.Forms.TextBox();
- this.txtFileName.TextChanged += new System.EventHandler(this.txtFileName_TextChanged);
- this.btnBrowse = new System.Windows.Forms.Button();
- this.btnBrowse.Click += new System.EventHandler(this.btnBrowse_Click);
- this.grpProperties = new System.Windows.Forms.GroupBox();
- this.grpFile = new System.Windows.Forms.GroupBox();
- this.lblFileFormat = new System.Windows.Forms.Label();
- this.lblFileName = new System.Windows.Forms.Label();
- this.cboFileFormat = new System.Windows.Forms.ComboBox();
- this.grpItems = new System.Windows.Forms.GroupBox();
- this.lblSelectedConnection = new System.Windows.Forms.Label();
- this.lblSelectedFolder = new System.Windows.Forms.Label();
- this.rdoExportSelectedConnection = new System.Windows.Forms.RadioButton();
- this.rdoExportSelectedFolder = new System.Windows.Forms.RadioButton();
- this.rdoExportEverything = new System.Windows.Forms.RadioButton();
- this.grpProperties.SuspendLayout();
- this.grpFile.SuspendLayout();
- this.grpItems.SuspendLayout();
- this.SuspendLayout();
- //
- //btnCancel
- //
- this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
- this.btnCancel.Location = new System.Drawing.Point(447, 473);
- this.btnCancel.Name = "btnCancel";
- this.btnCancel.Size = new System.Drawing.Size(75, 23);
- this.btnCancel.TabIndex = 3;
- this.btnCancel.Text = "&Cancel";
- this.btnCancel.UseVisualStyleBackColor = true;
- //
- //btnOK
- //
- this.btnOK.Location = new System.Drawing.Point(366, 473);
- this.btnOK.Name = "btnOK";
- this.btnOK.Size = new System.Drawing.Size(75, 23);
- this.btnOK.TabIndex = 2;
- this.btnOK.Text = "&OK";
- this.btnOK.UseVisualStyleBackColor = true;
- //
- //lblUncheckProperties
- //
- this.lblUncheckProperties.AutoSize = true;
- this.lblUncheckProperties.Location = new System.Drawing.Point(12, 134);
- this.lblUncheckProperties.Name = "lblUncheckProperties";
- this.lblUncheckProperties.Size = new System.Drawing.Size(244, 13);
- this.lblUncheckProperties.TabIndex = 4;
- this.lblUncheckProperties.Text = "Uncheck the properties you want not to be saved!";
- //
- //chkUsername
- //
- this.chkUsername.AutoSize = true;
- this.chkUsername.Checked = true;
- this.chkUsername.CheckState = System.Windows.Forms.CheckState.Checked;
- this.chkUsername.Location = new System.Drawing.Point(15, 32);
- this.chkUsername.Name = "chkUsername";
- this.chkUsername.Size = new System.Drawing.Size(74, 17);
- this.chkUsername.TabIndex = 0;
- this.chkUsername.Text = "Username";
- this.chkUsername.UseVisualStyleBackColor = true;
- //
- //chkPassword
- //
- this.chkPassword.AutoSize = true;
- this.chkPassword.Checked = true;
- this.chkPassword.CheckState = System.Windows.Forms.CheckState.Checked;
- this.chkPassword.Location = new System.Drawing.Point(15, 55);
- this.chkPassword.Name = "chkPassword";
- this.chkPassword.Size = new System.Drawing.Size(72, 17);
- this.chkPassword.TabIndex = 1;
- this.chkPassword.Text = "Password";
- this.chkPassword.UseVisualStyleBackColor = true;
- //
- //chkDomain
- //
- this.chkDomain.AutoSize = true;
- this.chkDomain.Checked = true;
- this.chkDomain.CheckState = System.Windows.Forms.CheckState.Checked;
- this.chkDomain.Location = new System.Drawing.Point(15, 78);
- this.chkDomain.Name = "chkDomain";
- this.chkDomain.Size = new System.Drawing.Size(62, 17);
- this.chkDomain.TabIndex = 2;
- this.chkDomain.Text = "Domain";
- this.chkDomain.UseVisualStyleBackColor = true;
- //
- //chkInheritance
- //
- this.chkInheritance.AutoSize = true;
- this.chkInheritance.Checked = true;
- this.chkInheritance.CheckState = System.Windows.Forms.CheckState.Checked;
- this.chkInheritance.Location = new System.Drawing.Point(15, 101);
- this.chkInheritance.Name = "chkInheritance";
- this.chkInheritance.Size = new System.Drawing.Size(79, 17);
- this.chkInheritance.TabIndex = 3;
- this.chkInheritance.Text = "Inheritance";
- this.chkInheritance.UseVisualStyleBackColor = true;
- //
- //txtFileName
- //
- this.txtFileName.Location = new System.Drawing.Point(15, 48);
- this.txtFileName.Name = "txtFileName";
- this.txtFileName.Size = new System.Drawing.Size(396, 20);
- this.txtFileName.TabIndex = 1;
- //
- //btnBrowse
- //
- this.btnBrowse.Location = new System.Drawing.Point(417, 46);
- this.btnBrowse.Name = "btnBrowse";
- this.btnBrowse.Size = new System.Drawing.Size(75, 23);
- this.btnBrowse.TabIndex = 2;
- this.btnBrowse.Text = "&Browse";
- this.btnBrowse.UseVisualStyleBackColor = true;
- //
- //grpProperties
- //
- this.grpProperties.Controls.Add(this.lblUncheckProperties);
- this.grpProperties.Controls.Add(this.chkInheritance);
- this.grpProperties.Controls.Add(this.chkUsername);
- this.grpProperties.Controls.Add(this.chkDomain);
- this.grpProperties.Controls.Add(this.chkPassword);
- this.grpProperties.Location = new System.Drawing.Point(12, 304);
- this.grpProperties.Name = "grpProperties";
- this.grpProperties.Size = new System.Drawing.Size(510, 163);
- this.grpProperties.TabIndex = 1;
- this.grpProperties.TabStop = false;
- this.grpProperties.Text = "Export Properties";
- //
- //grpFile
- //
- this.grpFile.Controls.Add(this.lblFileFormat);
- this.grpFile.Controls.Add(this.lblFileName);
- this.grpFile.Controls.Add(this.cboFileFormat);
- this.grpFile.Controls.Add(this.txtFileName);
- this.grpFile.Controls.Add(this.btnBrowse);
- this.grpFile.Location = new System.Drawing.Point(12, 12);
- this.grpFile.Name = "grpFile";
- this.grpFile.Size = new System.Drawing.Size(510, 140);
- this.grpFile.TabIndex = 0;
- this.grpFile.TabStop = false;
- this.grpFile.Text = "Export File";
- //
- //lblFileFormat
- //
- this.lblFileFormat.AutoSize = true;
- this.lblFileFormat.Location = new System.Drawing.Point(12, 84);
- this.lblFileFormat.Name = "lblFileFormat";
- this.lblFileFormat.Size = new System.Drawing.Size(61, 13);
- this.lblFileFormat.TabIndex = 3;
- this.lblFileFormat.Text = "File &Format:";
- //
- //lblFileName
- //
- this.lblFileName.AutoSize = true;
- this.lblFileName.Location = new System.Drawing.Point(12, 32);
- this.lblFileName.Name = "lblFileName";
- this.lblFileName.Size = new System.Drawing.Size(52, 13);
- this.lblFileName.TabIndex = 0;
- this.lblFileName.Text = "Filename:";
- //
- //cboFileFormat
- //
- this.cboFileFormat.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.cboFileFormat.FormattingEnabled = true;
- this.cboFileFormat.Location = new System.Drawing.Point(15, 100);
- this.cboFileFormat.Name = "cboFileFormat";
- this.cboFileFormat.Size = new System.Drawing.Size(294, 21);
- this.cboFileFormat.TabIndex = 4;
- //
- //grpItems
- //
- this.grpItems.Controls.Add(this.lblSelectedConnection);
- this.grpItems.Controls.Add(this.lblSelectedFolder);
- this.grpItems.Controls.Add(this.rdoExportSelectedConnection);
- this.grpItems.Controls.Add(this.rdoExportSelectedFolder);
- this.grpItems.Controls.Add(this.rdoExportEverything);
- this.grpItems.Location = new System.Drawing.Point(12, 158);
- this.grpItems.Name = "grpItems";
- this.grpItems.Size = new System.Drawing.Size(510, 140);
- this.grpItems.TabIndex = 4;
- this.grpItems.TabStop = false;
- this.grpItems.Text = "Export Items";
- //
- //lblSelectedConnection
- //
- this.lblSelectedConnection.AutoSize = true;
- this.lblSelectedConnection.Location = new System.Drawing.Point(48, 111);
- this.lblSelectedConnection.Name = "lblSelectedConnection";
- this.lblSelectedConnection.Size = new System.Drawing.Size(92, 13);
- this.lblSelectedConnection.TabIndex = 4;
- this.lblSelectedConnection.Text = "Connection Name";
- //
- //lblSelectedFolder
- //
- this.lblSelectedFolder.AutoSize = true;
- this.lblSelectedFolder.Location = new System.Drawing.Point(48, 75);
- this.lblSelectedFolder.Name = "lblSelectedFolder";
- this.lblSelectedFolder.Size = new System.Drawing.Size(67, 13);
- this.lblSelectedFolder.TabIndex = 3;
- this.lblSelectedFolder.Text = "Folder Name";
- //
- //rdoExportSelectedConnection
- //
- this.rdoExportSelectedConnection.AutoSize = true;
- this.rdoExportSelectedConnection.Location = new System.Drawing.Point(15, 91);
- this.rdoExportSelectedConnection.Name = "rdoExportSelectedConnection";
- this.rdoExportSelectedConnection.Size = new System.Drawing.Size(215, 17);
- this.rdoExportSelectedConnection.TabIndex = 2;
- this.rdoExportSelectedConnection.TabStop = true;
- this.rdoExportSelectedConnection.Text = "Export the currently selected connection";
- this.rdoExportSelectedConnection.UseVisualStyleBackColor = true;
- //
- //rdoExportSelectedFolder
- //
- this.rdoExportSelectedFolder.AutoSize = true;
- this.rdoExportSelectedFolder.Location = new System.Drawing.Point(15, 55);
- this.rdoExportSelectedFolder.Name = "rdoExportSelectedFolder";
- this.rdoExportSelectedFolder.Size = new System.Drawing.Size(188, 17);
- this.rdoExportSelectedFolder.TabIndex = 1;
- this.rdoExportSelectedFolder.TabStop = true;
- this.rdoExportSelectedFolder.Text = "Export the currently selected folder";
- this.rdoExportSelectedFolder.UseVisualStyleBackColor = true;
- //
- //rdoExportEverything
- //
- this.rdoExportEverything.AutoSize = true;
- this.rdoExportEverything.Checked = true;
- this.rdoExportEverything.Location = new System.Drawing.Point(15, 32);
- this.rdoExportEverything.Name = "rdoExportEverything";
- this.rdoExportEverything.Size = new System.Drawing.Size(107, 17);
- this.rdoExportEverything.TabIndex = 0;
- this.rdoExportEverything.TabStop = true;
- this.rdoExportEverything.Text = "Export everything";
- this.rdoExportEverything.UseVisualStyleBackColor = true;
- //
- //ExportForm
- //
- this.AcceptButton = this.btnOK;
- this.CancelButton = this.btnCancel;
- this.ClientSize = new System.Drawing.Size(534, 508);
- this.Controls.Add(this.grpItems);
- this.Controls.Add(this.grpFile);
- this.Controls.Add(this.grpProperties);
- this.Controls.Add(this.btnCancel);
- this.Controls.Add(this.btnOK);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
- this.Icon = Resources.Connections_SaveAs_Icon;
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "ExportForm";
- this.ShowInTaskbar = false;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
- this.Text = "Export Connections";
- this.grpProperties.ResumeLayout(false);
- this.grpProperties.PerformLayout();
- this.grpFile.ResumeLayout(false);
- this.grpFile.PerformLayout();
- this.grpItems.ResumeLayout(false);
- this.grpItems.PerformLayout();
- this.ResumeLayout(false);
-
+ this.btnCancel = new System.Windows.Forms.Button();
+ this.btnOK = new System.Windows.Forms.Button();
+ this.lblUncheckProperties = new System.Windows.Forms.Label();
+ this.chkUsername = new System.Windows.Forms.CheckBox();
+ this.chkPassword = new System.Windows.Forms.CheckBox();
+ this.chkDomain = new System.Windows.Forms.CheckBox();
+ this.chkInheritance = new System.Windows.Forms.CheckBox();
+ this.txtFileName = new System.Windows.Forms.TextBox();
+ this.btnBrowse = new System.Windows.Forms.Button();
+ this.grpProperties = new System.Windows.Forms.GroupBox();
+ this.grpFile = new System.Windows.Forms.GroupBox();
+ this.lblFileFormat = new System.Windows.Forms.Label();
+ this.lblFileName = new System.Windows.Forms.Label();
+ this.cboFileFormat = new System.Windows.Forms.ComboBox();
+ this.grpItems = new System.Windows.Forms.GroupBox();
+ this.lblSelectedConnection = new System.Windows.Forms.Label();
+ this.lblSelectedFolder = new System.Windows.Forms.Label();
+ this.rdoExportSelectedConnection = new System.Windows.Forms.RadioButton();
+ this.rdoExportSelectedFolder = new System.Windows.Forms.RadioButton();
+ this.rdoExportEverything = new System.Windows.Forms.RadioButton();
+ this.grpProperties.SuspendLayout();
+ this.grpFile.SuspendLayout();
+ this.grpItems.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // btnCancel
+ //
+ this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+ this.btnCancel.Location = new System.Drawing.Point(447, 473);
+ this.btnCancel.Name = "btnCancel";
+ this.btnCancel.Size = new System.Drawing.Size(75, 23);
+ this.btnCancel.TabIndex = 3;
+ this.btnCancel.Text = "&Cancel";
+ this.btnCancel.UseVisualStyleBackColor = true;
+ this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
+ //
+ // btnOK
+ //
+ this.btnOK.Location = new System.Drawing.Point(366, 473);
+ this.btnOK.Name = "btnOK";
+ this.btnOK.Size = new System.Drawing.Size(75, 23);
+ this.btnOK.TabIndex = 2;
+ this.btnOK.Text = "&OK";
+ this.btnOK.UseVisualStyleBackColor = true;
+ this.btnOK.Click += new System.EventHandler(this.btnOK_Click);
+ //
+ // lblUncheckProperties
+ //
+ this.lblUncheckProperties.AutoSize = true;
+ this.lblUncheckProperties.Location = new System.Drawing.Point(12, 134);
+ this.lblUncheckProperties.Name = "lblUncheckProperties";
+ this.lblUncheckProperties.Size = new System.Drawing.Size(244, 13);
+ this.lblUncheckProperties.TabIndex = 4;
+ this.lblUncheckProperties.Text = "Uncheck the properties you want not to be saved!";
+ //
+ // chkUsername
+ //
+ this.chkUsername.AutoSize = true;
+ this.chkUsername.Checked = true;
+ this.chkUsername.CheckState = System.Windows.Forms.CheckState.Checked;
+ this.chkUsername.Location = new System.Drawing.Point(15, 32);
+ this.chkUsername.Name = "chkUsername";
+ this.chkUsername.Size = new System.Drawing.Size(74, 17);
+ this.chkUsername.TabIndex = 0;
+ this.chkUsername.Text = "Username";
+ this.chkUsername.UseVisualStyleBackColor = true;
+ //
+ // chkPassword
+ //
+ this.chkPassword.AutoSize = true;
+ this.chkPassword.Checked = true;
+ this.chkPassword.CheckState = System.Windows.Forms.CheckState.Checked;
+ this.chkPassword.Location = new System.Drawing.Point(15, 55);
+ this.chkPassword.Name = "chkPassword";
+ this.chkPassword.Size = new System.Drawing.Size(72, 17);
+ this.chkPassword.TabIndex = 1;
+ this.chkPassword.Text = "Password";
+ this.chkPassword.UseVisualStyleBackColor = true;
+ //
+ // chkDomain
+ //
+ this.chkDomain.AutoSize = true;
+ this.chkDomain.Checked = true;
+ this.chkDomain.CheckState = System.Windows.Forms.CheckState.Checked;
+ this.chkDomain.Location = new System.Drawing.Point(15, 78);
+ this.chkDomain.Name = "chkDomain";
+ this.chkDomain.Size = new System.Drawing.Size(62, 17);
+ this.chkDomain.TabIndex = 2;
+ this.chkDomain.Text = "Domain";
+ this.chkDomain.UseVisualStyleBackColor = true;
+ //
+ // chkInheritance
+ //
+ this.chkInheritance.AutoSize = true;
+ this.chkInheritance.Checked = true;
+ this.chkInheritance.CheckState = System.Windows.Forms.CheckState.Checked;
+ this.chkInheritance.Location = new System.Drawing.Point(15, 101);
+ this.chkInheritance.Name = "chkInheritance";
+ this.chkInheritance.Size = new System.Drawing.Size(79, 17);
+ this.chkInheritance.TabIndex = 3;
+ this.chkInheritance.Text = "Inheritance";
+ this.chkInheritance.UseVisualStyleBackColor = true;
+ //
+ // txtFileName
+ //
+ this.txtFileName.Location = new System.Drawing.Point(15, 48);
+ this.txtFileName.Name = "txtFileName";
+ this.txtFileName.Size = new System.Drawing.Size(396, 20);
+ this.txtFileName.TabIndex = 1;
+ this.txtFileName.TextChanged += new System.EventHandler(this.txtFileName_TextChanged);
+ //
+ // btnBrowse
+ //
+ this.btnBrowse.Location = new System.Drawing.Point(417, 46);
+ this.btnBrowse.Name = "btnBrowse";
+ this.btnBrowse.Size = new System.Drawing.Size(75, 23);
+ this.btnBrowse.TabIndex = 2;
+ this.btnBrowse.Text = "&Browse";
+ this.btnBrowse.UseVisualStyleBackColor = true;
+ this.btnBrowse.Click += new System.EventHandler(this.btnBrowse_Click);
+ //
+ // grpProperties
+ //
+ this.grpProperties.Controls.Add(this.lblUncheckProperties);
+ this.grpProperties.Controls.Add(this.chkInheritance);
+ this.grpProperties.Controls.Add(this.chkUsername);
+ this.grpProperties.Controls.Add(this.chkDomain);
+ this.grpProperties.Controls.Add(this.chkPassword);
+ this.grpProperties.Location = new System.Drawing.Point(12, 304);
+ this.grpProperties.Name = "grpProperties";
+ this.grpProperties.Size = new System.Drawing.Size(510, 163);
+ this.grpProperties.TabIndex = 1;
+ this.grpProperties.TabStop = false;
+ this.grpProperties.Text = "Export Properties";
+ //
+ // grpFile
+ //
+ this.grpFile.Controls.Add(this.lblFileFormat);
+ this.grpFile.Controls.Add(this.lblFileName);
+ this.grpFile.Controls.Add(this.cboFileFormat);
+ this.grpFile.Controls.Add(this.txtFileName);
+ this.grpFile.Controls.Add(this.btnBrowse);
+ this.grpFile.Location = new System.Drawing.Point(12, 12);
+ this.grpFile.Name = "grpFile";
+ this.grpFile.Size = new System.Drawing.Size(510, 140);
+ this.grpFile.TabIndex = 0;
+ this.grpFile.TabStop = false;
+ this.grpFile.Text = "Export File";
+ //
+ // lblFileFormat
+ //
+ this.lblFileFormat.AutoSize = true;
+ this.lblFileFormat.Location = new System.Drawing.Point(12, 80);
+ this.lblFileFormat.Name = "lblFileFormat";
+ this.lblFileFormat.Size = new System.Drawing.Size(61, 13);
+ this.lblFileFormat.TabIndex = 3;
+ this.lblFileFormat.Text = "File &Format:";
+ //
+ // lblFileName
+ //
+ this.lblFileName.AutoSize = true;
+ this.lblFileName.Location = new System.Drawing.Point(12, 28);
+ this.lblFileName.Name = "lblFileName";
+ this.lblFileName.Size = new System.Drawing.Size(52, 13);
+ this.lblFileName.TabIndex = 0;
+ this.lblFileName.Text = "Filename:";
+ //
+ // cboFileFormat
+ //
+ this.cboFileFormat.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+ this.cboFileFormat.FormattingEnabled = true;
+ this.cboFileFormat.Location = new System.Drawing.Point(15, 100);
+ this.cboFileFormat.Name = "cboFileFormat";
+ this.cboFileFormat.Size = new System.Drawing.Size(294, 21);
+ this.cboFileFormat.TabIndex = 4;
+ //
+ // grpItems
+ //
+ this.grpItems.Controls.Add(this.lblSelectedConnection);
+ this.grpItems.Controls.Add(this.lblSelectedFolder);
+ this.grpItems.Controls.Add(this.rdoExportSelectedConnection);
+ this.grpItems.Controls.Add(this.rdoExportSelectedFolder);
+ this.grpItems.Controls.Add(this.rdoExportEverything);
+ this.grpItems.Location = new System.Drawing.Point(12, 158);
+ this.grpItems.Name = "grpItems";
+ this.grpItems.Size = new System.Drawing.Size(510, 140);
+ this.grpItems.TabIndex = 4;
+ this.grpItems.TabStop = false;
+ this.grpItems.Text = "Export Items";
+ //
+ // lblSelectedConnection
+ //
+ this.lblSelectedConnection.AutoSize = true;
+ this.lblSelectedConnection.Location = new System.Drawing.Point(48, 111);
+ this.lblSelectedConnection.Name = "lblSelectedConnection";
+ this.lblSelectedConnection.Size = new System.Drawing.Size(92, 13);
+ this.lblSelectedConnection.TabIndex = 4;
+ this.lblSelectedConnection.Text = "Connection Name";
+ //
+ // lblSelectedFolder
+ //
+ this.lblSelectedFolder.AutoSize = true;
+ this.lblSelectedFolder.Location = new System.Drawing.Point(48, 75);
+ this.lblSelectedFolder.Name = "lblSelectedFolder";
+ this.lblSelectedFolder.Size = new System.Drawing.Size(67, 13);
+ this.lblSelectedFolder.TabIndex = 3;
+ this.lblSelectedFolder.Text = "Folder Name";
+ //
+ // rdoExportSelectedConnection
+ //
+ this.rdoExportSelectedConnection.AutoSize = true;
+ this.rdoExportSelectedConnection.Location = new System.Drawing.Point(15, 91);
+ this.rdoExportSelectedConnection.Name = "rdoExportSelectedConnection";
+ this.rdoExportSelectedConnection.Size = new System.Drawing.Size(215, 17);
+ this.rdoExportSelectedConnection.TabIndex = 2;
+ this.rdoExportSelectedConnection.TabStop = true;
+ this.rdoExportSelectedConnection.Text = "Export the currently selected connection";
+ this.rdoExportSelectedConnection.UseVisualStyleBackColor = true;
+ //
+ // rdoExportSelectedFolder
+ //
+ this.rdoExportSelectedFolder.AutoSize = true;
+ this.rdoExportSelectedFolder.Location = new System.Drawing.Point(15, 55);
+ this.rdoExportSelectedFolder.Name = "rdoExportSelectedFolder";
+ this.rdoExportSelectedFolder.Size = new System.Drawing.Size(188, 17);
+ this.rdoExportSelectedFolder.TabIndex = 1;
+ this.rdoExportSelectedFolder.TabStop = true;
+ this.rdoExportSelectedFolder.Text = "Export the currently selected folder";
+ this.rdoExportSelectedFolder.UseVisualStyleBackColor = true;
+ //
+ // rdoExportEverything
+ //
+ this.rdoExportEverything.AutoSize = true;
+ this.rdoExportEverything.Checked = true;
+ this.rdoExportEverything.Location = new System.Drawing.Point(15, 32);
+ this.rdoExportEverything.Name = "rdoExportEverything";
+ this.rdoExportEverything.Size = new System.Drawing.Size(107, 17);
+ this.rdoExportEverything.TabIndex = 0;
+ this.rdoExportEverything.TabStop = true;
+ this.rdoExportEverything.Text = "Export everything";
+ this.rdoExportEverything.UseVisualStyleBackColor = true;
+ //
+ // ExportForm
+ //
+ this.AcceptButton = this.btnOK;
+ this.CancelButton = this.btnCancel;
+ this.ClientSize = new System.Drawing.Size(534, 508);
+ this.Controls.Add(this.grpItems);
+ this.Controls.Add(this.grpFile);
+ this.Controls.Add(this.grpProperties);
+ this.Controls.Add(this.btnCancel);
+ this.Controls.Add(this.btnOK);
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+ this.Icon = global::mRemoteNG.Resources.Connections_SaveAs_Icon;
+ this.MaximizeBox = false;
+ this.MinimizeBox = false;
+ this.Name = "ExportForm";
+ this.ShowInTaskbar = false;
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+ this.Text = "Export Connections";
+ this.Load += new System.EventHandler(this.ExportForm_Load);
+ this.grpProperties.ResumeLayout(false);
+ this.grpProperties.PerformLayout();
+ this.grpFile.ResumeLayout(false);
+ this.grpFile.PerformLayout();
+ this.grpItems.ResumeLayout(false);
+ this.grpItems.PerformLayout();
+ this.ResumeLayout(false);
+
}
private System.Windows.Forms.Button btnCancel;
private System.Windows.Forms.Button btnOK;
diff --git a/mRemoteV1/UI/Forms/ExportForm.resx b/mRemoteV1/UI/Forms/ExportForm.resx
index 19dc0dd8b..d58980a38 100644
--- a/mRemoteV1/UI/Forms/ExportForm.resx
+++ b/mRemoteV1/UI/Forms/ExportForm.resx
@@ -112,9 +112,9 @@
2.0
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
\ No newline at end of file
diff --git a/mRemoteV1/UI/Forms/OptionsForm.cs b/mRemoteV1/UI/Forms/OptionsForm.cs
index 3ea417857..87be3b170 100644
--- a/mRemoteV1/UI/Forms/OptionsForm.cs
+++ b/mRemoteV1/UI/Forms/OptionsForm.cs
@@ -2,12 +2,11 @@ using System;
using System.Collections.Generic;
using System.Windows.Forms;
using mRemoteNG.App;
-using mRemoteNG.My;
using mRemoteNG.UI.Forms.OptionsPages;
namespace mRemoteNG.UI.Forms
{
- public partial class OptionsForm
+ public partial class OptionsForm
{
private Dictionary _pages;
private ImageList _pageIconImageList;
@@ -37,7 +36,6 @@ namespace mRemoteNG.UI.Forms
_pages.Add(new SqlServerPage(), new PageInfo());
_pages.Add(new UpdatesPage(), new PageInfo());
_pages.Add(new ThemePage(), new PageInfo());
- _pages.Add(new KeyboardPage(), new PageInfo());
_pages.Add(new AdvancedPage(), new PageInfo());
}
diff --git a/mRemoteV1/UI/Forms/OptionsPages/KeyboardPage.Designer.cs b/mRemoteV1/UI/Forms/OptionsPages/KeyboardPage.Designer.cs
deleted file mode 100644
index 2b50f4ce3..000000000
--- a/mRemoteV1/UI/Forms/OptionsPages/KeyboardPage.Designer.cs
+++ /dev/null
@@ -1,204 +0,0 @@
-
-
-namespace mRemoteNG.UI.Forms.OptionsPages
-{
- [global::Microsoft.VisualBasic.CompilerServices.DesignerGenerated()]
- public partial class KeyboardPage : OptionsPage
- {
-
- //UserControl overrides dispose to clean up the component list.
- [System.Diagnostics.DebuggerNonUserCode()]protected override void Dispose(bool disposing)
- {
- try
- {
- if (disposing && components != null)
- {
- components.Dispose();
- }
- }
- finally
- {
- base.Dispose(disposing);
- }
- }
-
- //Required by the Windows Form Designer
- private System.ComponentModel.Container components = null;
-
- //NOTE: The following procedure is required by the Windows Form Designer
- //It can be modified using the Windows Form Designer.
- //Do not modify it using the code editor.
- [System.Diagnostics.DebuggerStepThrough()]private void InitializeComponent()
- {
- System.Windows.Forms.GroupBox LineGroupBox = default(System.Windows.Forms.GroupBox);
- mRemoteNG.Controls.Alignment Alignment1 = new mRemoteNG.Controls.Alignment();
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(KeyboardPage));
- this.btnDeleteKeyboardShortcut = new System.Windows.Forms.Button();
- this.btnDeleteKeyboardShortcut.Click += new System.EventHandler(this.btnDeleteKeyboardShortcut_Click);
- this.btnNewKeyboardShortcut = new System.Windows.Forms.Button();
- this.btnNewKeyboardShortcut.Click += new System.EventHandler(this.btnNewKeyboardShortcut_Click);
- this.grpModifyKeyboardShortcut = new System.Windows.Forms.GroupBox();
- this.hotModifyKeyboardShortcut = new SharedLibraryNG.HotkeyControl();
- this.hotModifyKeyboardShortcut.TextChanged += new System.EventHandler(this.hotModifyKeyboardShortcut_TextChanged);
- this.btnResetAllKeyboardShortcuts = new System.Windows.Forms.Button();
- this.btnResetAllKeyboardShortcuts.Click += new System.EventHandler(this.btnResetAllKeyboardShortcuts_Click);
- this.btnResetKeyboardShortcuts = new System.Windows.Forms.Button();
- this.btnResetKeyboardShortcuts.Click += new System.EventHandler(this.btnResetKeyboardShortcuts_Click);
- this.lblKeyboardCommand = new System.Windows.Forms.Label();
- this.lstKeyboardShortcuts = new System.Windows.Forms.ListBox();
- this.lstKeyboardShortcuts.SelectedIndexChanged += new System.EventHandler(this.lstKeyboardShortcuts_SelectedIndexChanged);
- this.lblKeyboardShortcuts = new System.Windows.Forms.Label();
- this.lvKeyboardCommands = new mRemoteNG.Controls.ListView();
- this.lvKeyboardCommands.SelectedIndexChanged += new System.EventHandler(this.lvKeyboardCommands_SelectedIndexChanged);
- LineGroupBox = new System.Windows.Forms.GroupBox();
- this.grpModifyKeyboardShortcut.SuspendLayout();
- this.SuspendLayout();
- //
- //LineGroupBox
- //
- LineGroupBox.Location = new System.Drawing.Point(212, 20);
- LineGroupBox.Name = "LineGroupBox";
- LineGroupBox.Size = new System.Drawing.Size(398, 3);
- LineGroupBox.TabIndex = 19;
- LineGroupBox.TabStop = false;
- //
- //btnDeleteKeyboardShortcut
- //
- this.btnDeleteKeyboardShortcut.Location = new System.Drawing.Point(293, 151);
- this.btnDeleteKeyboardShortcut.Name = "btnDeleteKeyboardShortcut";
- this.btnDeleteKeyboardShortcut.Size = new System.Drawing.Size(75, 23);
- this.btnDeleteKeyboardShortcut.TabIndex = 15;
- this.btnDeleteKeyboardShortcut.Text = "&Delete";
- this.btnDeleteKeyboardShortcut.UseVisualStyleBackColor = true;
- //
- //btnNewKeyboardShortcut
- //
- this.btnNewKeyboardShortcut.Location = new System.Drawing.Point(212, 151);
- this.btnNewKeyboardShortcut.Name = "btnNewKeyboardShortcut";
- this.btnNewKeyboardShortcut.Size = new System.Drawing.Size(75, 23);
- this.btnNewKeyboardShortcut.TabIndex = 14;
- this.btnNewKeyboardShortcut.Text = "&New";
- this.btnNewKeyboardShortcut.UseVisualStyleBackColor = true;
- //
- //grpModifyKeyboardShortcut
- //
- this.grpModifyKeyboardShortcut.Controls.Add(this.hotModifyKeyboardShortcut);
- this.grpModifyKeyboardShortcut.Location = new System.Drawing.Point(212, 180);
- this.grpModifyKeyboardShortcut.Name = "grpModifyKeyboardShortcut";
- this.grpModifyKeyboardShortcut.Size = new System.Drawing.Size(398, 103);
- this.grpModifyKeyboardShortcut.TabIndex = 17;
- this.grpModifyKeyboardShortcut.TabStop = false;
- this.grpModifyKeyboardShortcut.Text = "Modify Shortcut";
- //
- //hotModifyKeyboardShortcut
- //
- this.hotModifyKeyboardShortcut.HotkeyModifiers = System.Windows.Forms.Keys.None;
- this.hotModifyKeyboardShortcut.KeyCode = System.Windows.Forms.Keys.None;
- this.hotModifyKeyboardShortcut.Location = new System.Drawing.Point(27, 41);
- this.hotModifyKeyboardShortcut.Name = "hotModifyKeyboardShortcut";
- this.hotModifyKeyboardShortcut.Size = new System.Drawing.Size(344, 20);
- this.hotModifyKeyboardShortcut.TabIndex = 0;
- this.hotModifyKeyboardShortcut.Text = "None";
- //
- //btnResetAllKeyboardShortcuts
- //
- this.btnResetAllKeyboardShortcuts.Location = new System.Drawing.Point(3, 466);
- this.btnResetAllKeyboardShortcuts.Name = "btnResetAllKeyboardShortcuts";
- this.btnResetAllKeyboardShortcuts.Size = new System.Drawing.Size(120, 23);
- this.btnResetAllKeyboardShortcuts.TabIndex = 18;
- this.btnResetAllKeyboardShortcuts.Text = "Reset &All to Default";
- this.btnResetAllKeyboardShortcuts.UseVisualStyleBackColor = true;
- //
- //btnResetKeyboardShortcuts
- //
- this.btnResetKeyboardShortcuts.Location = new System.Drawing.Point(490, 151);
- this.btnResetKeyboardShortcuts.Name = "btnResetKeyboardShortcuts";
- this.btnResetKeyboardShortcuts.Size = new System.Drawing.Size(120, 23);
- this.btnResetKeyboardShortcuts.TabIndex = 16;
- this.btnResetKeyboardShortcuts.Text = "&Reset to Default";
- this.btnResetKeyboardShortcuts.UseVisualStyleBackColor = true;
- //
- //lblKeyboardCommand
- //
- this.lblKeyboardCommand.AutoSize = true;
- this.lblKeyboardCommand.Font = new System.Drawing.Font("Microsoft Sans Serif", (float) (10.0F), System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, System.Convert.ToByte(0));
- this.lblKeyboardCommand.Location = new System.Drawing.Point(209, 0);
- this.lblKeyboardCommand.Name = "lblKeyboardCommand";
- this.lblKeyboardCommand.Size = new System.Drawing.Size(71, 17);
- this.lblKeyboardCommand.TabIndex = 11;
- this.lblKeyboardCommand.Text = "Command";
- //
- //lstKeyboardShortcuts
- //
- this.lstKeyboardShortcuts.FormattingEnabled = true;
- this.lstKeyboardShortcuts.Location = new System.Drawing.Point(212, 50);
- this.lstKeyboardShortcuts.Name = "lstKeyboardShortcuts";
- this.lstKeyboardShortcuts.Size = new System.Drawing.Size(398, 95);
- this.lstKeyboardShortcuts.TabIndex = 13;
- //
- //lblKeyboardShortcuts
- //
- this.lblKeyboardShortcuts.AutoSize = true;
- this.lblKeyboardShortcuts.Location = new System.Drawing.Point(209, 34);
- this.lblKeyboardShortcuts.Name = "lblKeyboardShortcuts";
- this.lblKeyboardShortcuts.Size = new System.Drawing.Size(100, 13);
- this.lblKeyboardShortcuts.TabIndex = 12;
- this.lblKeyboardShortcuts.Text = "Keyboard Shortcuts";
- //
- //lvKeyboardCommands
- //
- this.lvKeyboardCommands.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
- this.lvKeyboardCommands.HideSelection = false;
- this.lvKeyboardCommands.InactiveHighlightBackColor = System.Drawing.SystemColors.Highlight;
- this.lvKeyboardCommands.InactiveHighlightBorderColor = System.Drawing.SystemColors.HotTrack;
- this.lvKeyboardCommands.InactiveHighlightForeColor = System.Drawing.SystemColors.HighlightText;
- Alignment1.Horizontal = mRemoteNG.Controls.HorizontalAlignment.Left;
- Alignment1.Vertical = mRemoteNG.Controls.VerticalAlignment.Middle;
- this.lvKeyboardCommands.LabelAlignment = Alignment1;
- this.lvKeyboardCommands.LabelWrap = false;
- this.lvKeyboardCommands.Location = new System.Drawing.Point(3, 0);
- this.lvKeyboardCommands.MultiSelect = false;
- this.lvKeyboardCommands.Name = "lvKeyboardCommands";
- this.lvKeyboardCommands.OwnerDraw = true;
- this.lvKeyboardCommands.Size = new System.Drawing.Size(200, 460);
- this.lvKeyboardCommands.TabIndex = 10;
- this.lvKeyboardCommands.TileSize = new System.Drawing.Size(196, 20);
- this.lvKeyboardCommands.UseCompatibleStateImageBehavior = false;
- this.lvKeyboardCommands.View = System.Windows.Forms.View.Tile;
- //
- //KeyboardPage
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF((float) (6.0F), (float) (13.0F));
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.Controls.Add(LineGroupBox);
- this.Controls.Add(this.btnDeleteKeyboardShortcut);
- this.Controls.Add(this.btnNewKeyboardShortcut);
- this.Controls.Add(this.grpModifyKeyboardShortcut);
- this.Controls.Add(this.btnResetAllKeyboardShortcuts);
- this.Controls.Add(this.btnResetKeyboardShortcuts);
- this.Controls.Add(this.lblKeyboardCommand);
- this.Controls.Add(this.lstKeyboardShortcuts);
- this.Controls.Add(this.lblKeyboardShortcuts);
- this.Controls.Add(this.lvKeyboardCommands);
- this.Name = "KeyboardPage";
- this.PageIcon = (System.Drawing.Icon) (resources.GetObject("$this.PageIcon"));
- this.Size = new System.Drawing.Size(610, 489);
- this.grpModifyKeyboardShortcut.ResumeLayout(false);
- this.grpModifyKeyboardShortcut.PerformLayout();
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
- internal System.Windows.Forms.Button btnDeleteKeyboardShortcut;
- internal System.Windows.Forms.Button btnNewKeyboardShortcut;
- internal System.Windows.Forms.GroupBox grpModifyKeyboardShortcut;
- internal SharedLibraryNG.HotkeyControl hotModifyKeyboardShortcut;
- internal System.Windows.Forms.Button btnResetAllKeyboardShortcuts;
- internal System.Windows.Forms.Button btnResetKeyboardShortcuts;
- internal System.Windows.Forms.Label lblKeyboardCommand;
- internal System.Windows.Forms.ListBox lstKeyboardShortcuts;
- internal System.Windows.Forms.Label lblKeyboardShortcuts;
- internal mRemoteNG.Controls.ListView lvKeyboardCommands;
-
- }
-}
diff --git a/mRemoteV1/UI/Forms/OptionsPages/KeyboardPage.cs b/mRemoteV1/UI/Forms/OptionsPages/KeyboardPage.cs
deleted file mode 100644
index c96477961..000000000
--- a/mRemoteV1/UI/Forms/OptionsPages/KeyboardPage.cs
+++ /dev/null
@@ -1,251 +0,0 @@
-using System;
-using System.Windows.Forms;
-using mRemoteNG.Config.KeyboardShortcuts;
-using mRemoteNG.My;
-
-namespace mRemoteNG.UI.Forms.OptionsPages
-{
- public partial class KeyboardPage
- {
- private bool _ignoreKeyboardShortcutTextChanged;
- private KeyboardShortcutMap _keyboardShortcutMap;
- private ListViewItem _nextTabListViewItem;
- private ListViewItem _previousTabListViewItem;
- private ListViewGroup _tabsListViewGroup;
-
-
- public KeyboardPage()
- {
- InitializeComponent();
- }
-
- public override string PageName
- {
- get { return Language.strOptionsTabKeyboard; }
- set { }
- }
-
- public override void ApplyLanguage()
- {
- base.ApplyLanguage();
-
- lblKeyboardShortcuts.Text = Language.strOptionsKeyboardLabelKeyboardShortcuts;
- btnNewKeyboardShortcut.Text = Language.strOptionsKeyboardButtonNew;
- btnDeleteKeyboardShortcut.Text = Language.strOptionsKeyboardButtonDelete;
- btnResetKeyboardShortcuts.Text = Language.strOptionsKeyboardButtonReset;
- grpModifyKeyboardShortcut.Text = Language.strOptionsKeyboardGroupModifyShortcut;
- btnResetAllKeyboardShortcuts.Text = Language.strOptionsKeyboardButtonResetAll;
- }
-
- public override void LoadSettings()
- {
- _tabsListViewGroup = new ListViewGroup(Language.strOptionsKeyboardCommandsGroupTabs);
- _previousTabListViewItem = new ListViewItem(Language.strOptionsKeyboardCommandsPreviousTab,
- _tabsListViewGroup);
- _nextTabListViewItem = new ListViewItem(Language.strOptionsKeyboardCommandsNextTab, _tabsListViewGroup);
-
- _keyboardShortcutMap = (KeyboardShortcutMap) KeyboardShortcuts.Map.Clone();
-
- lvKeyboardCommands.Groups.Add(_tabsListViewGroup);
- lvKeyboardCommands.Items.Add(_previousTabListViewItem);
- lvKeyboardCommands.Items.Add(_nextTabListViewItem);
- _previousTabListViewItem.Selected = true;
- }
-
- public override void SaveSettings()
- {
- base.SaveSettings();
-
- if (_keyboardShortcutMap != null)
- {
- KeyboardShortcuts.Map = _keyboardShortcutMap;
- }
- }
-
- #region Private Methods
-
- #region Event Handlers
-
- public void lvKeyboardCommands_SelectedIndexChanged(object sender, EventArgs e)
- {
- var isItemSelected = lvKeyboardCommands.SelectedItems.Count == 1;
- EnableKeyboardShortcutControls(isItemSelected);
-
- if (!isItemSelected)
- {
- return;
- }
-
- var selectedItem = lvKeyboardCommands.SelectedItems[0];
-
- lblKeyboardCommand.Text = selectedItem.Text;
- lstKeyboardShortcuts.Items.Clear();
-
- lstKeyboardShortcuts.Items.AddRange(_keyboardShortcutMap.GetShortcutKeys(GetSelectedShortcutCommand()));
-
- if (lstKeyboardShortcuts.Items.Count > 0)
- {
- lstKeyboardShortcuts.SelectedIndex = 0;
- }
- }
-
- public void lstKeyboardShortcuts_SelectedIndexChanged(object sender, EventArgs e)
- {
- var isItemSelected = lstKeyboardShortcuts.SelectedItems.Count == 1;
-
- btnDeleteKeyboardShortcut.Enabled = isItemSelected;
- grpModifyKeyboardShortcut.Enabled = isItemSelected;
- hotModifyKeyboardShortcut.Enabled = isItemSelected;
-
- if (!isItemSelected)
- {
- hotModifyKeyboardShortcut.Text = string.Empty;
- return;
- }
-
- var selectedItem = lstKeyboardShortcuts.SelectedItems[0];
- var shortcutKey = selectedItem as ShortcutKey;
- if (shortcutKey == null)
- {
- return;
- }
-
- //Keys keysValue = System.Windows.Forms.Keys.A;
- var keyCode = Keys.A;
- var modifiers = Keys.A;
-
- _ignoreKeyboardShortcutTextChanged = true;
- hotModifyKeyboardShortcut.KeyCode = keyCode;
- hotModifyKeyboardShortcut.HotkeyModifiers = modifiers;
- _ignoreKeyboardShortcutTextChanged = false;
- }
-
- public void btnNewKeyboardShortcut_Click(object sender, EventArgs e)
- {
- foreach (var item in lstKeyboardShortcuts.Items)
- {
- var shortcutKey = item as ShortcutKey;
- if (shortcutKey?.KeyCode == 0)
- {
- lstKeyboardShortcuts.SelectedItem = item;
- return;
- }
- }
-
- lstKeyboardShortcuts.SelectedIndex = lstKeyboardShortcuts.Items.Add(new ShortcutKey(Keys.None));
- hotModifyKeyboardShortcut.Focus();
- }
-
- public void btnDeleteKeyboardShortcut_Click(object sender, EventArgs e)
- {
- var selectedIndex = lstKeyboardShortcuts.SelectedIndex;
-
- var command = GetSelectedShortcutCommand();
- var key = lstKeyboardShortcuts.SelectedItem as ShortcutKey;
- if (command != ShortcutCommand.None & key != null)
- {
- _keyboardShortcutMap.Remove(GetSelectedShortcutCommand(), key);
- }
-
- lstKeyboardShortcuts.Items.Remove(lstKeyboardShortcuts.SelectedItem);
-
- if (selectedIndex >= lstKeyboardShortcuts.Items.Count)
- {
- selectedIndex = lstKeyboardShortcuts.Items.Count - 1;
- }
- lstKeyboardShortcuts.SelectedIndex = selectedIndex;
- }
-
- public void btnResetAllKeyboardShortcuts_Click(object sender, EventArgs e)
- {
- _keyboardShortcutMap = (KeyboardShortcutMap) KeyboardShortcuts.DefaultMap.Clone();
- lvKeyboardCommands_SelectedIndexChanged(this, new EventArgs());
- }
-
- public void btnResetKeyboardShortcuts_Click(object sender, EventArgs e)
- {
- var command = GetSelectedShortcutCommand();
- if (command == ShortcutCommand.None)
- {
- return;
- }
- _keyboardShortcutMap.SetShortcutKeys(command, KeyboardShortcuts.DefaultMap.GetShortcutKeys(command));
- lvKeyboardCommands_SelectedIndexChanged(this, new EventArgs());
- }
-
- public void hotModifyKeyboardShortcut_TextChanged(object sender, EventArgs e)
- {
- if (_ignoreKeyboardShortcutTextChanged ||
- lstKeyboardShortcuts.SelectedIndex < 0 |
- lstKeyboardShortcuts.SelectedIndex >= lstKeyboardShortcuts.Items.Count)
- {
- return;
- }
-
- var keysValue = Keys.A;
-
- var hadFocus = hotModifyKeyboardShortcut.ContainsFocus;
-
- var command = GetSelectedShortcutCommand();
- var newShortcutKey = new ShortcutKey(keysValue);
-
- if (!(command == ShortcutCommand.None))
- {
- var oldShortcutKey = lstKeyboardShortcuts.SelectedItem as ShortcutKey;
- if (oldShortcutKey != null)
- {
- _keyboardShortcutMap.Remove(command, oldShortcutKey);
- }
- _keyboardShortcutMap.Add(command, newShortcutKey);
- }
-
- lstKeyboardShortcuts.Items[lstKeyboardShortcuts.SelectedIndex] = newShortcutKey;
-
- if (hadFocus)
- {
- hotModifyKeyboardShortcut.Focus();
- hotModifyKeyboardShortcut.Select(hotModifyKeyboardShortcut.TextLength, 0);
- }
- }
-
- #endregion
-
- private ShortcutCommand GetSelectedShortcutCommand()
- {
- if (!(lvKeyboardCommands.SelectedItems.Count == 1))
- {
- return ShortcutCommand.None;
- }
-
- var selectedItem = lvKeyboardCommands.SelectedItems[0];
- if (selectedItem == _previousTabListViewItem)
- {
- return ShortcutCommand.PreviousTab;
- }
- if (selectedItem == _nextTabListViewItem)
- {
- return ShortcutCommand.NextTab;
- }
- return ShortcutCommand.None;
- }
-
- private void EnableKeyboardShortcutControls(bool enable = true)
- {
- lblKeyboardCommand.Visible = enable;
- lblKeyboardShortcuts.Enabled = enable;
- lstKeyboardShortcuts.Enabled = enable;
- btnNewKeyboardShortcut.Enabled = enable;
- btnResetKeyboardShortcuts.Enabled = enable;
- if (!enable)
- {
- btnDeleteKeyboardShortcut.Enabled = false;
- grpModifyKeyboardShortcut.Enabled = false;
- hotModifyKeyboardShortcut.Enabled = false;
- lstKeyboardShortcuts.Items.Clear();
- hotModifyKeyboardShortcut.Text = string.Empty;
- }
- }
-
- #endregion
- }
-}
\ No newline at end of file
diff --git a/mRemoteV1/UI/Forms/OptionsPages/KeyboardPage.resx b/mRemoteV1/UI/Forms/OptionsPages/KeyboardPage.resx
deleted file mode 100644
index 99082057b..000000000
--- a/mRemoteV1/UI/Forms/OptionsPages/KeyboardPage.resx
+++ /dev/null
@@ -1,148 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- False
-
-
-
-
- AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
- /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
- /wD///8A////AOrFpOvnwJ//47ya/+C3lf/dso//2a6K/9aphf/TpX//0KB7/82cdv/KmXL/yJZu/8aT
- a//EkGn/xJBo/8SQaOvuy6v/6NXI/+jUxf/n0sP/5dDB/+XOvv/jzLz/48q5/+LJt//hx7X/4MWz/9/E
- sf/fxLD/3sKv/97Crv/EkGj/8tCx/+rYzP/8/Pz/2rqk//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8
- /P/8/Pz/zKGC//z8/P/fw7D/xZJq//XUtv/s3ND/3sOv/92/q//bvaf/2bqj/9i3n//WtJz/1bGX/9Ou
- lP/Rq4//0KiM/8+miP/No4X/4MWz/8eVbv/42Lv/7d7U//z8/P/8/Pz/3sKu//z8/P/bvKb//Pz8/9i2
- nv/8/Pz/1bCX//z8/P/8/Pz//Pz8/+HItv/KmXL/+ty//+7g1v/jy7r/4sm4/+DGtP/fxLH/3sKt/9y/
- qv/avKb/2bmi/9e2nv/Ws5r/6dbK//z8/P/jy7r/zp13//zewf/v4tj//Pz8/+TMvP/8/Pz/4cm3//z8
- /P/fw7D//Pz8/9y+qf/8/Pz/2bih//z8/P/38/D/5c6+/9Giff/83sH/7+LY/+/i2P/v4tj/7uHX/+7g
- 1v/u39T/7d3S/+zc0f/r2s7/6tjM/+rXyv/o1cf/59PF/+fRwv/VqIP//N7B4/zewf+7ubb/s7Gu//rb
- vv/42Lv/9tW3//PSs//wzq7/7cmq/+rFpP/nwJ//47ya/+C3lf/dso//2a6K4////wD///8AxMTE/by8
- vLSzs7MQ////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////ANDQ
- 0PjJycn4wsLCZ////wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
- /wDZ2dln1NTU9s/Pz+/IyMjlwMDA2Le3t8Ourq6TpKSkfZubm26RkZFJh4eHBP///wD///8A////AP//
- /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
- /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
- /wD///8A//+sQf//rEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEHH/6xBx/+sQcAH
- rEH//6xB//+sQQ==
-
-
-
\ No newline at end of file
diff --git a/mRemoteV1/UI/Forms/frmMain.cs b/mRemoteV1/UI/Forms/frmMain.cs
index 43d6a44fb..65151b040 100644
--- a/mRemoteV1/UI/Forms/frmMain.cs
+++ b/mRemoteV1/UI/Forms/frmMain.cs
@@ -2,30 +2,26 @@ using System;
using System.Diagnostics;
using System.Drawing;
using System.IO;
-using System.Reflection;
using System.Runtime.InteropServices;
using System.Text;
using System.Windows.Forms;
using mRemoteNG.App;
using mRemoteNG.Config;
-using mRemoteNG.Config.KeyboardShortcuts;
using mRemoteNG.Config.Settings;
using mRemoteNG.Connection;
using mRemoteNG.Connection.Protocol;
using mRemoteNG.Controls;
using mRemoteNG.Messages;
-using mRemoteNG.My;
using mRemoteNG.Themes;
using mRemoteNG.Tools;
using mRemoteNG.Tree;
using mRemoteNG.UI.Window;
using PSTaskDialog;
-using SharedLibraryNG;
using WeifenLuo.WinFormsUI.Docking;
namespace mRemoteNG.UI.Forms
{
- public partial class frmMain
+ public partial class frmMain
{
#region Private Variables
private static clipboardchangeEventHandler clipboardchangeEvent;
@@ -204,7 +200,6 @@ namespace mRemoteNG.UI.Forms
AddSysMenuItems();
Microsoft.Win32.SystemEvents.DisplaySettingsChanged += DisplayChanged;
Opacity = 1;
- KeyboardShortcuts.RequestKeyNotifications(Handle);
}
private void ApplySpecialSettingsForPortableVersion()
@@ -1112,22 +1107,6 @@ namespace mRemoteNG.UI.Forms
Native.SendMessage(fpChainedWindowHandle, m.Msg, m.LParam.ToInt32(), m.WParam.ToInt32());
fpChainedWindowHandle = m.LParam;
}
- else if (m.Msg == KeyboardHook.HookKeyMsg)
- {
- if (m.WParam.ToInt32() != Win32.WM_KEYDOWN)
- {
- }
-
- switch (KeyboardShortcuts.CommandFromHookKeyMessage(m))
- {
- case ShortcutCommand.PreviousTab:
- SelectTabRelative(-1);
- break;
- case ShortcutCommand.NextTab:
- SelectTabRelative(1);
- break;
- }
- }
}
catch (Exception)
{
diff --git a/mRemoteV1/UI/Forms/frmOptions.cs b/mRemoteV1/UI/Forms/frmOptions.cs
index 1884183c1..7c5144521 100644
--- a/mRemoteV1/UI/Forms/frmOptions.cs
+++ b/mRemoteV1/UI/Forms/frmOptions.cs
@@ -1,14 +1,9 @@
using System;
using System.Collections.Generic;
-using System.ComponentModel;
-using System.Data;
using System.Diagnostics;
-using System.Drawing;
using System.Linq;
-using System.Text;
using System.Windows.Forms;
using mRemoteNG.App;
-using mRemoteNG.My;
using mRemoteNG.UI.Forms.OptionsPages;
namespace mRemoteNG.UI.Forms
@@ -67,7 +62,6 @@ namespace mRemoteNG.UI.Forms
_pages.Add(typeof(SqlServerPage).Name, new SqlServerPage());
_pages.Add(typeof(UpdatesPage).Name, new UpdatesPage());
_pages.Add(typeof(ThemePage).Name, new ThemePage());
- _pages.Add(typeof(KeyboardPage).Name, new KeyboardPage());
_pages.Add(typeof(AdvancedPage).Name, new AdvancedPage());
}
diff --git a/mRemoteV1/mRemoteV1.csproj b/mRemoteV1/mRemoteV1.csproj
index d4425b916..b3b19509c 100644
--- a/mRemoteV1/mRemoteV1.csproj
+++ b/mRemoteV1/mRemoteV1.csproj
@@ -201,10 +201,6 @@
-
-
-
-
@@ -243,7 +239,6 @@
Component
-
Form
@@ -274,12 +269,6 @@
Form
-
- KeyboardPage.cs
-
-
- UserControl
-
UserControl
@@ -528,9 +517,6 @@
OptionsForm.cs
-
- KeyboardPage.cs
-
SqlServerPage.cs
@@ -1207,12 +1193,6 @@
False
-
-
- {0f615504-5f30-4cf2-8341-1de7fec95a23}
- SharedLibraryNG
-
-