[Clam-devel] Re: QSynth Knobs

David García Garzón dgarcia at iua.upf.edu
Tue Apr 17 07:00:58 PDT 2007


On Tuesday 17 April 2007 14:08:05 Pau Arumi wrote:
> Hi Rui!
>
> En/na Rui Nuno Capela ha escrit:
> > Hi David,
> >
> > Good to hear from you, gain since last night on LAC2007, Berlin.
> >
> > On Mon, April 16, 2007 23:38, David Garcia Garzon wrote:
> >> Hi, Rui. I liked a lot the knobs you are using for qsynth. The widget
> >> which was adapted (and enhanced?) from Chris Canam Rosegarden code. I
> >> integrated it in CLAM and now is a widget more you can use to prototype
> >> applications. Apart from porting it to Qt4 i also did some enhancements:
> >
> > Credit should also be due to Pedro Lopez-Cabanillas who brought the
> > original Rosegarden knobs to Qsynth in the first place ;) He's being CCed
> > here too.
>
> Really? The world is so small! We met him once here in Barcelona
> like two years ago. Hi Pedro! are you still around Barcelona?

Yes i saw Pedro on the copyright notice :-) I kept that notice as is I didn't 
even extended it to include us. Maybe I should.

> >> * Knob and shadow gradients use QGradient classes
> >> * Pixmap cache was removed. Maybe i did something wrong on the port but
> >> the widget was very sludgy until it generated all the possible
> >> possitions and on resizing was worst. Also qt4 does double buffer by
> >> itself -> no need for pixmap at all. * The scale has also a gradient
> >> * To match mouse gestures center, i had to center the knob drawing on
> >> the widget area when not square * Most of the sizes and positions
> >> expressed as formulas and variables on the top and used later. This will
> >> ease any further change on proportions and dimensions. * Of course, it
> >> is integrated as a plugin for designer
> >>
> >> I still have to do some enhancements, such allowing more interaction
> >> modes as option (such the one Chris implements in his current knob
> >> version). Anyway if you are interested, you can find the code here:
> >> http://iua-share.upf.edu/svn/clam/trunk/NetworkEditor/src/monitors/QSynt
> >>h Knob.cxx
> >> http://iua-share.upf.edu/svn/clam/trunk/NetworkEditor/src/monitors/QSynt
> >>hK nob.hxx
> >>
> >> I also took some screenshot of their current look:
> >> http://clam.iua.upf.edu/wikis/clam/index.php/Development_screenshots
> >
> > Yep, they look pretty cute, indeed. Thanks for the notice. As I'm nearing
> > the edge on starting the Qt4 port of all my Q-suite (Qsynth, QjackCtl and
> > Qsampler)

Qt4 port at last! That's great news. So we should hurry up to adapt our 
NetworkCanvas to run Jack so you can integrate it. ;-)

> > those new knob components will be welcome back rightly, 
> > specially on Qsynth, of course ;)

I still have some pending enhancements. Tonight i added color properties and 
shadows to the pointer. But i think that I also have to add some new features 
Chris Cannam added to his version of the widget. Mostly cartesian (vs. polar) 
mouse control and make it configurable thru an enum property. 

Btw, I didn't understand which are the benefits of the current default 
implementation of the mouse interaction versus the QDial one. Could (any of) 
you explain it to me?

> >> You can see on the gallery i also ported PKSampler pixmap based widgets.
> >> Together with CLAM DSP data views it is starting to be a powerfull audio
> >> toolbox for QtDesigner which may have sense to be distributed
> >> independently of CLAM.
> >
> > I agree and that should be awesome, that is, making those widgets stand
> > alone and actually as Qt-designer plug-ins.
>
> AFAKT, these two things are already done. Right, David?
> What is missing is packaging them as separated lib for better
> reuse.

Yes, you are right. Now the plugin is linking against CLAM because we are 
reusing build settings but i think it has no real dependency on it. Also, all 
those widgets are working as designer plugin. All prototypes on the 
snapshots, are built with designer but the ones of the NetworkEditor.

David.







More information about the clam-devel mailing list