GSoC/GCI Archive
Google Code-in 2012 KDE

Marble: Add support for moons in the Celestial bodies selector

completed by: Illya Kovalevskyy

mentors: Torsten Rahn, René Küttner, Dennis Nienhüser

Marble has a Celestial bodies combobox in the map view tab. Currently it's only aware of the major planets. In this task moons, dwarf planets and stars should be added.

To allow for this you need to introduce an enum in the Planet class that allows to distinguish between "Stars" (like our Sun), "Planets", "Dwarf Planets", "Moons" (like our moon), "Sky" and "Unknown".

Each of the planet objects get a member of this enum assigned.

The combobox should then sort these objects accordingly. Moons should automatically get an indentation of 2 spaces assigned. They also automatically get a "(Moon)" appended - Exception: our own Moon. Same for dwarf planets. Stars come first (and that also means our sun). So for our solar system the correct order and appearance would be:

 

Sun

Mercury

Venus

Earth

  Moon

Mars

Jupiter

  Io (moon)

  Europa (moon)

  Ganymede (moon)

  Callisto (moon)

Saturn

  Mimas (moon)

  Enceladus (moon)

  Thetys (moon)

  Dione (moon)

  Rhea (moon)

  Titan (moon)

  Iapetus (moon)

Uranus

Neptune

Pluto (dwarf planet)

Ceres (dwarf planet)

 

Afterwards comes the  Sky and then Unknown objects.

Please add the moons and dwarf planets mentioned above in this order to the Planet class accordingly. Sorting should also occur likewise