refactors
This commit is contained in:
@@ -9,15 +9,18 @@ namespace ModVersionChecker.ui.forms
|
||||
private ListBox _resultsList;
|
||||
private Button _addButton;
|
||||
private readonly IApiService _apiService;
|
||||
private readonly IAppsManager _appsManager;
|
||||
private readonly IAppService _appService;
|
||||
public App? SelectedApp { get; private set; }
|
||||
|
||||
public event EventHandler<string> OnAppAdded;
|
||||
|
||||
public AppDetailsForm(IApiService apiService, IAppsManager appsManager)
|
||||
public AppDetailsForm(
|
||||
IApiService apiService,
|
||||
IAppService appService
|
||||
)
|
||||
{
|
||||
_apiService = apiService ?? throw new ArgumentNullException(nameof(apiService));
|
||||
_appsManager = appsManager ?? throw new ArgumentNullException(nameof(appsManager));
|
||||
_appService = appService ?? throw new ArgumentNullException(nameof(appService));
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
@@ -27,6 +30,7 @@ namespace ModVersionChecker.ui.forms
|
||||
Width = 400;
|
||||
Height = 500;
|
||||
Padding = new Padding(20);
|
||||
StartPosition = FormStartPosition.CenterParent;
|
||||
|
||||
_searchBox = new TextBox { Dock = DockStyle.Top, PlaceholderText = "Search..." };
|
||||
_resultsList = new ListBox { Dock = DockStyle.Fill };
|
||||
@@ -54,8 +58,8 @@ namespace ModVersionChecker.ui.forms
|
||||
_resultsList.DataSource = null;
|
||||
return;
|
||||
}
|
||||
var results = await _apiService.SearchApps(query);
|
||||
_resultsList.DataSource = results;
|
||||
var apiResults = await _apiService.SearchApps(query);
|
||||
_resultsList.DataSource = _appService.PurgeExisitingApps(apiResults);
|
||||
_resultsList.DisplayMember = "Name";
|
||||
}
|
||||
|
||||
@@ -64,7 +68,7 @@ namespace ModVersionChecker.ui.forms
|
||||
if (_resultsList.SelectedItem is App app)
|
||||
{
|
||||
SelectedApp = app;
|
||||
_appsManager.Insert(app);
|
||||
_appService.CreateApp(app);
|
||||
DialogResult = DialogResult.OK;
|
||||
OnAppAdded?.Invoke(this, "App saved");
|
||||
Close();
|
||||
|
Reference in New Issue
Block a user