diff --git a/application/GW2 Addon Manager.sln b/application/GW2 Addon Manager.sln
index 856cd2e..36a0c81 100644
--- a/application/GW2 Addon Manager.sln
+++ b/application/GW2 Addon Manager.sln
@@ -9,6 +9,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Application", "GW2 Addon Ma
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ApplicationTests", "ApplicationTests\ApplicationTests.csproj", "{170F11FB-4005-4A31-A746-32B46814F463}"
EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Localization", "Localization\Localization.csproj", "{5B139D74-6A36-4F8F-833F-4D0DE41FF019}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -27,6 +29,10 @@ Global
{170F11FB-4005-4A31-A746-32B46814F463}.Debug|Any CPU.Build.0 = Debug|Any CPU
{170F11FB-4005-4A31-A746-32B46814F463}.Release|Any CPU.ActiveCfg = Release|Any CPU
{170F11FB-4005-4A31-A746-32B46814F463}.Release|Any CPU.Build.0 = Release|Any CPU
+ {5B139D74-6A36-4F8F-833F-4D0DE41FF019}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {5B139D74-6A36-4F8F-833F-4D0DE41FF019}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {5B139D74-6A36-4F8F-833F-4D0DE41FF019}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {5B139D74-6A36-4F8F-833F-4D0DE41FF019}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/application/GW2 Addon Manager/App/Configuration/Model/UserConfig.cs b/application/GW2 Addon Manager/App/Configuration/Model/UserConfig.cs
index df74ff1..8ed5163 100644
--- a/application/GW2 Addon Manager/App/Configuration/Model/UserConfig.cs
+++ b/application/GW2 Addon Manager/App/Configuration/Model/UserConfig.cs
@@ -1,4 +1,5 @@
-using System;
+using Localization;
+using System;
namespace GW2_Addon_Manager.App.Configuration.Model
{
@@ -15,6 +16,8 @@ public class UserConfig
public string ExeName { get; set; }
+ public string Culture { get; set; } = CultureConstants.English;
+
public AddonsList AddonsList { get; set; } = new AddonsList();
}
}
\ No newline at end of file
diff --git a/application/GW2 Addon Manager/Application.csproj b/application/GW2 Addon Manager/Application.csproj
index b536198..cbf15f7 100644
--- a/application/GW2 Addon Manager/Application.csproj
+++ b/application/GW2 Addon Manager/Application.csproj
@@ -267,7 +267,12 @@
True
-
+
+
+ {5b139d74-6a36-4f8f-833f-4d0de41ff019}
+ Localization
+
+
mkdir "$(TargetDir)resources\plugins"
diff --git a/application/GW2 Addon Manager/Backend/Configuration/configuration.cs b/application/GW2 Addon Manager/Backend/Configuration/configuration.cs
index 06b7eec..455a695 100644
--- a/application/GW2 Addon Manager/Backend/Configuration/configuration.cs
+++ b/application/GW2 Addon Manager/Backend/Configuration/configuration.cs
@@ -39,6 +39,27 @@ public void SetGamePath(string path)
DetermineSystemType();
}
+ ///
+ /// SetCulture both sets the culture for the current application session to and records it in the configuration file.
+ ///
+ ///
+ public void SetCulture(string culture)
+ {
+ Application.Current.Properties["culture"] = culture;
+ _configurationManager.UserConfig.Culture = culture;
+ _configurationManager.SaveConfiguration();
+ RestartApplication();
+ }
+
+ ///
+ /// Restarts the application.
+ ///
+ private void RestartApplication()
+ {
+ System.Diagnostics.Process.Start(Application.ResourceAssembly.Location);
+ Application.Current.Shutdown();
+ }
+
///
/// Checks if there is a new version of the application available.
///
diff --git a/application/GW2 Addon Manager/UI/OpeningPage/OpeningView.xaml b/application/GW2 Addon Manager/UI/OpeningPage/OpeningView.xaml
index 376a3c5..93b0088 100644
--- a/application/GW2 Addon Manager/UI/OpeningPage/OpeningView.xaml
+++ b/application/GW2 Addon Manager/UI/OpeningPage/OpeningView.xaml
@@ -3,6 +3,7 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:l="clr-namespace:Localization;assembly=Localization"
xmlns:viewModel ="clr-namespace:GW2_Addon_Manager"
x:Class="GW2_Addon_Manager.OpeningView"
mc:Ignorable="d"
@@ -41,7 +42,7 @@
+
-
+