New class KWidgetBlendAnimation

Riccardo Iaconelli riccardo at kde.org
Fri Feb 1 20:29:05 GMT 2008


On Jan 31, 2008 9:54 PM, Matthias Kretz <kretz at kde.org> wrote:

> On Thursday 31 January 2008, Frerich Raabe wrote:
> > Hi Matthias,
> >
> > Matthias Kretz schrieb:
> > > while playing with possible UI effects I think I found a rather useful
> > > one: Fade UI changes.
> >
> > [..]
> >
> > > The class is attached. Please comment on the naming, usefulness, dox
> and
> > > whether we want to have it in kdeui for 4.1. (I want to use it in my
> > > Phonon KCM unless I can be convinced that there's a better UI hint
> than
> > > this animation).
> >
> > I didn't build your class but I just looked at the code a bit and
> wondered:
> >
> > Why do you grab a pixmap of the to-be-changed-widget in the constructor
> > (and then install an event filter on the widget so that you get all
> > paint events so you can update your pixmap)?
> >
> > Isn't it possible to just grab a pixmap within start()? Hmm, you'd need
> > to show something until start() is called. Maybe you could hide()
> > yourself, or make yourself transparent, or resize to 0x0 pixels or so?
>
> I tried many things but so far this is the only way to reliably get a
> pixmap
> of the updated widget. Calling grabWidget in start() gives the old pixmap,
> calling grabWidget the first time paintEvent is called also gives the old
> pixmap.
>
> I did not try to hide the animation widget as I don't want to have any
> flicker. The widget that gets grabbed may not draw its updated version on
> screen until the animation is over.


With Qt 4.4 you get no flickering on those hide()s. That's the alien widgets
fun. =)


> QPainter::setRedirected is pretty useless, too. It would be so easy to
> just
> redirect all paints of the original widget into the pixmap. But that
> doesn't
> work at all.



Bye,
-Riccardo
-- 
GPG key:
3D0F6376
When encrypting, please encrypt also for this subkey:
9EBD7FE1
-----
Pace Peace Paix Paz Frieden Pax Pokój Friður Fred Béke 和平
Hasiti Lapé Hetep Malu Mир Wolakota Santiphap Irini Peoch
Shanti Vrede Baris Rój Mír Taika Rongo Sulh Mir Py'guapy 평화
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20080201/ed79dde6/attachment.htm>


More information about the kde-core-devel mailing list