Пример #1
0
        private void comboBoxBookmarks_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (currentBookmark == null || currentBookmark.PlanetaryMarks == null || currentBookmark.PlanetaryMarks.Planets == null)
            {
                return;
            }
            foreach (PlanetMarks.Planet pl in currentBookmark.PlanetaryMarks.Planets)
            {
                if (pl.Locations != null && pl.Locations.Any())
                {
                    foreach (PlanetMarks.Location loc in pl.Locations.OrderBy(l => l.Name))
                    {
                        if ($"{loc.Name} ({pl.Name})" == comboBoxBookmarks.Text)
                        {
                            numberBoxTargetLatitude.Value  = loc.Latitude;
                            numberBoxTargetLongitude.Value = loc.Longitude;
                            if (externallyForcedBookmark && comboBoxBookmarks.Text != externalLocationName)
                            {
                                comboBoxBookmarks.Items.Remove(externalLocationName);
                                externallyForcedBookmark = false;
                                externalLocationName     = "";
                                externalLocation         = null;
                            }

                            DisplayCompass();
                            return;
                        }
                    }
                }
            }
        }
Пример #2
0
 public void SetSurfaceBookmark(BookmarkClass bk, string planetName, string locName)
 {
     externallyForcedBookmark = true;
     externalLocation         = bk.PlanetaryMarks.Planets.Where(pl => pl.Name == planetName).FirstOrDefault()?.Locations.Where(l => l.Name == locName).FirstOrDefault();
     if (externalLocation != null)
     {
         externalLocationName           = $"{locName} ({planetName})";
         numberBoxTargetLatitude.Value  = externalLocation.Latitude;
         numberBoxTargetLongitude.Value = externalLocation.Longitude;
     }
     Display();
 }