Show dwarf planets and minor moons in right-click menu #459 (no pluto yet)

pull/3/head
Luke McCrone 2019-10-27 13:45:06 -06:00 committed by Hleb Valoshka
parent f1a6af1ab5
commit f3edf65d77
2 changed files with 26 additions and 0 deletions

View File

@ -312,7 +312,9 @@ static GtkMenu* CreatePlanetarySystemMenu(string parentName, const PlanetarySyst
vector<IntStrPair> comets;
vector<IntStrPair> invisibles;
vector<IntStrPair> moons;
vector<IntStrPair> minorMoons;
vector<IntStrPair> planets;
vector<IntStrPair> dwarfPlanets;
vector<IntStrPair> spacecraft;
/* We will use these objects to iterate over all the above vectors */
@ -338,9 +340,15 @@ static GtkMenu* CreatePlanetarySystemMenu(string parentName, const PlanetarySyst
case Body::Moon:
moons.push_back(make_pair(i, body->getName()));
break;
case Body::MinorMoon:
minorMoons.push_back(make_pair(i, body->getName()));
break;
case Body::Planet:
planets.push_back(make_pair(i, body->getName()));
break;
case Body::DwarfPlanet:
dwarfPlanets.push_back(make_pair(i, body->getName()));
break;
case Body::Spacecraft:
spacecraft.push_back(make_pair(i, body->getName()));
break;
@ -356,8 +364,12 @@ static GtkMenu* CreatePlanetarySystemMenu(string parentName, const PlanetarySyst
menuNames.push_back("Invisibles");
objects.push_back(moons);
menuNames.push_back("Moons");
objects.push_back(minorMoons);
menuNames.push_back("Minor moons");
objects.push_back(planets);
menuNames.push_back("Planets");
objects.push_back(dwarfPlanets);
menuNames.push_back("Dwarf planets");
objects.push_back(spacecraft);
menuNames.push_back("Spacecraft");

View File

@ -385,9 +385,15 @@ QMenu* SelectionPopup::createObjectMenu(PlanetarySystem* sys,
case Body::Planet:
title = _("Planets");
break;
case Body::DwarfPlanet:
title = _("Dwarf planets");
break;
case Body::Moon:
title = _("Moons");
break;
case Body::MinorMoon:
title = _("Minor moons");
break;
case Body::Asteroid:
title = _("Asteroids");
break;
@ -423,10 +429,18 @@ void SelectionPopup::addObjectMenus(PlanetarySystem* sys)
if (planetsMenu != nullptr)
addMenu(planetsMenu);
QMenu* dwarfPlanetsMenu = createObjectMenu(sys, Body::DwarfPlanet);
if (dwarfPlanetsMenu != nullptr)
addMenu(dwarfPlanetsMenu);
QMenu* moonsMenu = createObjectMenu(sys, Body::Moon);
if (moonsMenu != nullptr)
addMenu(moonsMenu);
QMenu* minorMoonsMenu = createObjectMenu(sys, Body::MinorMoon);
if (minorMoonsMenu != nullptr)
addMenu(minorMoonsMenu);
QMenu* asteroidsMenu = createObjectMenu(sys, Body::Asteroid);
if (asteroidsMenu != nullptr)
addMenu(asteroidsMenu);