D6903: [Feature] Enable per-project setting of source formatters

Friedrich W. H. Kossebau noreply at phabricator.kde.org
Tue Jul 25 22:18:42 UTC 2017


kossebau created this revision.
Restricted Application added a subscriber: kdevelop-devel.

REVISION SUMMARY
  Patch adds a plugin kdevsourceformatter, as currently needed
  to provide some per-project config pages. To ensure it is
  always available, "X-KDevelop-LoadMode": "AlwaysOn" is set.
  This plugin then provides the per-project config page
  for source formatters.
  
  To reuse the code for selecting, editing, creating & deleting
  formatters, the respective code is factored out from
  the class KDevelop::SourceFormatterSettings
  into a new (exported) class KDevelop::SourceFormatterSelectionEdit,
  which is then used both from the global and the project config page.
  
  To enable the SourceFormarController instance to take the per-project
  settings into account, the API of ISourceFormatterController is
  changed to always include the url of the object, so the project
  it belongs to can be estimated.

TEST PLAN
  Changes to per-project settings are properly saved and restored in
  the UI.
  Source format controller takes settings of project into account
  if configured to do, both for snippets/line and whole files.

REPOSITORY
  R33 KDevPlatform

BRANCH
  perprojectformatterconfig

REVISION DETAIL
  https://phabricator.kde.org/D6903

AFFECTED FILES
  interfaces/isourceformattercontroller.h
  plugins/CMakeLists.txt
  plugins/sourceformatter/CMakeLists.txt
  plugins/sourceformatter/Messages.sh
  plugins/sourceformatter/config/projectconfig.kcfg
  plugins/sourceformatter/config/projectconfig.kcfgc
  plugins/sourceformatter/config/projectconfigpage.cpp
  plugins/sourceformatter/config/projectconfigpage.h
  plugins/sourceformatter/config/projectconfigpage.ui
  plugins/sourceformatter/kdevsourceformatter.json
  plugins/sourceformatter/sourceformatterplugin.cpp
  plugins/sourceformatter/sourceformatterplugin.h
  shell/CMakeLists.txt
  shell/settings/sourceformattersettings.cpp
  shell/settings/sourceformattersettings.h
  shell/settings/sourceformattersettings.ui
  shell/sourceformattercontroller.cpp
  shell/sourceformattercontroller.h
  shell/sourceformatterselectionedit.cpp
  shell/sourceformatterselectionedit.h
  shell/sourceformatterselectionedit.ui

To: kossebau, #kdevelop
Cc: kdevelop-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20170725/b8548e00/attachment.html>


More information about the KDevelop-devel mailing list