Review Request 124168: [Cantor] Port plugin load mechanism to new KDE Frameworks 5 way

Filipe Saraiva filipe at kde.org
Sat Aug 8 23:27:46 UTC 2015


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

(Updated Ago. 8, 2015, 11:27 p.m.)


Review request for KDE Edu, Aleix Pol Gonzalez, Alexander Rieder, and Sebastian Kügler.


Changes
-------

New version of the patch (please discard previous versions).


Repository: cantor


Description
-------

There is a new way to load plugins in KDE Frameworks 5 way. I ported Cantor plugins support to it. Now Cantor is using K_PLUGIN_FACTORY_WITH_JSON, the plugin path is the same of Qt5 ($QT_PLUGIN_PATH) and different types of Cantor plugins are installed in different subdirectories (backends in backends in ${KDE_INSTALL_PLUGINDIR}/cantor/backends, assistants in ${KDE_INSTALL_PLUGINDIR}/cantor/assistants, and panels in ${KDE_INSTALL_PLUGINDIR}/cantor/panels). KPluginInfo was changed to KPluginMetaData too.

To do it I followed the documentation and [this post](http://vizzzion.org/blog/2013/08/kde-frameworks-5-plugin-factory-guts/) about KDE Frameworks 5 plugins by sebas.


Diffs (updated)
-----

  src/CMakeLists.txt 50f26be 
  src/assistants/CMakeLists.txt 4baf622 
  src/assistants/advancedplot/CMakeLists.txt 53da352 
  src/assistants/advancedplot/advancedplotassistant.cpp a1a21ae 
  src/assistants/advancedplot/advancedplotassistant.desktop 72b8c9c 
  src/assistants/advancedplot/advancedplotassistant.json PRE-CREATION 
  src/assistants/differentiate/CMakeLists.txt 3c722a1 
  src/assistants/differentiate/differentiateassistant.cpp c8bafb1 
  src/assistants/differentiate/differentiateassistant.desktop 58e9fb9 
  src/assistants/differentiate/differentiateassistant.json PRE-CREATION 
  src/assistants/importpackage/CMakeLists.txt 3db01e2 
  src/assistants/importpackage/importpackageassistant.cpp e0a9b50 
  src/assistants/importpackage/importpackageassistant.desktop efa9eed 
  src/assistants/importpackage/importpackageassistant.json PRE-CREATION 
  src/assistants/integrate/CMakeLists.txt 23d97fc 
  src/assistants/integrate/integrateassistant.cpp 601c6b2 
  src/assistants/integrate/integrateassistant.desktop fc2bfb3 
  src/assistants/integrate/integrateassistant.json PRE-CREATION 
  src/assistants/linearalgebra/creatematrix/CMakeLists.txt 8829d06 
  src/assistants/linearalgebra/creatematrix/creatematrixassistant.cpp 3336604 
  src/assistants/linearalgebra/creatematrix/creatematrixassistant.desktop 7baf665 
  src/assistants/linearalgebra/creatematrix/creatematrixassistant.json PRE-CREATION 
  src/assistants/linearalgebra/eigenvalues/CMakeLists.txt b487099 
  src/assistants/linearalgebra/eigenvalues/eigenvaluesassistant.cpp e4f0cd9 
  src/assistants/linearalgebra/eigenvalues/eigenvaluesassistant.desktop e7523c2 
  src/assistants/linearalgebra/eigenvalues/eigenvaluesassistant.json PRE-CREATION 
  src/assistants/linearalgebra/eigenvectors/CMakeLists.txt 4c6d086 
  src/assistants/linearalgebra/eigenvectors/eigenvectorsassistant.cpp d8e02b2 
  src/assistants/linearalgebra/eigenvectors/eigenvectorsassistant.desktop f0b8a28 
  src/assistants/linearalgebra/eigenvectors/eigenvectorsassistant.json PRE-CREATION 
  src/assistants/linearalgebra/invertmatrix/CMakeLists.txt 7e19591 
  src/assistants/linearalgebra/invertmatrix/invertmatrixassistant.cpp 9799c6d 
  src/assistants/linearalgebra/invertmatrix/invertmatrixassistant.desktop eaf1f52 
  src/assistants/linearalgebra/invertmatrix/invertmatrixassistant.json PRE-CREATION 
  src/assistants/plot2d/CMakeLists.txt 2b02874 
  src/assistants/plot2d/plot2dassistant.cpp 11d9db8 
  src/assistants/plot2d/plot2dassistant.desktop 7a8c2da 
  src/assistants/plot2d/plot2dassistant.json PRE-CREATION 
  src/assistants/plot3d/CMakeLists.txt bbcac18 
  src/assistants/plot3d/plot3dassistant.cpp 6b2e764 
  src/assistants/plot3d/plot3dassistant.desktop c38e33c 
  src/assistants/plot3d/plot3dassistant.json PRE-CREATION 
  src/assistants/runscript/CMakeLists.txt 280a237 
  src/assistants/runscript/runscriptassistant.cpp bb8147d 
  src/assistants/runscript/runscriptassistant.desktop 0a89743 
  src/assistants/runscript/runscriptassistant.json PRE-CREATION 
  src/assistants/solve/CMakeLists.txt 2c25598 
  src/assistants/solve/solveassistant.cpp 7ad1254 
  src/assistants/solve/solveassistant.desktop 3b8de2e 
  src/assistants/solve/solveassistant.json PRE-CREATION 
  src/backends/CMakeLists.txt 2569d55 
  src/backends/R/CMakeLists.txt 5e44b3c 
  src/backends/R/rbackend.cpp a0d9e6a 
  src/backends/R/rbackend.desktop a9ea1e1 
  src/backends/R/rbackend.json PRE-CREATION 
  src/backends/kalgebra/CMakeLists.txt 46a5440 
  src/backends/kalgebra/kalgebrabackend.cpp 5d7fac9 
  src/backends/kalgebra/kalgebrabackend.desktop f1a1b35 
  src/backends/kalgebra/kalgebrabackend.json PRE-CREATION 
  src/backends/lua/CMakeLists.txt 082f37b 
  src/backends/lua/luabackend.cpp 30e258e 
  src/backends/lua/luabackend.desktop 9b150d9 
  src/backends/lua/luabackend.json PRE-CREATION 
  src/backends/maxima/CMakeLists.txt ca48d90 
  src/backends/maxima/maximabackend.cpp 86843ef 
  src/backends/maxima/maximabackend.desktop b1df2dd 
  src/backends/maxima/maximabackend.json PRE-CREATION 
  src/backends/null/CMakeLists.txt 69ffff3 
  src/backends/null/nullbackend.cpp 602fd49 
  src/backends/null/nullbackend.desktop 7f4be60 
  src/backends/null/nullbackend.json PRE-CREATION 
  src/backends/octave/CMakeLists.txt ee3ea92 
  src/backends/octave/octavebackend.cpp 9842364 
  src/backends/octave/octavebackend.desktop 3ef6332 
  src/backends/octave/octavebackend.json PRE-CREATION 
  src/backends/python2/CMakeLists.txt 02115ee 
  src/backends/python2/python2backend.cpp 61662ff 
  src/backends/python2/python2backend.desktop 4d1ebad 
  src/backends/python2/python2backend.json PRE-CREATION 
  src/backends/python3/CMakeLists.txt 6937480 
  src/backends/python3/python3backend.cpp c83f631 
  src/backends/python3/python3backend.desktop a6c361c 
  src/backends/python3/python3backend.json PRE-CREATION 
  src/backends/qalculate/CMakeLists.txt e0f1c3a 
  src/backends/qalculate/plotassistant/CMakeLists.txt efdd2d2 
  src/backends/qalculate/plotassistant/qalculateplotassistant.cpp 1d0ae83 
  src/backends/qalculate/plotassistant/qalculateplotassistant.desktop ce9901a 
  src/backends/qalculate/plotassistant/qalculateplotassistant.json PRE-CREATION 
  src/backends/qalculate/qalculatebackend.cpp da866ab 
  src/backends/qalculate/qalculatebackend.desktop 14ecb8f 
  src/backends/qalculate/qalculatebackend.json PRE-CREATION 
  src/backends/sage/CMakeLists.txt 131ad07 
  src/backends/sage/sagebackend.cpp b1a1ef5 
  src/backends/sage/sagebackend.desktop 69d4f23 
  src/backends/sage/sagebackend.json PRE-CREATION 
  src/backends/scilab/CMakeLists.txt 4ce8200 
  src/backends/scilab/scilabbackend.cpp 0d47595 
  src/backends/scilab/scilabbackend.desktop 30f6edd 
  src/backends/scilab/scilabbackend.json PRE-CREATION 
  src/cantor_part.cpp 2e3d36d 
  src/cantor_part.desktop 4619694 
  src/cantor_part.json PRE-CREATION 
  src/lib/CMakeLists.txt 9e33924 
  src/lib/assistant.h f337591 
  src/lib/assistant.cpp 60c521f 
  src/lib/backend.cpp 5e64fe7 
  src/lib/panelplugin.h ebb02fe 
  src/lib/panelplugin.cpp 1fa61d0 
  src/lib/panelpluginhandler.cpp 8c73405 
  src/panelplugins/CMakeLists.txt 6af7a48 
  src/panelplugins/helppanel/CMakeLists.txt d8f785f 
  src/panelplugins/helppanel/helppanelplugin.cpp 4611576 
  src/panelplugins/helppanel/helppanelplugin.desktop fea19b6 
  src/panelplugins/helppanel/helppanelplugin.json PRE-CREATION 
  src/panelplugins/variablemgr/CMakeLists.txt 88f66d1 
  src/panelplugins/variablemgr/variablemanagerplugin.cpp 6a7b448 
  src/panelplugins/variablemgr/variablemanagerplugin.desktop e32f014 
  src/panelplugins/variablemgr/variablemanagerplugin.json PRE-CREATION 

Diff: https://git.reviewboard.kde.org/r/124168/diff/


Testing
-------

* Build ok;
* The plugins are loaded correctly;
* Select some backend and see the Cantor loading assistants and panels;
* Utilized some assistants, panels and backends, looks like correct.


Thanks,

Filipe Saraiva

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-edu/attachments/20150808/0474ad73/attachment.html>


More information about the kde-edu mailing list