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




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

<div>Review request for Calligra, C. Boemann and Boudewijn Rempt.</div>
<div>By Friedrich W. H. Kossebau.</div>










<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
calligra
</div>


<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;">Things work similar to before, so time to get you reviewing it, even if there are some things left for polishing, but that code was not polished before anyway.
And at least the bugs I found also exist in master, hopefully will fix them after this went in, then also swing the polish tool a little more.

Can be tested as branch "rdf-turnIntoPlugins-kossebau".

Patches turn all places with hardcoded code for contact, event and location into generic algorithms, puts code for contact, event and location into separate plugins. Most code is just moved around, I did not try to change any logic other than needed for turning things into plugins. See the commits in the branch for the steps I did, more or less.

For now just a single new product "PLUGIN_SEMANTICITEMS", not sure if anyone would like that to be split up even more. Not yet sure which productsets we want that be part off. Also some README.packagers need to be added, not yet done.

Forgot to remove commented code (left-over from copying), consider stuff between #if 0 and #endif to be removed. Similar for disabled methods in some class declarations. Feel free to still complain about that in inline comments :)


And lost two hours of beauty sleep on the following, see me in rage about it!!11!... ;)
KoDocumentInfoDlg::addPageItem() is broken, the passed KoPageWidgetItem *item is no-where cached and never destructed. Results in crashes for KoDocumentRdfEditWidget (added by KWDocument::createDocumentInfoDialog(...), because it subscribes to docRdf, SIGNAL(semanticObjectUpdated(hKoRdfSemanticItem)) and if that is fired after the widget has already been closed, KoDocumentRdfEditWidget tries to access its UI which got deleted by KoDocumentInfoDlg already.
There are also different casts between KoPageWidgetItem* and KoPageWidgetItem* which do not make sense, seems something was lost during rebase?
Git blames commit d51556f8, "Split out the rdf code into its own library"...</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>CMakeLists.txt <span style="color: grey">(da4f9e3)</span></li>

 <li>libs/kotext/KoTextInlineRdf.h <span style="color: grey">(6d94c3f)</span></li>

 <li>libs/rdf/CMakeLists.txt <span style="color: grey">(24baf2e)</span></li>

 <li>libs/rdf/InsertSemanticObjectCreateAction.cpp <span style="color: grey">(1663c98)</span></li>

 <li>libs/rdf/KoDocumentRdf.h <span style="color: grey">(56cd996)</span></li>

 <li>libs/rdf/KoDocumentRdf.cpp <span style="color: grey">(74ef469)</span></li>

 <li>libs/rdf/KoDocumentRdfEditWidget.h <span style="color: grey">(9420cea)</span></li>

 <li>libs/rdf/KoDocumentRdfEditWidget.cpp <span style="color: grey">(418e887)</span></li>

 <li>libs/rdf/KoDocumentRdfEditWidget.ui <span style="color: grey">(ea343f8)</span></li>

 <li>libs/rdf/KoRdfCalendarEvent.h <span style="color: grey">(87e21b7)</span></li>

 <li>libs/rdf/KoRdfCalendarEvent.cpp <span style="color: grey">(710e9be)</span></li>

 <li>libs/rdf/KoRdfCalendarEventEditWidget.ui <span style="color: grey">(2ad3024)</span></li>

 <li>libs/rdf/KoRdfCalendarEventTreeWidgetItem.h <span style="color: grey">(8209962)</span></li>

 <li>libs/rdf/KoRdfCalendarEventTreeWidgetItem.cpp <span style="color: grey">(56a9f14)</span></li>

 <li>libs/rdf/KoRdfFoaF.h <span style="color: grey">(84de8cf)</span></li>

 <li>libs/rdf/KoRdfFoaF.cpp <span style="color: grey">(20cac0c)</span></li>

 <li>libs/rdf/KoRdfFoaFEditWidget.ui <span style="color: grey">(e938036)</span></li>

 <li>libs/rdf/KoRdfFoaFTreeWidgetItem.h <span style="color: grey">(47ae0ec)</span></li>

 <li>libs/rdf/KoRdfFoaFTreeWidgetItem.cpp <span style="color: grey">(9be7a86)</span></li>

 <li>libs/rdf/KoRdfLocation.h <span style="color: grey">(f5a60f8)</span></li>

 <li>libs/rdf/KoRdfLocation.cpp <span style="color: grey">(da3fdcd)</span></li>

 <li>libs/rdf/KoRdfLocationEditWidget.h <span style="color: grey">(8cc0086)</span></li>

 <li>libs/rdf/KoRdfLocationEditWidget.cpp <span style="color: grey">(5ca0d54)</span></li>

 <li>libs/rdf/KoRdfLocationEditWidget.ui <span style="color: grey">(8315aa5)</span></li>

 <li>libs/rdf/KoRdfLocationEditWidgetMarble.ui <span style="color: grey">(49dc790)</span></li>

 <li>libs/rdf/KoRdfLocationTreeWidgetItem.h <span style="color: grey">(c37619a)</span></li>

 <li>libs/rdf/KoRdfLocationTreeWidgetItem.cpp <span style="color: grey">(35bf3b6)</span></li>

 <li>libs/rdf/KoRdfLocationViewWidget.ui <span style="color: grey">(42ada4d)</span></li>

 <li>libs/rdf/KoRdfLocationViewWidgetMarble.ui <span style="color: grey">(9323e4a)</span></li>

 <li>libs/rdf/KoRdfSemanticItem.h <span style="color: grey">(7959497)</span></li>

 <li>libs/rdf/KoRdfSemanticItem.cpp <span style="color: grey">(5b10fde)</span></li>

 <li>libs/rdf/KoRdfSemanticItemFactoryBase.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>libs/rdf/KoRdfSemanticItemFactoryBase.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>libs/rdf/KoRdfSemanticItemRegistry.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>libs/rdf/KoRdfSemanticItemRegistry.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>libs/rdf/KoRdfSemanticTree.h <span style="color: grey">(864fba7)</span></li>

 <li>libs/rdf/KoRdfSemanticTree.cpp <span style="color: grey">(c824e02)</span></li>

 <li>libs/rdf/KoRdfSemanticTreeWidgetItem.cpp <span style="color: grey">(23d35ca)</span></li>

 <li>libs/rdf/KoSemanticStylesheetsEditor.cpp <span style="color: grey">(0c345cb)</span></li>

 <li>libs/rdf/RdfForward.h <span style="color: grey">(b847027)</span></li>

 <li>libs/rdf/RdfSemanticTreeWidgetAction.h <span style="color: grey">(c5aec3c)</span></li>

 <li>libs/rdf/RdfSemanticTreeWidgetSelectAction.h <span style="color: grey">(57e7e89)</span></li>

 <li>libs/rdf/RdfSemanticTreeWidgetSelectAction.cpp <span style="color: grey">(8788946)</span></li>

 <li>libs/rdf/calligra_semanticitem.desktop <span style="color: grey">(PRE-CREATION)</span></li>

 <li>libs/rdf/tests/TestSemanticItem.h <span style="color: grey">(1a9bd60)</span></li>

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

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

 <li>plugins/semanticitems/contact/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/contact/KoContactSemanticItemFactory.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/contact/KoContactSemanticItemFactory.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/contact/KoContactSemanticItemPlugin.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/contact/KoContactSemanticItemPlugin.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/contact/KoRdfFoaF.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/contact/KoRdfFoaF.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/contact/KoRdfFoaFEditWidget.ui <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/contact/KoRdfFoaFTreeWidgetItem.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/contact/KoRdfFoaFTreeWidgetItem.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/contact/Messages.sh <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/contact/calligra_semanticitem_contact.desktop <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/event/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/event/KoEventSemanticItemFactory.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/event/KoEventSemanticItemFactory.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/event/KoEventSemanticItemPlugin.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/event/KoEventSemanticItemPlugin.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/event/KoRdfCalendarEvent.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/event/KoRdfCalendarEvent.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/event/KoRdfCalendarEventEditWidget.ui <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/event/KoRdfCalendarEventTreeWidgetItem.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/event/KoRdfCalendarEventTreeWidgetItem.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/event/Messages.sh <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/event/calligra_semanticitem_event.desktop <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoLocationSemanticItemFactory.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoLocationSemanticItemFactory.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoLocationSemanticItemPlugin.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoLocationSemanticItemPlugin.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoRdfLocation.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoRdfLocation.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoRdfLocationEditWidget.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoRdfLocationEditWidget.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoRdfLocationEditWidget.ui <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoRdfLocationEditWidgetMarble.ui <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoRdfLocationTreeWidgetItem.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoRdfLocationTreeWidgetItem.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoRdfLocationViewWidget.ui <span style="color: grey">(PRE-CREATION)</span></li>

 <li>plugins/semanticitems/location/KoRdfLocationViewWidgetMarble.ui <span style="color: grey">(PRE-CREATION)</span></li>

 <li>words/part/KWView.cpp <span style="color: grey">(c87c4df)</span></li>

 <li>words/part/dockers/KWRdfDockerTree.cpp <span style="color: grey">(e8a4510)</span></li>

 <li>words/part/tests/TestRdf.cpp <span style="color: grey">(99b8f73)</span></li>

</ul>

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







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




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