[PD] gui toolkits
danomatika at gmail.com
Wed Dec 24 07:35:56 CET 2014
> On Dec 24, 2014, at 12:18 AM, pd-list-request at lists.iem.at wrote:
> Of course if someone with the knowledge and energy to do this the "right way" has any suggestions, I'm all ears. I have the inkling that if I could employ a full-time dev to do my bidding then Qt Quick would the "right way" to go-- it's in Debian, is cross-platform, well-documented, and it certainly has enough features for Pd's canvas editing.
Actually 2 things come to mind:
* Cairo <http://cairographics.org/> for rendering and something else like QT or a layer below tk for the chrome. We use cairo for pdf rendering in OpenFrameworks, among a few other things.
* Juce <http://www.juce.com/>: It’s aimed at audio, cross platform, and Max has used it since Max 5. I used it at one place I worked and it can do quite alot actually.
> But I don't know how to retrofit a c program like Pd with Qt, nor how to replace Pd's current string-based communication with whatever one is supposed to use to do that.
I guess you don’t really retrofit the existing Pd, but rebuild it. Chris and I have done this with DroidParty & PdParty to some small degree using libpd. Sending messages and samples to and from the dsp engine is working. If that could be expanded to the requisite GUI calls, then bringing patch editing could be next. libpd currently has “sendFloat”, “sendSymbol” etc, off the top of my head we could add something like “createCanvas” which returns a canvas pointer, etc. In the case of libpd, you don’t communicate with the dsp engine over a socket but by function calls. Obviously you could use a socket and pass data along from a separate GUI which then calls the functions.
I’m just musing here that it’d be nice to abstract the dsp graph, canvas, etc within libpd. That would at least make it possible to support patch creation and editing in PdParty, etc without rolling something myself. If did have to, I’d rather do it in a generic way inside libpd so Chris could use it DroidParty or I could add it to ofxPd, etc.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Pd-list