Use improved ItemLists (#335)

* Use improved ItemList

* Address reviews

* Update submodule
This commit is contained in:
Víctor Aguilera Puerto
2019-09-13 15:35:06 +02:00
committed by Pieter-Jan Briers
parent e570f10d69
commit 3f4c9a8326
6 changed files with 11 additions and 21 deletions

View File

@@ -76,7 +76,7 @@ namespace Content.Client.GameObjects.Components.Research
var id = _serverIds[i]; var id = _serverIds[i];
_servers.AddItem($"ID: {id} || {_serverNames[i]}"); _servers.AddItem($"ID: {id} || {_serverNames[i]}");
if (id == _selectedServerId) if (id == _selectedServerId)
_servers.Select(i); _servers[id].Selected = true;
} }
_servers.OnItemSelected += OnItemSelected; _servers.OnItemSelected += OnItemSelected;

View File

@@ -14,6 +14,7 @@ using Robust.Client.Interfaces.ResourceManagement;
using Robust.Client.Interfaces.UserInterface; using Robust.Client.Interfaces.UserInterface;
using Robust.Client.Player; using Robust.Client.Player;
using Robust.Client.UserInterface; using Robust.Client.UserInterface;
using Robust.Client.UserInterface.Controls;
using Robust.Shared.Input; using Robust.Shared.Input;
using Robust.Shared.Interfaces.Network; using Robust.Shared.Interfaces.Network;
using Robust.Shared.IoC; using Robust.Shared.IoC;

View File

@@ -131,6 +131,7 @@ namespace Content.Client.Research
{ {
SizeFlagsStretchRatio = 8, SizeFlagsStretchRatio = 8,
SizeFlagsVertical = SizeFlags.FillExpand, SizeFlagsVertical = SizeFlags.FillExpand,
SelectMode = ItemList.ItemListSelectMode.Button,
}; };
Items.OnItemSelected += ItemSelected; Items.OnItemSelected += ItemSelected;
@@ -178,12 +179,6 @@ namespace Content.Client.Research
int.TryParse(AmountLineEdit.Text, out var quantity); int.TryParse(AmountLineEdit.Text, out var quantity);
if (quantity <= 0) quantity = 1; if (quantity <= 0) quantity = 1;
Owner.Queue(_shownRecipes[args.ItemIndex], quantity); Owner.Queue(_shownRecipes[args.ItemIndex], quantity);
Items.SelectMode = ItemList.ItemListSelectMode.None;
Timer.Spawn(100, () =>
{
Items.Unselect(args.ItemIndex);
Items.SelectMode = ItemList.ItemListSelectMode.Single;
});
} }
public void PopulateMaterials() public void PopulateMaterials()
@@ -208,7 +203,7 @@ namespace Content.Client.Research
for (var i = 0; i < _shownRecipes.Count; i++) for (var i = 0; i < _shownRecipes.Count; i++)
{ {
var prototype = _shownRecipes[i]; var prototype = _shownRecipes[i];
Items.SetItemDisabled(i, !Owner.Lathe.CanProduce(prototype, quantity)); Items[i].Disabled = !Owner.Lathe.CanProduce(prototype, quantity);
} }
} }

View File

@@ -128,7 +128,7 @@ namespace Content.Client.Research
var idx = 1; var idx = 1;
foreach (var recipe in Owner.QueuedRecipes) foreach (var recipe in Owner.QueuedRecipes)
{ {
QueueList.AddItem($"{idx}. {recipe.Name}", recipe.Icon.Frame0(), false); QueueList.AddItem($"{idx}. {recipe.Name}", recipe.Icon.Frame0());
idx++; idx++;
} }
} }

View File

@@ -54,7 +54,7 @@ namespace Content.Client.Research
_unlockedTechnologies = new ItemList() _unlockedTechnologies = new ItemList()
{ {
SelectMode = ItemList.ItemListSelectMode.Single, SelectMode = ItemList.ItemListSelectMode.Button,
SizeFlagsHorizontal = SizeFlags.FillExpand, SizeFlagsHorizontal = SizeFlags.FillExpand,
SizeFlagsVertical = SizeFlags.FillExpand, SizeFlagsVertical = SizeFlags.FillExpand,
}; };
@@ -63,7 +63,7 @@ namespace Content.Client.Research
_unlockableTechnologies = new ItemList() _unlockableTechnologies = new ItemList()
{ {
SelectMode = ItemList.ItemListSelectMode.Single, SelectMode = ItemList.ItemListSelectMode.Button,
SizeFlagsHorizontal = SizeFlags.FillExpand, SizeFlagsHorizontal = SizeFlags.FillExpand,
SizeFlagsVertical = SizeFlags.FillExpand, SizeFlagsVertical = SizeFlags.FillExpand,
}; };
@@ -72,7 +72,7 @@ namespace Content.Client.Research
_futureTechnologies = new ItemList() _futureTechnologies = new ItemList()
{ {
SelectMode = ItemList.ItemListSelectMode.Single, SelectMode = ItemList.ItemListSelectMode.Button,
SizeFlagsHorizontal = SizeFlags.FillExpand, SizeFlagsHorizontal = SizeFlags.FillExpand,
SizeFlagsVertical = SizeFlags.FillExpand, SizeFlagsVertical = SizeFlags.FillExpand,
}; };
@@ -192,8 +192,6 @@ namespace Content.Client.Research
{ {
TechnologySelected = _unlockedTechnologyPrototypes[obj.ItemIndex]; TechnologySelected = _unlockedTechnologyPrototypes[obj.ItemIndex];
_unlockedTechnologies.Unselect(obj.ItemIndex);
UnlockButton.Disabled = true; UnlockButton.Disabled = true;
PopulateSelectedTechnology(); PopulateSelectedTechnology();
@@ -206,8 +204,6 @@ namespace Content.Client.Research
{ {
TechnologySelected = _unlockableTechnologyPrototypes[obj.ItemIndex]; TechnologySelected = _unlockableTechnologyPrototypes[obj.ItemIndex];
_unlockableTechnologies.Unselect(obj.ItemIndex);
UnlockButton.Disabled = Owner.Points < TechnologySelected.RequiredPoints; UnlockButton.Disabled = Owner.Points < TechnologySelected.RequiredPoints;
PopulateSelectedTechnology(); PopulateSelectedTechnology();
@@ -220,8 +216,6 @@ namespace Content.Client.Research
{ {
TechnologySelected = _futureTechnologyPrototypes[obj.ItemIndex]; TechnologySelected = _futureTechnologyPrototypes[obj.ItemIndex];
_futureTechnologies.Unselect(obj.ItemIndex);
UnlockButton.Disabled = true; UnlockButton.Disabled = true;
PopulateSelectedTechnology(); PopulateSelectedTechnology();
@@ -257,7 +251,7 @@ namespace Content.Client.Research
} }
else else
{ {
_futureTechnologies.AddItem(tech.Name, tech.Icon.Frame0());; _futureTechnologies.AddItem(tech.Name, tech.Icon.Frame0());
_futureTechnologyPrototypes.Add(tech); _futureTechnologyPrototypes.Add(tech);
} }
} }