[Clam-devel] Re: [pksampler-devel] CLAM and PK widgets

Patrick Stinson patrickkidd at gmail.com
Wed Apr 11 17:25:32 PDT 2007


Are you working on a project written in python? If so, I would suggest
that you keep as much code in python as possible!

I developed an interesting way to do this in designer in C++. It is
kind of complicated, though.

I have a basic subclass for each standard widget like knob and button.
They all have myStyle, myObject, and myValue (not the real names - the
real names have our code name in them), string properties declared
with Q_PROPERTY. When a plugin widget is loaded, the host wrapper
checks all children with QWidget::findChildren() that have the myStyle
property, and creates the appropriate style and sets it on the widget.
It took me a while to write the styles, but know that I know the
proper enums and virtual functions (hint: read qwindowsstyle.cpp and
qcommonstyle.cpp for QWidget subclass usage, in that order) it's
rpetty easy to write a style.

PyQt doesn't support QStyle subclasses because of a casting problem -
that's why I wrote my simple custom classes. My classes expect the
pixmaps to be in a certain format (not so unreasonable), and the
subclasses are all centered around a pythonic way to set a pixmap path
on a widget easily. I don't know how this integrates into your
project.

What are your requirements for your widgets? do you just want to
display pixmaps widgets from a designer form? You can do whatever you
want with my code, just leave a reference somewhere that says you
learned something from me so I can get hired again when I quit my
current job.

On 4/11/07, David García Garzón <dgarcia at iua.upf.edu> wrote:
> Hi, patrick and any one on the list.
>
> I am working on a C++ designer plugin version of pk widgets to integrate them
> with CLAM audio application prototyping framework. The framework allows you
> to visually build audio applications by prototyping the audio core with a
> patch tool and the interface with Qt Designer.
>
> I just ported some of the pkwidgets: a generic button and a generic slider.
> Both offer properties to base pixmap from the designer interface. [2] They
> really look nice!!
>
> I am open to any collaboration, to split the widgets from CLAM as an
> independent library or check the new PyQt4 method to build plugins in python
> (published today!). I know we also share some interests on VST/Qt integration
> so drop us a line.
>
>
> --
> David García Garzón
> (Work) dgarcia at iua dot upf anotherdot es
> (Home) vokimon at telefonica adot net
> http://www.iua.upf.edu/~dgarcia
>
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share your
> opinions on IT & business topics through brief surveys-and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> pksampler-devel mailing list
> pksampler-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pksampler-devel
>
>
>


-- 
Patrick Kidd Stinson
http://www.patrickkidd.com/
http://pkaudio.sourceforge.net/
http://pksampler.sourceforge.net/




More information about the clam-devel mailing list