Plasma new animation classes: video

December 11, 2009 at 11:45 am 8 comments

As promised in an earlier post, here goes the video showing the kdeexample plasmoids, showing the current pre-made plasma animations (pulse, grow, fade, zoom, slide, 2d rotation, stacked rotation).

Those are based on QAbstractAnimation, allowing the libplasma user to access a common set of stock animations and mesh it together with his own animations. Pay attention that this is *not* a framework, you should compare it to QAbstractAnimation based classes in Qt, like QPropertyAnimation and its friends.

Smoothness is not great thanks to the video screen capture software (I increased the duration of the animations to make it easier to follow them). The animations can run in both directions, so it makes it easier to return a widget to its initial state (e.g. opacity, grow, rotation) but will not make sense for all animations (e.g. pulse). This is done by just changing the animation direction (Forward and Backward) property.

In the video, each button will run its own animation when clicked and later all the animations will run inside of an animation group. You can download it in ogg format, or watch it below:

[ ?posts_id=2978293&dest=-1]

The video is a slightly changed version of kdeexamples C++ plasmoid code.


Entry filed under: Uncategorized.

Plasma new animation classes Sweet dreams are made of… chromed metal!

8 Comments Add your own

  • 1. Milian Wolff  |  December 11, 2009 at 1:52 pm

    ot: the screencast shows once more that inclined lines are stil not antialiased properly… that’s been there since 4.0 – any chance this might ever be fixed? Is this a Qt issue?

    • 2. savago  |  December 11, 2009 at 2:42 pm


      Good point! Maybe a troll reading it could comment?


      • 3. Martin  |  December 11, 2009 at 3:13 pm

        When every plasmoid will be new thread? Animation’s like that slow wown my other plasmoids like analog clocks.

      • 4. savago  |  December 11, 2009 at 6:11 pm

        No, it doesn’t slow down the second pointer in analog clock (download kde trunk and try for yourself or wait for KDE SC 4.4).



      • 5. savago  |  December 11, 2009 at 6:10 pm


        A plasma devel friend commented with me that there is flag in QPainter that antialises it (but is not used for performance reasons). In the case of stacked rotation, it will run way faster than in the video, so users will hardly notice the aliasing.



      • 6. Alexis Menard  |  December 12, 2009 at 2:58 pm

        Not sure if the pushbutton is still a proxywidget and if it’s the case you don’t get sub pixel precision because it’s a QWidget limitation. It’s even more ugly when you zoom in the proxy (or rotating it). Checkout the widget ng project we are working on it bringing native widgets in QGV….

    • 8. savago  |  December 14, 2009 at 6:55 pm

      Just a comment: plasma animation classes *don’t* use QPropertyAnimation.

      We directly animate the properties.




Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

Trackback this post  |  Subscribe to the comments via RSS Feed


December 2009
« Nov   Jan »

Most Recent Posts

%d bloggers like this: