Skip to content

Commit 237af75

Browse files
committed
Implemented the current user settings into the SettingView
1 parent 8dd06f4 commit 237af75

File tree

3 files changed

+16
-4
lines changed

3 files changed

+16
-4
lines changed

src/HyperMC/HyperMcView.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,19 +16,22 @@
1616
using Hypermc.UI.Views;
1717
using Hypermc.Utility;
1818
using HyperMC.CurseForge;
19+
using Microsoft.Extensions.DependencyInjection;
1920

2021
namespace Hypermc
2122
{
2223
public partial class HyperMcView : Form, IViewHost
2324
{
2425

2526
private readonly IForgeClient _forgeClient;
27+
private readonly IServiceProvider _provider;
2628

27-
public HyperMcView(IForgeClient forgeClient)
29+
public HyperMcView(IForgeClient forgeClient, IServiceProvider provider)
2830
{
2931
InitializeComponent();
3032

3133
_forgeClient = forgeClient;
34+
_provider = provider;
3235
_modpacks = new();
3336
_modpacks.CollectionChanged += ModpacksUpdated;
3437
}
@@ -181,7 +184,7 @@ private void Hbtn_Minimize_Click(object sender, EventArgs e)
181184
private void Hbtn_Options_Click(object sender, EventArgs e)
182185
{
183186
//Utils.NotImplAlert("Options Menu");
184-
SetView(new SettingView());
187+
SetView(_provider.GetRequiredService<SettingView>());
185188
}
186189

187190
#endregion Minimize Button

src/HyperMC/Program.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using Hypermc.Settings;
2+
using Hypermc.UI.Views;
23
using Microsoft.Extensions.DependencyInjection;
34
using System;
45
using System.Collections.Generic;
@@ -32,6 +33,9 @@ private static IServiceProvider ConfigureService()
3233

3334
services.AddSingleton<HyperMcView>()
3435
.AddSingleton<IUserSettings, UserSettings>();
36+
37+
services.AddTransient<SettingView>();
38+
3539
services.AddForgeClient();
3640

3741
return services.BuildServiceProvider();

src/HyperMC/UI/Views/SettingView.cs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,20 +7,25 @@
77
using System.Text;
88
using System.Threading.Tasks;
99
using System.Windows.Forms;
10+
using Hypermc.Settings;
1011
using Hypermc.Utility;
1112

1213
namespace Hypermc.UI.Views
1314
{
1415
public partial class SettingView : Form, IView
1516
{
16-
public SettingView()
17+
private readonly IUserSettings _settings;
18+
19+
public SettingView(IUserSettings settings)
1720
{
1821
string env_flder = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
1922
string mc_flder = $"{env_flder}\\.minecraft";
2023
//game_path.Text = $"{mc_flder}";
2124

2225
InitializeComponent();
23-
}
26+
_settings = settings;
27+
game_path.Text = settings.MinecraftPath;
28+
}
2429

2530
public event IView.ViewMessageCallback OnMessage;
2631

0 commit comments

Comments
 (0)