<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://git.reviewboard.kde.org/r/104840/">http://git.reviewboard.kde.org/r/104840/</a>
     </td>
    </tr>
   </table>
   <br />



 <p>Ship it!</p>



 <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Looks good to me from skimming over the changes. I'll test it when it's in master...

Some further thoughts (copied from IRC):
<Earthwings> hm, i wonder if we shouldn't have convenience setters for all these plugin properties like icon, name, guistring in the base class
<Earthwings> imho the code becomes much more readable if you don't have to implement those simple methods in each and every plugin
<Earthwings> i.e. you call setName( "foo" ); setGuiString( "bar" ); etc in the ctor of the plugin
<Earthwings> where each setter is protected and implemented in the base class

The automatic deactivation of the hostip plugin on smallscreen devices is lost by the patch, though this won't have an effect for the N900/N950/N9 as we don't install it there. We (or more general packagers) need to be aware of that though.
</pre>
 <br />





<div>




<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
 <thead>
  <tr>
   <th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
    <a href="http://git.reviewboard.kde.org/r/104840/diff/1/?file=62299#file62299line23" style="color: black; font-weight: bold; text-decoration: underline;">src/lib/SearchRunnerPlugin.h</a>
    <span style="font-weight: normal;">

     (Diff revision 1)

    </span>
   </th>
  </tr>
 </thead>

 <tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
  <tr>

   <td colspan="2"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
   <td colspan="2"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">class MarbleAbstractRunner;</pre></td>

  </tr>
 </tbody>




 
 



 <tbody>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
    <th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">23</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="cm">  * A plugin for marble to execute a placemark search, reverse geocoding or routing task.</span></pre></td>
  </tr>

 </tbody>

</table>

<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">wrong documentation</pre>
</div>
<br />



<p>- Dennis</p>


<br />
<p>On May 3rd, 2012, 11:01 a.m., Bernhard Beschow wrote:</p>






<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.org/media/rb/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 Bernhard Beschow.</div>


<p style="color: grey;"><i>Updated May 3, 2012, 11:01 a.m.</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;">By splitting the class RunnerPlugin into separate classes for searching, routing, reverse geocoding and parsing, implementing a runner plugin will become more straight-forward. Before the patch, an implementer of e.g. a parsing plugin had to filter out unneccessary things such as which routing profile is supported.

Before the split could happen, the nominatim and gosmore runner plugins had to be split such that each new plugin had only one capability.

Please also review the user-visible strings of the nominatim and gosmore plugins.

Have a look at [1] to see the individual commits.

I'm looking forward to your reviews!

