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

Jonas Jacobi jonas.jacobi at web.de
Fri Feb 17 15:06:15 UTC 2012


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

(Updated Feb. 17, 2012, 3:06 p.m.)


Review request for KDevelop.


Changes
-------

Added the possibility to create getters/setters via code completion


Description (updated)
-------

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 (updated)
-----

  languages/cpp/CMakeLists.txt 830a3e3 
  languages/cpp/codecompletion/context.h 167029b 
  languages/cpp/codecompletion/context.cpp e0afc55 
  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 5c5613b 
  languages/cpp/cppduchain/sourcemanipulation.h 6f8a79b 
  languages/cpp/cppduchain/sourcemanipulation.cpp 3f40eb2 
  languages/cpp/cppduchain/tests/test_duchain.h 6103787 
  languages/cpp/cppduchain/tests/test_duchain.cpp 02ed83e 
  languages/cpp/cppduchain/typeutils.h a686c3b 
  languages/cpp/cppduchain/typeutils.cpp a801d47 
  languages/cpp/kcm_kdevgenerateaccessors_settings.desktop PRE-CREATION 
  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: http://git.reviewboard.kde.org/r/103613/diff/


Testing
-------


Screenshots
-----------


  http://git.reviewboard.kde.org/r/103613/s/413/

  http://git.reviewboard.kde.org/r/103613/s/412/


Thanks,

Jonas Jacobi

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20120217/13cc76e1/attachment.html>


More information about the KDevelop-devel mailing list