private void Refresh()
{
var fleets = _fleetManager.GetFleets();
int i;
for (i = 0; i < _maxVisible; i++)
{
var fleet = fleets[i + _scrollBar.TopIndex];
if (fleet.TravelNodes != null && fleet.TravelNodes.Count > 0)
{
//It's going somewhere
if (fleet.TravelNodes[0].StarSystem.IsThisSystemExploredByEmpire(fleet.Empire))
{
_planetNames[i].SetText(fleet.TravelNodes[0].StarSystem.Name);
}
else
{
_planetNames[i].SetText("Unexplored System");
}
_statusLabels[i + 1].SetText("Enroute");
_statusLabels[i + 1].SetColor(Color.Yellow, Color.Empty);
}
else
{
_planetNames[i].SetText(fleet.AdjacentSystem.Name);
_statusLabels[i + 1].SetText("Orbiting");
_statusLabels[i + 1].SetColor(Color.Orange, Color.Empty);
}
for (int j = 0; j < 6; j++)
{
_shipAmountLabels[i][j].Enabled = false;
_shipAmountLabels[i][j].SetText(string.Empty);
}
foreach (var ship in fleet.Ships)
{
int index = _fleetManager.CurrentDesigns.IndexOf(ship.Key);
_shipAmountLabels[i][index].Enabled = true;
_shipAmountLabels[i][index].SetText(ship.Value.ToString());
}
_planetBackgrounds[i].Enabled = true;
}
for (; i < 10; i++)
{
//Disable the remaining slots
_planetNames[i].SetText(string.Empty);
_statusLabels[i + 1].SetText(string.Empty);
for (int j = 0; j < 6; j++)
{
_shipAmountLabels[i][j].Enabled = false;
_shipAmountLabels[i][j].SetText(string.Empty);
}
_planetBackgrounds[i].Enabled = false;
}
}