private void buttonMap_Click(object sender, EventArgs e)
        {
            var map          = _discoveryForm.Map;
            var selectedLine = dataGridView1.SelectedCells.Cast <DataGridViewCell>()
                               .Select(cell => cell.OwningRow)
                               .OrderBy(row => row.Index)
                               .First().Index;
            SystemPosition selectedSys;

            do
            {
                selectedSys   = (SystemPosition)dataGridView1.Rows[selectedLine].Cells[1].Tag;
                selectedLine += 1;
            } while (!selectedSys.curSystem.HasCoordinate && selectedLine <= dataGridView1.Rows.Count);
            _discoveryForm.updateMapData();
            map.Instance.Reset();

            map.Instance.HistorySelection = selectedSys.curSystem.HasCoordinate ? selectedSys.Name : textBoxSystem.Text.Trim();
            map.Show();
        }
        private void buttonMap_Click(object sender, EventArgs e)
        {
            var map          = _discoveryForm.Map;
            var selectedLine = dataGridViewTravel.SelectedCells.Cast <DataGridViewCell>()
                               .Select(cell => cell.OwningRow)
                               .OrderBy(row => row.Index)
                               .Select(r => (int?)r.Index)
                               .FirstOrDefault() ?? -1;
            SystemPosition selectedSys = null;

            if (selectedLine >= 0)
            {
                do
                {
                    selectedSys   = (SystemPosition)dataGridViewTravel.Rows[selectedLine].Cells[1].Tag;
                    selectedLine += 1;
                } while (!selectedSys.curSystem.HasCoordinate && selectedLine < dataGridViewTravel.Rows.Count);
            }
            _discoveryForm.updateMapData();
            map.Instance.Reset();

            map.Instance.HistorySelection = (selectedSys != null && selectedSys.curSystem.HasCoordinate) ? selectedSys.Name : textBoxSystem.Text.Trim();
            map.Show();
        }