[Marble-devel] Review Request: Current Location interface simplification and extension

Dennis Nienhüser earthwings at gentoo.org
Mon Apr 12 21:35:30 CEST 2010


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/3549/
-----------------------------------------------------------

(Updated 2010-04-12 19:35:30.782638)


Review request for marble.


Changes
-------

When no current location is available but a position provider was activated by the user, show the position provider status to the user: "Initializing current location service...", "Waiting for current location information...", "Error when determining current location: $error". The patch also fixes PositionProviderStatus (must not be flags, must match GeoCute::Status which static_casts the conversion, apparently unused yet). Interruptions of gpsd (e.g. plugging out the device) are detected now. Some improvements in the N900 GPS handling (state handling and data querying).
Tested on my desktop with gpsfake and my N900.

Note that the old patch was committed and this one generated against latest trunk, thus no use to compare it against the old patch. Just adding it here as it addresses some of Torstens suggestions.


Summary
-------

In short: 1) Possibility to choose GPS source in the UI 2) Condense the UI 3) Allow jumping to the current position

The patch changes the "Current Location" widget in the control box to preserve some whitespace (important on Maemo). It also removes the custom fonts and the wrong tooltips claiming that the map would be re-centered automatically. The unused label for the fuzzy location description goes away as well, although I plan to add it back at some point with reverse geocoding information.

The "navigation mode" checkbox gets replaced with a combobox that let's you disable position tracking (default at startup) or select one of the available plugins. I favor this for several reasons: You get control over GPS and see what is installed. In case more than one plugin is available, you can switch between them. You can disable GPS, which is most important on embedded devices (GPS drains the battery).

The longitude and latitude value in the label are links, activating any of them centers the map on the current position.


This addresses bug 202134.
    https://bugs.kde.org/show_bug.cgi?id=202134


Diffs (updated)
-----

  /trunk/KDE/kdeedu/marble/src/lib/MarbleControlBox.h 1114074 
  /trunk/KDE/kdeedu/marble/src/lib/MarbleControlBox.cpp 1114074 
  /trunk/KDE/kdeedu/marble/src/lib/MarbleControlBox.ui 1114074 
  /trunk/KDE/kdeedu/marble/src/lib/PositionProviderPluginInterface.h 1114074 
  /trunk/KDE/kdeedu/marble/src/lib/PositionProviderPluginInterface.cpp 1114074 
  /trunk/KDE/kdeedu/marble/src/lib/gps/PositionTracking.h 1114074 
  /trunk/KDE/kdeedu/marble/src/lib/gps/PositionTracking.cpp 1114074 
  /trunk/KDE/kdeedu/marble/src/plugins/positionprovider/gpsd/GpsdConnection.h 1114074 
  /trunk/KDE/kdeedu/marble/src/plugins/positionprovider/gpsd/GpsdConnection.cpp 1114074 
  /trunk/KDE/kdeedu/marble/src/plugins/positionprovider/gpsd/GpsdPositionProviderPlugin.h 1114074 
  /trunk/KDE/kdeedu/marble/src/plugins/positionprovider/gpsd/GpsdPositionProviderPlugin.cpp 1114074 
  /trunk/KDE/kdeedu/marble/src/plugins/positionprovider/gpsd/GpsdThread.h 1114074 
  /trunk/KDE/kdeedu/marble/src/plugins/positionprovider/gpsd/GpsdThread.cpp 1114074 
  /trunk/KDE/kdeedu/marble/src/plugins/positionprovider/maemo/MaemoPositionProviderPlugin.cpp 1114074 

Diff: http://reviewboard.kde.org/r/3549/diff


Testing
-------

Using gpsfake on my desktop system and the internal GPS of my N900.


Screenshots
-----------

marble-current-location-ui.png
  http://reviewboard.kde.org/r/3549/s/353/


Thanks,

Dennis



More information about the Marble-devel mailing list