Review Request 103613: Generate accessors (getters/setters) for C++

Kevin Funk kfunk at kde.org
Mon Mar 21 09:34:08 UTC 2016


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/103613/#review93811
-----------------------------------------------------------



I'd really love to have someone pick this up... Otherwise it's a lot of wasted effort. Any volunteers (newcomers)?

TODO: Needs porting to KF5, plus needs to be moved to the Clang plugin.

- Kevin Funk


On April 11, 2012, 9:02 a.m., Jonas Jacobi wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/103613/
> -----------------------------------------------------------
> 
> (Updated April 11, 2012, 9:02 a.m.)
> 
> 
> Review request for KDevelop.
> 
> 
> Repository: kdevelop
> 
> 
> Description
> -------
> 
> 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
> 
> 
> Diffs
> -----
> 
>   languages/cpp/CMakeLists.txt 1577a7b 
>   languages/cpp/codecompletion/context.h a5fdea7 
>   languages/cpp/codecompletion/context.cpp 33dcad1 
>   languages/cpp/codecompletion/generateaccessorshelperitem.h PRE-CREATION 
>   languages/cpp/codecompletion/generateaccessorshelperitem.cpp PRE-CREATION 
>   languages/cpp/codegen/accessors/cppgenerateaccessors.ui PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessors.kcfg PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessors.kcfgc PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessorsconfiguration.h PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessorsconfiguration.cpp PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessorsdialog.h PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessorsdialog.cpp PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessorseditor.h PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessorseditor.cpp PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessorsitem.h PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessorsitem.cpp PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessorspreferenceskcmodule.h PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessorspreferenceskcmodule.cpp PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessorssettings.h PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessorssettings.cpp PRE-CREATION 
>   languages/cpp/codegen/accessors/generateaccessorssettingsdialog.ui PRE-CREATION 
>   languages/cpp/codegen/simplerefactoring.h b2187c3 
>   languages/cpp/codegen/simplerefactoring.cpp 8ae4e46 
>   languages/cpp/cppduchain/sourcemanipulation.h 6f8a79b 
>   languages/cpp/cppduchain/sourcemanipulation.cpp 3f40eb2 
>   languages/cpp/cppduchain/tests/test_duchain.cpp 02ed83e 
>   languages/cpp/cppduchain/typeutils.h a686c3b 
>   languages/cpp/cppduchain/typeutils.cpp a801d47 
>   languages/cpp/tests/CMakeLists.txt 24d9597 
>   languages/cpp/tests/testaccessorsettings.h PRE-CREATION 
>   languages/cpp/tests/testaccessorsettings.cpp PRE-CREATION 
>   languages/cpp/tests/testcppgenerateaccessors.h PRE-CREATION 
>   languages/cpp/tests/testcppgenerateaccessors.cpp PRE-CREATION 
>   pics/mini/CMakeLists.txt c3316e7 
>   pics/mini/accessor_reader.png PRE-CREATION 
>   pics/mini/accessor_writer.png PRE-CREATION 
> 
> Diff: https://git.reviewboard.kde.org/r/103613/diff/
> 
> 
> Testing
> -------
> 
> 
> File Attachments
> ----------------
> 
> whitespace fix first
>   https://git.reviewboard.kde.org/media/uploaded/files/2012/04/02/0001-fixed-whitespaces.patch
> actual patch - second
>   https://git.reviewboard.kde.org/media/uploaded/files/2012/04/02/0002-Added-accessor-getter-setter-generation-via.patch
> .desktop for project config
>   https://git.reviewboard.kde.org/media/uploaded/files/2012/04/11/kcm_kdevgenerateaccessors_settings.desktop
> 
> 
> Screenshots
> -----------
> 
> 
>   https://git.reviewboard.kde.org/r/103613/s/412/
> 
>   https://git.reviewboard.kde.org/r/103613/s/413/
> 
> 
> Thanks,
> 
> Jonas Jacobi
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20160321/036a92de/attachment.html>


More information about the KDevelop-devel mailing list