Bug 396854

Summary: Need C++ class capable of creating, reading and modifying KST session files
Product: [Applications] kst Reporter: Jim Henderson <jim.henderson>
Component: scriptingAssignee: kst
Status: RESOLVED WORKSFORME    
Severity: normal CC: netterfield
Priority: NOR    
Version: 2.0.8   
Target Milestone: ---   
Platform: Microsoft Windows   
OS: Microsoft Windows   
Latest Commit: Version Fixed In:

Description Jim Henderson 2018-07-25 17:49:52 UTC
KST command line options are insufficient to fully control the formatting of data rendered by KST.  In many cases, KST provides a means of formatting the rendering to suit preferences, but only through manual use of internal dialogs and menu options. 

A means of programatically creating, modifying and reading KST session files is needed.  Providing C++ source for a class capable of manipulating KST session files would be ideal for my purposes.  

Alternately, if documentation were available detailing the KST session file format, I could author such a class for general release.  

In a similar vein, it would be convenient to remotely configure and control KST via a named pipe or other communications path.  This would eliminate the need for generation of KST session files for many applications which treat KST as a visualization extension.
Comment 1 Netterfield 2018-08-29 18:28:50 UTC
Another approach would be to use pykst to create sessions.  It is much more powerful than the command line.

links to the package and the documentation is at the bottom of 
https://kst-plot.kde.org/

Let me know if this looks like it will do the job for you.
Comment 2 Netterfield 2018-09-28 22:41:53 UTC
Looking at the request again, I see that the requested feature ("remotely configure and control Kst") does in fact exist through the pykst python bindings.

It is also possible for C++ code to control kst from a C++ program with the interface used by the pykst python bindings: talking to a running kst session with a QLocalSocket.  The only problem is that the second is not documented, except by reading the pykst.py bindings (which actually isn't too bad).

If neither of these will work, or if you are having problems making these work, let me know.  I am closing the bug in the meantime.