[kde-edu]: Review Request: Add variable management panel

Alexander Rieder alexanderrieder at gmail.com
Wed Sep 15 20:03:14 CEST 2010


On Wednesday 15 September 2010 02:39:28 Aleix Pol wrote:
> I guess the patch is fine, I don't really understand why don't you just let
> the backend to provide a model with the variables values and so on.
> You can assert some runtime restrictions to it, if you feel it's necessary
> but I think it would be less code in both sides to implement and a more
> flexible way. (it's how it's implemented in KAlgebra at least).
> 
> Cheers!
> Aleix

I really didn't think about that. (I've never done Model-View stuff before)
Itt does sound like a lot simpler/nicer possibility. I'll look into it, thanks 
for the hint.

regards,
Alexander

> 
> On Wed, Sep 15, 2010 at 1:28 AM, Alexander Rieder
> <alexanderrieder at gmail.com
> 
> > wrote:
> >    This is an automatically generated e-mail. To reply, visit:
> > http://svn.reviewboard.kde.org/r/5354/
> > 
> >   Review request for KDE-Edu.
> > 
> > By Alexander Rieder.
> > Description
> > 
> > Implement basics for a VariableManager panel.
> > This change is rather big, as it involves some completely new plugin
> > interfaces to make it as easy as possible to add similar things later.
> > This patch only contains a simple GUI and a dummy implementation in the
> > NullBackend. (to test it start cantor with --backend=nullbackend), and
> > of course the new interfaces. First it introduces Extensions for the
> > Session (so far they were only for the Backend) to allow optional hooks
> > into the workings inside the session. Also it introduces so called
> > PanelPlugins, these are plugins that create widgets that are shown in
> > the side panel depending on the exported extensions by the session. The
> > current HelpPanel is turned into such a panel, and the new
> > VariableManager is one too. On the backend side, one only has to
> > implement the VariableManagerExtension, and emit the signals
> > appropriately/implement the functions there. I would really like some
> > feedback on this API (for both VariableManagerExtension and PanelPlugin
> > side), please have a look, and possibly suggest better namings than
> > PanelPlugin or SessionExtension
> > 
> >   Testing
> > 
> > This is mostly a preview for the new APIs, but all the functionality
> > should work as it used to (I didn't notice any regressions). The
> > variable management works for the dummy implementation in the
> > NullBackend
> > 
> >   Diffs
> >   
> >    - /trunk/KDE/kdeedu/cantor/src/CMakeLists.txt (1174987)
> >    - /trunk/KDE/kdeedu/cantor/src/backends/null/CMakeLists.txt (1174987)
> >    - /trunk/KDE/kdeedu/cantor/src/backends/null/nullsession.h (1174987)
> >    - /trunk/KDE/kdeedu/cantor/src/backends/null/nullsession.cpp (1174987)
> >    -
> >    /trunk/KDE/kdeedu/cantor/src/backends/null/nullvariablemgrextension.h
> >    (PRE-CREATION)
> >    -
> >    /trunk/KDE/kdeedu/cantor/src/backends/null/nullvariablemgrextension.c
> >    pp (PRE-CREATION)
> >    - /trunk/KDE/kdeedu/cantor/src/cantor.h (1174987)
> >    - /trunk/KDE/kdeedu/cantor/src/cantor.cpp (1174987)
> >    - /trunk/KDE/kdeedu/cantor/src/cantor_part.h (1174987)
> >    - /trunk/KDE/kdeedu/cantor/src/cantor_part.cpp (1174987)
> >    - /trunk/KDE/kdeedu/cantor/src/lib/CMakeLists.txt (1174987)
> >    - /trunk/KDE/kdeedu/cantor/src/lib/backend.cpp (1174987)
> >    - /trunk/KDE/kdeedu/cantor/src/lib/cantor_panelplugin.desktop
> >    (PRE-CREATION)
> >    - /trunk/KDE/kdeedu/cantor/src/lib/extensions/variablemgrextension.h
> >    (PRE-CREATION)
> >    - /trunk/KDE/kdeedu/cantor/src/lib/extensions/variablemgrextension.cpp
> >    (PRE-CREATION)
> >    - /trunk/KDE/kdeedu/cantor/src/lib/panelplugin.h (PRE-CREATION)
> >    - /trunk/KDE/kdeedu/cantor/src/lib/panelplugin.cpp (PRE-CREATION)
> >    - /trunk/KDE/kdeedu/cantor/src/lib/panelpluginhandler.h (PRE-CREATION)
> >    - /trunk/KDE/kdeedu/cantor/src/lib/panelpluginhandler.cpp
> >    (PRE-CREATION)
> >    - /trunk/KDE/kdeedu/cantor/src/lib/session.h (1174987)
> >    - /trunk/KDE/kdeedu/cantor/src/lib/session.cpp (1174987)
> >    - /trunk/KDE/kdeedu/cantor/src/lib/sessionextension.h (PRE-CREATION)
> >    - /trunk/KDE/kdeedu/cantor/src/lib/sessionextension.cpp (PRE-CREATION)
> >    - /trunk/KDE/kdeedu/cantor/src/panelplugins/CMakeLists.txt
> >    (PRE-CREATION)
> >    - /trunk/KDE/kdeedu/cantor/src/panelplugins/helppanel/CMakeLists.txt
> >    (PRE-CREATION)
> >    -
> >    /trunk/KDE/kdeedu/cantor/src/panelplugins/helppanel/helppanelplugin.c
> >    pp (PRE-CREATION)
> >    -
> >    /trunk/KDE/kdeedu/cantor/src/panelplugins/helppanel/helppanelplugin.d
> >    esktop (PRE-CREATION)
> >    -
> >    /trunk/KDE/kdeedu/cantor/src/panelplugins/helppanel/helppanelplugin.h
> >    (PRE-CREATION)
> >    - /trunk/KDE/kdeedu/cantor/src/panelplugins/variablemgr/CMakeLists.txt
> >    (PRE-CREATION)
> >    -
> >    /trunk/KDE/kdeedu/cantor/src/panelplugins/variablemgr/variablemanager
> >    plugin.h (PRE-CREATION)
> >    -
> >    /trunk/KDE/kdeedu/cantor/src/panelplugins/variablemgr/variablemanager
> >    plugin.cpp (PRE-CREATION)
> >    -
> >    /trunk/KDE/kdeedu/cantor/src/panelplugins/variablemgr/variablemanager
> >    plugin.desktop (PRE-CREATION)
> >    -
> >    /trunk/KDE/kdeedu/cantor/src/panelplugins/variablemgr/variablemanager
> >    widget.h (PRE-CREATION)
> >    -
> >    /trunk/KDE/kdeedu/cantor/src/panelplugins/variablemgr/variablemanager
> >    widget.cpp (PRE-CREATION)
> >    - /trunk/KDE/kdeedu/cantor/src/worksheet.cpp (1174987)
> > 
> > View Diff <http://svn.reviewboard.kde.org/r/5354/diff/>
> > Screenshots
> > [image: The Variable Manager
> > plugin]<http://svn.reviewboard.kde.org/r/5354/s/503/>
> > 
> > _______________________________________________
> > kde-edu mailing list
> > kde-edu at mail.kde.org
> > https://mail.kde.org/mailman/listinfo/kde-edu


More information about the kde-edu mailing list