[Marble-devel] Review Request 110226: Download New Maps - GHNS dialog in Marble Qt

Dennis Nienhüser earthwings at gentoo.org
Tue Apr 30 18:05:49 UTC 2013


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

(Updated April 30, 2013, 6:05 p.m.)


Review request for Marble.


Changes
-------

Changes:
- the dialog places the config file in MarbleDirs::localPath now
- The KDE part moves its GHNS config file to that location to migrate old config files
- The KDE version uses the new dialog as well


Description
-------

Uses our existing NewstuffModel to replace the "Download Maps" action in the Marble Qt action (which opens a browser) with an in-app map theme installation dialog. The patch is based on Bernhard's work in https://github.com/shentok/marble/tree/MapThemeDownloadDialog. I'll commit as a git patch series retaining ownership.

The dialog resembles the KDE GHNS "Download Maps" dialog (see screenshot). Differences between the two are mainly
- Qt version does not have the side bar to toggle list / detail mode, search, and sort by download count etc. The latter does not work anyway in the KDE version. Imho the sidebar in the KDE version is useless.
- Qt version displays map themes installed locally that were later removed on the server, so these don't become orphane and can still be uninstalled
- Detailed installation progress report next to each item in the Qt version. The KDE version only displays a global spinner anymore (see https://bugs.kde.org/show_bug.cgi?id=314210 )
- Details directly next to the item in the Qt version, no additional details dialog

It would be possible to extend this dialog to incorporate map themes uploaded to opendesktop.org by Marble users. Another possibility would be to open just installed themes automatically in Marble.

Currently the dialog shares the GHNS registry file (which saves which map themes are installed etc) with the KDE version, so (un)installing in one or the other application is reflected correctly in the other. This is great, but has the drawback of a somewhat hard-coded call
setRegistryFile( QDir::homePath() + "/.kde/share/apps/knewstuff3/marble.knsregistry", Marble::NewstuffModel::NameTag )
which will likely fail on some Linux distribution or Windows/Mac. Any thoughts how to do that cleanly? Sharing the registry between the KDE and the Qt version is important imho. One possibility would be to replace the KDE GHNS dialog with this one as well and move the registry file to the local Marble dir (could be an automated migration even). This would require proper testing of course to avoid regressions in the KDE version.


This addresses bug 315839.
    http://bugs.kde.org/show_bug.cgi?id=315839


Diffs (updated)
-----

  src/QtMainWindow.h 225d68d 
  src/QtMainWindow.cpp fa45d75 
  src/icons/16x16/dialog-ok.png PRE-CREATION 
  src/icons/16x16/edit-delete.png PRE-CREATION 
  src/icons/16x16/system-software-update.png PRE-CREATION 
  src/lib/CMakeLists.txt 534a7a9 
  src/lib/MapThemeDownloadDialog.h PRE-CREATION 
  src/lib/MapThemeDownloadDialog.cpp PRE-CREATION 
  src/lib/MapThemeDownloadDialog.ui PRE-CREATION 
  src/lib/NewstuffModel.h cc2e369 
  src/lib/NewstuffModel.cpp e8d4b2f 
  src/lib/libmarble.qrc 0aa5c6b 
  src/marble_part.h 0a56bad 
  src/marble_part.cpp 7302fc3 

Diff: http://git.reviewboard.kde.org/r/110226/diff/


Testing
-------

Linux only so far.


File Attachments
----------------

Screenshot
  http://git.reviewboard.kde.org/media/uploaded/files/2013/04/27/marble-qt-newstuff.png


Thanks,

Dennis Nienhüser

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/marble-devel/attachments/20130430/0c31e8fc/attachment.html>


More information about the Marble-devel mailing list