<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="http://svn.reviewboard.kde.org/r/5674/">http://svn.reviewboard.kde.org/r/5674/</a>
     </td>
    </tr>
   </table>
   <br />


<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://svn.reviewboard.kde.orgrb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for marble.</div>
<div>By Dennis Nienhüser.</div>


<p style="color: grey;"><i>Updated 2010-10-20 21:49:09.107094</i></p>




<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Adds a configuration widget for Monav (offline router) that allows to set a transport type preference for each routing profile and allows to manage maps (independent of the current profile). Maps can be installed (via a minimalistic KNewStuff implementation), updated and removed.

To get the information about available and upgradable maps, a maps.xml file is downloaded and parsed. Currently one on my server is used, but I&#39;d move that one to edu.kde.org later. We can integrate it into the KDE KNewStuff feature as well (only the providers.xml on edu.kde.org needs to be modified). I&#39;d delay that however until category support works. I talked to Tom Albers about hosting the maps themselves on edu.kde.org as well, which seems to be a problem currently due to the lack of server capacities. To get around that, we can host the maps on my server. It has enough space (motorcar maps for the whole world are already uploaded) and will have unlimited traffic soon. To change the download location later, only the maps.xml on edu.kde.org needs to be modified, so it&#39;s transparent to users where the files are hosted and no code modifications are needed to switch to a different server later.

The files downloaded are tar.gz files, expected to be extracted in localPath()/maps like the others. Data will end up in localPath()/maps/earth/monav/motorcar/$continent/$country/[$region/] after extraction. Each map directory consists of a couple of files needed by monav and a marble.kml file that contains outline polygons and some other metadata (name, date, version, transport type). This metadata is compared against the KNewStuff metadata to decide whether updates are available.

I have a couple of scripts that automate the process of downloading, preprocessing and deploying the maps. I&#39;ll push them to a git repository on git.kde.org after some cleanup.
</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Desktop (Qt) and N900. KDE and KNewStuff integration works as well when modifying providers.xml appropriately.</pre>
  </td>
 </tr>
</table>




<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>/trunk/KDE/kdeedu/marble/src/lib/RunnerPlugin.h <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/lib/RunnerPlugin.cpp <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/lib/routing/RoutingManager.cpp <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/lib/routing/RoutingProfileSettingsDialog.cpp <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/lib/routing/RoutingProfileSettingsDialog.ui <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/lib/routing/RoutingWidget.cpp <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/monav/CMakeLists.txt <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/monav/MonavConfigWidget.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/monav/MonavConfigWidget.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/monav/MonavConfigWidget.ui <span style="color: grey">(PRE-CREATION)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/monav/MonavMap.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/monav/MonavMap.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/monav/MonavMapsModel.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/monav/MonavMapsModel.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/monav/MonavPlugin.h <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/monav/MonavPlugin.cpp <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/monav/edit-delete.png <span style="color: grey">(UNKNOWN)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/monav/monav.qrc <span style="color: grey">(PRE-CREATION)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/monav/system-software-update.png <span style="color: grey">(UNKNOWN)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/openrouteservice/OpenRouteServicePlugin.h <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/openrouteservice/OpenRouteServicePlugin.cpp <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/openrouteservice/OpenRouteServiceRunner.cpp <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/routino/RoutinoPlugin.h <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/routino/RoutinoPlugin.cpp <span style="color: grey">(1186340)</span></li>

 <li>/trunk/KDE/kdeedu/marble/src/plugins/runner/yours/YoursRunner.cpp <span style="color: grey">(1186340)</span></li>

</ul>

<p><a href="http://svn.reviewboard.kde.org/r/5674/diff/" style="margin-left: 3em;">View Diff</a></p>



<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Screenshots (updated)</h1>

<div>

 <a href="http://svn.reviewboard.kde.org/r/5674/s/537/"><img src="http://svn.reviewboard.kde.org/media/uploaded/images/2010/10/20/marble-monav-configure-1_400x100.png" style="border: 1px black solid;" alt="Transport Type Selection" /></a>

 <a href="http://svn.reviewboard.kde.org/r/5674/s/538/"><img src="http://svn.reviewboard.kde.org/media/uploaded/images/2010/10/20/marble-monav-configure-2_400x100.png" style="border: 1px black solid;" alt="New Map Selection" /></a>

 <a href="http://svn.reviewboard.kde.org/r/5674/s/539/"><img src="http://svn.reviewboard.kde.org/media/uploaded/images/2010/10/20/marble-monav-configure-3_400x100.png" style="border: 1px black solid;" alt="New Map Installation Progress (N900)" /></a>

 <a href="http://svn.reviewboard.kde.org/r/5674/s/540/"><img src="http://svn.reviewboard.kde.org/media/uploaded/images/2010/10/20/marble-monav-configure-4_400x100.png" style="border: 1px black solid;" alt="Map Management (N900)" /></a>

</div>


  </td>
 </tr>
</table>




  </div>
 </body>
</html>