Review Request 124168: [Cantor] Port plugin load mechanism to new KDE Frameworks 5 way
Aleix Pol Gonzalez
aleixpol at kde.org
Wed Jun 24 19:35:44 UTC 2015
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/124168/#review81731
-----------------------------------------------------------
src/assistants/differentiate/CMakeLists.txt (line 8)
<https://git.reviewboard.kde.org/r/124168/#comment56048>
I suggest just using json, rather than translating at compile-time. It doesn't buy you anything.
Also you can consider using kcoreaddons_add_plugin macro.
Also I'd suggest to look into how it was done in kdeconnect-kde, it's a simple implementation of what you want to do.
- Aleix Pol Gonzalez
On June 24, 2015, 9:06 p.m., Filipe Saraiva wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/124168/
> -----------------------------------------------------------
>
> (Updated June 24, 2015, 9:06 p.m.)
>
>
> Review request for KDE Edu, Aleix Pol Gonzalez, Alexander Rieder, and Sebastian Kügler.
>
>
> 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
> -----
>
> src/CMakeLists.txt 50f26be
> src/assistants/advancedplot/CMakeLists.txt 53da352
> src/assistants/advancedplot/advancedplotassistant.cpp a1a21ae
> src/assistants/differentiate/CMakeLists.txt 3c722a1
> src/assistants/differentiate/differentiateassistant.cpp c8bafb1
> src/assistants/importpackage/CMakeLists.txt 3db01e2
> src/assistants/importpackage/importpackageassistant.cpp e0a9b50
> src/assistants/integrate/CMakeLists.txt 23d97fc
> src/assistants/integrate/integrateassistant.cpp 601c6b2
> src/assistants/linearalgebra/creatematrix/CMakeLists.txt 8829d06
> src/assistants/linearalgebra/creatematrix/creatematrixassistant.cpp 3336604
> src/assistants/linearalgebra/eigenvalues/CMakeLists.txt b487099
> src/assistants/linearalgebra/eigenvalues/eigenvaluesassistant.cpp e4f0cd9
> src/assistants/linearalgebra/eigenvectors/CMakeLists.txt 4c6d086
> src/assistants/linearalgebra/eigenvectors/eigenvectorsassistant.cpp d8e02b2
> src/assistants/linearalgebra/invertmatrix/CMakeLists.txt 7e19591
> src/assistants/linearalgebra/invertmatrix/invertmatrixassistant.cpp 9799c6d
> src/assistants/plot2d/CMakeLists.txt 2b02874
> src/assistants/plot2d/plot2dassistant.cpp 11d9db8
> src/assistants/plot3d/CMakeLists.txt bbcac18
> src/assistants/plot3d/plot3dassistant.cpp 6b2e764
> src/assistants/runscript/CMakeLists.txt 280a237
> src/assistants/runscript/runscriptassistant.cpp bb8147d
> src/assistants/solve/CMakeLists.txt 2c25598
> src/assistants/solve/solveassistant.cpp 7ad1254
> src/backends/R/CMakeLists.txt 5e44b3c
> src/backends/R/rbackend.cpp a0d9e6a
> src/backends/kalgebra/CMakeLists.txt 46a5440
> src/backends/kalgebra/kalgebrabackend.cpp 5d7fac9
> src/backends/lua/CMakeLists.txt 082f37b
> src/backends/lua/luabackend.cpp 30e258e
> src/backends/maxima/CMakeLists.txt ca48d90
> src/backends/maxima/maximabackend.cpp 86843ef
> src/backends/null/CMakeLists.txt 69ffff3
> src/backends/null/nullbackend.cpp 602fd49
> src/backends/octave/CMakeLists.txt ee3ea92
> src/backends/octave/octavebackend.cpp 9842364
> src/backends/python2/CMakeLists.txt 02115ee
> src/backends/python2/python2backend.cpp 61662ff
> src/backends/python3/CMakeLists.txt 6937480
> src/backends/python3/python3backend.cpp c83f631
> src/backends/qalculate/CMakeLists.txt e0f1c3a
> src/backends/qalculate/plotassistant/CMakeLists.txt efdd2d2
> src/backends/qalculate/plotassistant/qalculateplotassistant.cpp 1d0ae83
> src/backends/qalculate/qalculatebackend.cpp da866ab
> src/backends/sage/CMakeLists.txt 131ad07
> src/backends/sage/sagebackend.cpp b1a1ef5
> src/backends/scilab/CMakeLists.txt 4ce8200
> src/backends/scilab/scilabbackend.cpp 0d47595
> src/cantor_part.cpp 2e3d36d
> 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/helppanel/CMakeLists.txt d8f785f
> src/panelplugins/helppanel/helppanelplugin.cpp 4611576
> src/panelplugins/variablemgr/CMakeLists.txt 88f66d1
> src/panelplugins/variablemgr/variablemanagerplugin.cpp 6a7b448
>
> 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/20150624/a5599c63/attachment-0001.html>
More information about the kde-edu
mailing list