[1] https://github.com/shentok/marble/commits/RunnerPlugins-single-capability</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>src/plugins/runner/gosmore/GosmoreRunner.cpp <span style="color: grey">(a5062be2a6ef55cae72b8fedfde675d89f73e53f)</span></li>

 <li>src/plugins/runner/gosmore/GosmoreRunner.h <span style="color: grey">(74b0400f8ee120328c7b94a4752436107d5c27b6)</span></li>

 <li>src/plugins/runner/gosmore/CMakeLists.txt <span style="color: grey">(984550686b4c184182d17027c44b966eda544e7c)</span></li>

 <li>src/plugins/runner/gosmore/GosmorePlugin.h <span style="color: grey">(6d9af2afea9ea21341b147e66320b298c6dd6c32)</span></li>

 <li>src/plugins/runner/gosmore/GosmorePlugin.cpp <span style="color: grey">(14a2d78b001bc203716c3402424657a19d9aace8)</span></li>

 <li>src/plugins/runner/gosmore-routing/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/gosmore-routing/GosmoreRoutingPlugin.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/gosmore-routing/GosmoreRoutingPlugin.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/gosmore-routing/GosmoreRoutingRunner.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/gosmore-routing/GosmoreRoutingRunner.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/lib/RunnerPlugin.cpp <span style="color: grey">(31b89f6c2a88dba46cb6c7f6e2a8cc4ab796c548)</span></li>

 <li>src/lib/RunnerTask.h <span style="color: grey">(a547f3caca23eefd88375718c85dcd9946b70cba)</span></li>

 <li>src/lib/RunnerTask.cpp <span style="color: grey">(5e2860e52dc2ff024cb49237d6e2a1073154c776)</span></li>

 <li>src/lib/SearchRunnerPlugin.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/lib/SearchRunnerPlugin.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/lib/routing/RoutingManager.cpp <span style="color: grey">(0e0d0ef49aa9ebffd720150907265068d6693d89)</span></li>

 <li>src/lib/routing/RoutingProfileSettingsDialog.h <span style="color: grey">(1402cc91904d9ac8cc825f64cc3a58bfd9bf1b7f)</span></li>

 <li>src/lib/routing/RoutingProfileSettingsDialog.cpp <span style="color: grey">(48f0f31ac070cbb16dc0fad7930f10b05370ceec)</span></li>

 <li>src/lib/routing/RoutingProfilesModel.cpp <span style="color: grey">(152b4ecd088e01cbb50536b4bec176a15884e7b8)</span></li>

 <li>src/lib/routing/RoutingProfilesWidget.cpp <span style="color: grey">(90bafb486f0cca8e34c2e4f2f56117f0e93b0a50)</span></li>

 <li>src/plugins/runner/CMakeLists.txt <span style="color: grey">(edf0422e48a9393f10c6200b8ddfd5614beaafb2)</span></li>

 <li>src/plugins/runner/cache/CachePlugin.h <span style="color: grey">(8ef176a48d7a7439c96846150123cf4e947aa07d)</span></li>

 <li>src/plugins/runner/cache/CachePlugin.cpp <span style="color: grey">(ce32c97e74baa6eabf10fa46c643bfab27e1f674)</span></li>

 <li>src/plugins/runner/gosmore-reversegeocoding/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/gosmore-reversegeocoding/GosmoreReverseGeocodingPlugin.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/gosmore-reversegeocoding/GosmoreReverseGeocodingPlugin.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/gosmore-reversegeocoding/GosmoreReverseGeocodingRunner.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/gosmore-reversegeocoding/GosmoreReverseGeocodingRunner.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/lib/RoutingRunnerPlugin.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/lib/RoutingRunnerPlugin.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/lib/RunnerPlugin.h <span style="color: grey">(f3f972132a26b85474d4c0cc8a0118cbdb864336)</span></li>

 <li>src/lib/ReverseGeocodingRunnerPlugin.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/lib/ReverseGeocodingRunnerPlugin.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/lib/ParseRunnerPlugin.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/lib/PluginManager.h <span style="color: grey">(3b1ab1e3c7859317f18532abf541becea2a61964)</span></li>

 <li>src/lib/PluginManager.cpp <span style="color: grey">(a2510ed4feeafc246dd175c7524ee558e62f80c1)</span></li>

 <li>src/lib/CMakeLists.txt <span style="color: grey">(5210329fb771254a8dc5ab19f7020d7145057401)</span></li>

 <li>src/lib/MarbleRunnerManager.cpp <span style="color: grey">(c546bd4a140d7e875c984b4049fde69d74a30ea3)</span></li>

 <li>src/lib/ParseRunnerPlugin.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/gpx/GpxPlugin.h <span style="color: grey">(5ebc5c1130bc07bdb0c84c1f91879ef110e30c91)</span></li>

 <li>src/plugins/runner/gpx/GpxPlugin.cpp <span style="color: grey">(25d8eb1969ba6bd7dc19f3c2a58b03be7be01ddd)</span></li>

 <li>src/plugins/runner/hostip/HostipPlugin.h <span style="color: grey">(6b13bd2408a70394e2fb9d3e5443642c35fd12f8)</span></li>

 <li>src/plugins/runner/hostip/HostipPlugin.cpp <span style="color: grey">(002417da327b7b68795c56d0d53671be60236b6a)</span></li>

 <li>src/plugins/runner/kml/KmlPlugin.h <span style="color: grey">(29136bae8732ac6cfdd75e56b27331ba0180d9da)</span></li>

 <li>src/plugins/runner/kml/KmlPlugin.cpp <span style="color: grey">(00023f46c746fef1314a05aa363091aeb98c3d0c)</span></li>

 <li>src/plugins/runner/latlon/LatLonPlugin.h <span style="color: grey">(542a5d1148a4cdc67a1b463ce3d186fcadb9b099)</span></li>

 <li>src/plugins/runner/latlon/LatLonPlugin.cpp <span style="color: grey">(5900fc54c97fae39677c4703c99f3d1b5c9dff65)</span></li>

 <li>src/plugins/runner/local-osm-search/LocalOsmSearchPlugin.h <span style="color: grey">(0225813628509203c1da044bf4e5e9c07451c07d)</span></li>

 <li>src/plugins/runner/local-osm-search/LocalOsmSearchPlugin.cpp <span style="color: grey">(871f4ef1219c13422130a1afb6f8cf7069ec1209)</span></li>

 <li>src/plugins/runner/localdatabase/LocalDatabasePlugin.h <span style="color: grey">(1fec957ef4eb0d90dfcc6c344dc6eb735a4da6ff)</span></li>

 <li>src/plugins/runner/localdatabase/LocalDatabasePlugin.cpp <span style="color: grey">(0977bf5a16bfec74a42cf5cce71e85b2e15843ba)</span></li>

 <li>src/plugins/runner/log/LogPlugin.h <span style="color: grey">(e08d67f5faf15e39dc52461aab698de00d4e2fe0)</span></li>

 <li>src/plugins/runner/log/LogPlugin.cpp <span style="color: grey">(0f9361b3ae0580e4996ed4626295874bace5d125)</span></li>

 <li>src/plugins/runner/mapquest/MapQuestPlugin.h <span style="color: grey">(49b6046cc7adfb4d5dc950148906df7c1e687236)</span></li>

 <li>src/plugins/runner/mapquest/MapQuestPlugin.cpp <span style="color: grey">(3d4d49f88011befdd474ecf7d3276a8c6c90c785)</span></li>

 <li>src/plugins/runner/monav/MonavConfigWidget.h <span style="color: grey">(c0b9c7f3f798c70424f57a15df8da1f7bbcba4c2)</span></li>

 <li>src/plugins/runner/monav/MonavConfigWidget.cpp <span style="color: grey">(70b016bca206f227b172216ff88f1541f9787a67)</span></li>

 <li>src/plugins/runner/monav/MonavPlugin.h <span style="color: grey">(56661936da2bd624002a46c2f1cadb4bdd59b6bd)</span></li>

 <li>src/plugins/runner/monav/MonavPlugin.cpp <span style="color: grey">(bcab1dd9c30dc2b2e9a2956d14a49f4b2fba3f1b)</span></li>

 <li>src/plugins/runner/nominatim-reversegeocoding/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/nominatim-reversegeocoding/NominatimReverseGeocodingPlugin.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/nominatim-reversegeocoding/NominatimReverseGeocodingPlugin.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/nominatim-reversegeocoding/OsmNominatimReverseGeocodingRunner.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/nominatim-reversegeocoding/OsmNominatimReverseGeocodingRunner.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/nominatim-search/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/nominatim-search/NominatimSearchPlugin.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/nominatim-search/NominatimSearchPlugin.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/nominatim-search/OsmNominatimSearchRunner.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/nominatim-search/OsmNominatimSearchRunner.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>src/plugins/runner/nominatim/CMakeLists.txt <span style="color: grey">(461e3a4eb662c33c5ef0b29a34db1c08512661eb)</span></li>

 <li>src/plugins/runner/nominatim/NominatimPlugin.h <span style="color: grey">(22d8d10e01f4cf61df7d628a0be6fc19dc5d60cc)</span></li>

 <li>src/plugins/runner/nominatim/NominatimPlugin.cpp <span style="color: grey">(2a4ffed4a568c6a38578f88a0cd630d62acfcee3)</span></li>

 <li>src/plugins/runner/nominatim/OsmNominatimRunner.h <span style="color: grey">(43b498aa5b06278b141cdd6946da9d3aaab3bafc)</span></li>

 <li>src/plugins/runner/nominatim/OsmNominatimRunner.cpp <span style="color: grey">(8d1d0461e6ff67c830af4f2cdcf84b993698c523)</span></li>

 <li>src/plugins/runner/open-source-routing-machine/OSRMPlugin.h <span style="color: grey">(d906bfdf6e104aa70fcc2dfa05849b94abe7d20d)</span></li>

 <li>src/plugins/runner/open-source-routing-machine/OSRMPlugin.cpp <span style="color: grey">(c415699266056a78698228f22c8f882600a95080)</span></li>

 <li>src/plugins/runner/openrouteservice/OpenRouteServicePlugin.h <span style="color: grey">(bdcbcb18a28e3951c1eb739635635ad27b89120e)</span></li>

 <li>src/plugins/runner/openrouteservice/OpenRouteServicePlugin.cpp <span style="color: grey">(65bb12323cfd2bca28612d77ea596c2184c55589)</span></li>

 <li>src/plugins/runner/osm/OsmPlugin.h <span style="color: grey">(472d1894a36d96c537f6554a66263f3b17a04aa7)</span></li>

 <li>src/plugins/runner/osm/OsmPlugin.cpp <span style="color: grey">(bd15538f0cba74b79188d1d7f57a7a18671e37ad)</span></li>

 <li>src/plugins/runner/pnt/PntPlugin.h <span style="color: grey">(e705fde173c28acaedcafbbe8a8c9de61202c935)</span></li>

 <li>src/plugins/runner/pnt/PntPlugin.cpp <span style="color: grey">(aaa47a6be600c124a78ddae4ba9067efd969c675)</span></li>

 <li>src/plugins/runner/routino/RoutinoPlugin.h <span style="color: grey">(f65c2e66f5d6db08677d78afefbd75435807a4a9)</span></li>

 <li>src/plugins/runner/routino/RoutinoPlugin.cpp <span style="color: grey">(05395790a2747ff5cb4d07bd834e41caa508b952)</span></li>

 <li>src/plugins/runner/shp/ShpPlugin.h <span style="color: grey">(7bf2d60fca21e066430919a2285770a7075940dc)</span></li>

 <li>src/plugins/runner/shp/ShpPlugin.cpp <span style="color: grey">(8896e4964fb23ae0764f7e88a61e80f5e3792e16)</span></li>

 <li>src/plugins/runner/yours/YoursPlugin.h <span style="color: grey">(9c2ce0f4d7db9e3e9b3dc3ac85c57aaeb7fbf29d)</span></li>

 <li>src/plugins/runner/yours/YoursPlugin.cpp <span style="color: grey">(e3758e2656bf998e294d04072624c990ed23ff10)</span></li>

 <li>tests/PluginManagerTest.cpp <span style="color: grey">(7adaf2e0fb6095f6369924ef9781cec13380ff62)</span></li>

</ul>

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




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








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