public override bool MouseUp(int x, int y)
{
int left = (_gameMain.ScreenWidth / 2) - 513;
int top = (_gameMain.ScreenHeight / 2) - 250;
if (x >= left && x < left + 1010 && y >= top && y < top + 390)
{
//When clicking a column, that entire row is clicked
for (int i = 0; i < _maxVisible; i++)
{
_columnCells[0][i].MouseUp(left + 1, y);
_columnCells[1][i].MouseUp(left + 281, y);
_columnCells[2][i].MouseUp(left + 371, y);
_columnCells[3][i].MouseUp(left + 461, y);
_columnCells[4][i].MouseUp(left + 541, y);
_columnCells[5][i].MouseUp(left + 621, y);
_columnCells[6][i].MouseUp(left + 701, y);
if (_columnCells[7][i].MouseUp(left + 951, y))
{
if (_columnCells[7][i].DoubleClicked)
{
if (CenterToSystem != null)
{
CenterToSystem(
_gameMain.EmpireManager.CurrentEmpire.PlanetManager.Planets[_selectedRow].System);
}
}
else
{
_selectedRow = i + _scrollBar.TopIndex;
RefreshSelection();
}
}
}
}
if (_reserveSlider.MouseUp(x, y))
{
_gameMain.EmpireManager.CurrentEmpire.TaxRate = _reserveSlider.TopIndex;
RefreshReserves();
return true;
}
if (_transferSlider.MouseUp(x, y))
{
RefreshTransfer();
return true;
}
if (_transferReserves.MouseUp(x, y))
{
var empire = _gameMain.EmpireManager.CurrentEmpire;
var planet = empire.PlanetManager.Planets[_selectedRow];
float amount = empire.Reserves * (_transferSlider.TopIndex / 200.0f);
planet.Reserves += amount;
empire.Reserves -= amount;
_transferSlider.TopIndex = 0;
RefreshReserves();
RefreshTransfer();
return true;
}
if (!base.MouseUp(x, y))
{
if (CloseWindow != null)
{
CloseWindow();
return true;
}
}
return false;
}