More methods for QProcess class

• Aug 15, 2018 - 18:17
Reported version
3.0
Priority
P2 - Medium
Type
Plugins
Severity
S5 - Suggestion
Status
active
Regression
No
Workaround
No
Project

The QProcess class is a Qt C++ library that has been exposed to QML through the MuseScore framework. It is indeed really useful, but just three methods have been exposed. I suggest that the following should be added:

  • exitStatus()
  • workingDirectory()
  • state()
  • setReadChannel()
  • readChannel()

In general, if the process approach is strengthened, then any available language could theoretically be used for plugin development, making easier building plugins than using QML. One could create a plugin in Java or Python using files exported by MuseScore: this paves the way for many new plugins, without losing in portability and gaining in popularity of the languages.


Comments

Severity S5 - Suggestion S3 - Major

I second that request. Plugins created this way will often (always?) not be cross-platform though.

For example using Musescore2 I have used QProcess to call some homebrew Python scripts for my own use, on my Linux system, quite useful for me but probably usesless on someone else's computer.

In the Musescore3 appimage nightly versions that I have tried QProcess doesn't seem to work anymore. The run.qml example also isn't working anymore. Has QProcess been removed/disabled in Musescore3 development version? Please bring it back!

Musescore 3.0.0 unstable Nightly Build, revision 9dac228
I'm using Linux Fedora 28