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





 <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I'd really love to have someone pick this up... Otherwise it's a lot of wasted effort. Any volunteers (newcomers)?</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">TODO: Needs porting to KF5, plus needs to be moved to the Clang plugin.</p></pre>
 <br />









<p>- Kevin Funk</p>


<br />
<p>On April 11th, 2012, 9:02 a.m. UTC, Jonas Jacobi wrote:</p>








<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: 1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
 <tr>
  <td>

<div>Review request for KDevelop.</div>
<div>By Jonas Jacobi.</div>


<p style="color: grey;"><i>Updated April 11, 2012, 9:02 a.m.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
kdevelop
</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;">UPDATE: I also added the possibility to create getters/setters via code completion (can be turned off in the options)
The settings can now also be edited via the project configuration dialog.
---

Generate accessors (getters/setters) for C++.

This patch adds the possibility to create accessor methods for class member variables via the gui.
The dialog offers the following features:
- shows all members of a selected class in a tree view (with getters/setters as children), if it was opened on a class member that one is pre-selected
- only shows setters if applicable (non-const member)
- accessor method definitions can be created inline or separate (in the fitting source file, if applicable)
- configurable automatic creation of method names with manual override for each accessor method
- access policy (visibility) setting global and individualy for each accessor method
- configurable default setter parameter name with manual override for each setter (void setFoo(int myParamterName))
- selectable getter return type (e.g. Type, Type&, const Type& for a member of type Type)
- create setters as slots for QObject subclasses

Regards,
Jonas</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>languages/cpp/CMakeLists.txt <span style="color: grey">(1577a7b)</span></li>

 <li>languages/cpp/codecompletion/context.h <span style="color: grey">(a5fdea7)</span></li>

 <li>languages/cpp/codecompletion/context.cpp <span style="color: grey">(33dcad1)</span></li>

 <li>languages/cpp/codecompletion/generateaccessorshelperitem.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codecompletion/generateaccessorshelperitem.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/cppgenerateaccessors.ui <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessors.kcfg <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessors.kcfgc <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessorsconfiguration.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessorsconfiguration.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessorsdialog.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessorsdialog.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessorseditor.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessorseditor.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessorsitem.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessorsitem.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessorspreferenceskcmodule.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessorspreferenceskcmodule.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessorssettings.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessorssettings.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/accessors/generateaccessorssettingsdialog.ui <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/codegen/simplerefactoring.h <span style="color: grey">(b2187c3)</span></li>

 <li>languages/cpp/codegen/simplerefactoring.cpp <span style="color: grey">(8ae4e46)</span></li>

 <li>languages/cpp/cppduchain/sourcemanipulation.h <span style="color: grey">(6f8a79b)</span></li>

 <li>languages/cpp/cppduchain/sourcemanipulation.cpp <span style="color: grey">(3f40eb2)</span></li>

 <li>languages/cpp/cppduchain/tests/test_duchain.cpp <span style="color: grey">(02ed83e)</span></li>

 <li>languages/cpp/cppduchain/typeutils.h <span style="color: grey">(a686c3b)</span></li>

 <li>languages/cpp/cppduchain/typeutils.cpp <span style="color: grey">(a801d47)</span></li>

 <li>languages/cpp/tests/CMakeLists.txt <span style="color: grey">(24d9597)</span></li>

 <li>languages/cpp/tests/testaccessorsettings.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/tests/testaccessorsettings.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/tests/testcppgenerateaccessors.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>languages/cpp/tests/testcppgenerateaccessors.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>pics/mini/CMakeLists.txt <span style="color: grey">(c3316e7)</span></li>

 <li>pics/mini/accessor_reader.png <span style="color: grey">(PRE-CREATION)</span></li>

 <li>pics/mini/accessor_writer.png <span style="color: grey">(PRE-CREATION)</span></li>

</ul>

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



<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">File Attachments </h1>


 <li><a href="https://git.reviewboard.kde.org/media/uploaded/files/2012/04/02/0001-fixed-whitespaces.patch">whitespace fix first</a></li>

 <li><a href="https://git.reviewboard.kde.org/media/uploaded/files/2012/04/02/0002-Added-accessor-getter-setter-generation-via.patch">actual patch - second</a></li>

 <li><a href="https://git.reviewboard.kde.org/media/uploaded/files/2012/04/11/kcm_kdevgenerateaccessors_settings.desktop">.desktop for project config</a></li>

</ul>



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

<div>

 <a href="https://git.reviewboard.kde.org/r/103613/s/412/"><img src="https://git.reviewboard.kde.org/media/uploaded/images/2012/01/10/create_getter_example1_400x100.png" style="border: 1px black solid;" alt="" /></a>

 <a href="https://git.reviewboard.kde.org/r/103613/s/413/"><img src="https://git.reviewboard.kde.org/media/uploaded/images/2012/01/10/create_setter_example1_400x100.png" style="border: 1px black solid;" alt="" /></a>

</div>


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







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