Hallo!
here's some info because Tim prefers to have this stuff on the list, as we're talking about making nontrivial changes to devel_0_39.
thanks for sharing the interesting discussion ... :)
oh ... btw, what do you think of _completely_ separating dsp core and gui? basically kicking out all of pd's gui ...
yes, yes... just started to do the same thing (but didn't post to the list yet, because have not much time at the moment - but I will continue in september or so ...)
i'm suggesting this, since georg holzmann from graz wants to start with a qt gui, you're going to work on a tcl gui, thomas grill is working on an opengl gui ... so i'm thinking of a libpd, that can work with all different guis ...
I want to allow multiple GUI engine, and even, several GUIs at the same time... as long as no-one wants to use the old GUI, that we keep for compatibility with anything that happens to not work with the desire.tk GUI. My idea of it is like this:
In devel_0_39, you can pick between (1) old Pd GUI (2) new Pd GUI, in which the server gets started first, and then zero-or-more clients get started, in: (2.1) DesireData (2.2) Georg's Qt GUI (2.3) Mamalala's Qt GUI (2.4) Thomas Grill's OpenGL GUI (2.5) Carmen's Tcl/TkZinc/OpenGL GUI
Those are separate processes, so they don't need to be linked to Pd, and anyway in all of situation (2), the GUI code of the server side gets replaced by just a stub that can accept anything.
sounds great ...
good to hear that we can combine all the efforts ...
some notes to the Qt GUI:
it will be based on Christian Klippel's (Mamalala) karma GUI - ported to Qt4 and some more features ... We also discussed about maybe an embedded (rewritten) Qt-Designer in the patch-editor - where you should be able to build custom guis (and interpret the .ui files - or "compile" GUI-libraries for better performance) ... ... and of course additional features like a property-editor for all objects, alpha-blending, zooming in patches, layers for the GUI-objects (like in graphic-programs), qt undo/redo framework, maybe buildin state saving of all object with interpolation beween states, a lot of custom canvas items (polygons, ellipse, images, ... - to maybe build 2D-games;), ...
We already did some discussions on how to interface with pd ... propably with a proxy object, which catches all the signal&slot stuff from Qt and communicates with the "pd engine" ...
Anyway, the important thing is, i think, to seperate the "pd engine" (or libpd) from the GUI part - indepedent of which Qt, OpenGl, Tcl ... GUI we might use in future ... and it's good to hear that there are some people interested in that ... :)
LG Georg