[PD] Re: [PD-dev] PD canvas interaction - flext GUI

Christian Klippel ck at mamalala.de
Wed Oct 16 20:18:00 CEST 2002


hi all,

Am Mittwoch, 16. Oktober 2002 19:12 schrieb guenter geiger:
[...]
> In my opinion more of the  GUI stuff should be done on the GUI side,
> and not from within pd,... but I might be completely off topic with this ?
>
> Guenter
>
[...]

as some people might already know, im working on a new gui for apps like
pd, jmax, etc...

i choosed to use the qt toolkit for serveral reasons :
it is multi platform (unix, os-x, windows), fast, good looking and it has a 
lot of functionality. another big point in choosing qt is that it uses a 
similar paradigm as tools like pd/jmax/....

you create widgets which are connected together via slots/signals.
so you can make (for example) a number box and a slider, and then you
say something like "connect(slider, SIGNAL( changed() ), numbox, SLOT( 
setnum() ) )"

it is fairly easy to build own widgets...... the one and only "problem" is, 
there is only the unix/x11 version available for free (in sense of gpl 
software). but since i expect to hav a license for the os-x and win platform
at christmas, it should be no problem to create legal binarys for those 
platforms.

another big advantage is that stuff like network i/o and file i/o is already
encapsulated into that lib. so the porting would be really only a recompile
on the target platform.

currently i am more or less in the planning phase, and currently i dont have
that much time (which will change in some weeks). so i can not show you
any usable stuff currently. but for those who might be interrested in how it
can look, see http://mamalala.de/karma-preview.tgz
it is somewhat like a "playable screenshot", and it is for linux.
its the whole kdevelop project, so it is rather huge. you need qt3 to get
it compiled, kdevelop is not really neccesary.

some words of how it is designed :
if you move, resize, etc. an object, all that is handled by the object
itself. the result is then sent to the "server" which then has to dispatch
the message to the real server. an object can either have a fixed drawing
routine (as it is currently) , or it can interpret drawing commands (like 
those from pd, not done yet)
the in/outlets are also widgets, and not drawn by the object itself. the 
current code does not show any in/outlets, but the code is there (its just 
that the object doesnt create a visible in/outlet yet)

would be nice to hear from you what you all think about that idea ...

keep in mind, its nothing usefull yet, just a playable screenshot ... ;)

if someone is interrested in helping me with that, you are welcome ...

greets,

chris





More information about the Pd-list mailing list