Commit Graph

21 Commits

Author SHA1 Message Date
Aaron J. Seigo
78b83142ad consistent signals at the end of all animations and ties QObject lifespan (when available) to all the animations including elementAnimation. Also prevents multiple connections to the destroyed slots (harmless, just cycle wasting) and mutes some remaining debug statements.
RB:131

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=775010
2008-02-14 17:09:00 +00:00
Aaron J. Seigo
fa490e10a8 watch for object destruction. right now we only do this if the QGrahpicsItem itself is a QObject. however, the structs now hold onto a QObject* so this opens the door to attaching an animation to the lifespan of an arbitrary QObject. could be quite useful in future.
BUG:157647

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=774360
2008-02-13 04:06:41 +00:00
Aaron J. Seigo
0dfb81a617 BINARY INCOMPATIBLE CHANGES
* const correctness in Animator
* remove the vestiges of the FrameAppear stuff in Phase we never used
* introduce FastSlide[In|Out]
* put the duration in the hands of the Animator with duration methods

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=765004
2008-01-22 23:37:48 +00:00
Aaron J. Seigo
603130699a since signals/slots are pretty literal in their signatures, use the fully qualified name of the enum .. namespaces and all. makes this more easily usable from the outside
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=728721
2007-10-24 02:08:09 +00:00
Aaron J. Seigo
6b3764fa5f make this a bit more clear in the documentation as it even caught me =)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=724612
2007-10-12 20:27:51 +00:00
Aaron J. Seigo
7d29f75f4a * memory leak: delete all the outstanding movements
* add the ability to use Phase's coordinated tick for custom animations

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=724392
2007-10-12 07:25:24 +00:00
Aaron J. Seigo
e9517a938b remove dead code; background rendering ended up somewhere completely different
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=723925
2007-10-11 04:43:13 +00:00
Aaron J. Seigo
e0f831373c SVN_SILENT: add "or later" clause. cleared with copyright holders, except for rich moore's ui loader which i need to ask him for permission for first.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712549
2007-09-14 19:06:18 +00:00
Aaron J. Seigo
db4a7ebe61 copyright cleanups:
* Copyright (C) -> Copyright
* add "or later" clause to files that i have the sole copyright on
* add current year (2007) to my copyrights where it was missing

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696946
2007-08-06 11:20:02 +00:00
Richard J. Moore
705b7839f9 - Prepare for scripting
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696314
2007-08-04 12:46:29 +00:00
Aaron J. Seigo
af043ca588 too tired to do much of anything else, i figured i could fix some ebn issues
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=690173
2007-07-20 08:06:27 +00:00
Alexis Ménard
cf889b289b +add a signal when a movement animation is finished
+modify applet solid notifier to disappear when the notification is finished 



svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=689154
2007-07-17 19:23:33 +00:00
Pino Toscano
1633d8d791 use QtModule/QFoo includes
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=687972
2007-07-14 22:40:00 +00:00
Alexis Ménard
fee185b328 +Add slideIn slideDown animation in plasma
Mail me if you want a simple applet wich use this animation

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=684432
2007-07-06 16:26:48 +00:00
Aaron J. Seigo
33d25b39d8 * sketch in movement animations
* add slideIn, slideOut
* change the name of the progress parameters in the animator header to
  reflect how they are actually used these days

CCMAIL:darktears31@gmail.com

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=683150
2007-07-04 09:36:50 +00:00
Aaron J. Seigo
45ee70aa26 * startElementAnimation -> animateElement
* animate -> animateItem
* frames -> framesPerSecond
* use the curve shape as provided by the animator
* get rid of the use of QTimeLine
    * this cuts down on the number of objects and timer events dramatically in the case of multiple simultaneous animations
    * all animations now update on the same tick
    * simplifies the management code a -lot- though now i need to do a lot more of the math

TODO: implement interval updating based on the curve shape; otherwise, works pretty well =)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=679871
2007-06-25 06:01:34 +00:00
Aaron J. Seigo
30f07bb62c add the concept of element animation. right now it only provides support for modifying a pixmap; positioning needs to be added, but this at least shows that it works(tm)
the idea is that you register an element animation and get back an id. you can associate a pixmap with that id and off you go. the item gets update() calls whenever the anim changes and you can fetch your precious little pixmap back with a call to animationResult.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=677782
2007-06-19 21:56:03 +00:00
Aaron J. Seigo
fab8953ccb * provide a Phase singleton
* use it in Corona

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=676831
2007-06-17 20:05:43 +00:00
Aaron J. Seigo
13a83e87f8 * add a set of "completed" methods to the animations so the animator can clean up
* instead of passing in the frame, pass in the % completed in a qreal (0.0 - 1.0), allowing the Animator to remain innocent of animation time elapse
* call the Animator immediately with 0% to allow it to start immediately and do setup

svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=673398
2007-06-10 07:09:07 +00:00
Aaron J. Seigo
eb330b2a79 * cleanup includes for external usage
* include KGenericFactory so subclasses don't have to
* move the plugin macro to Animator where it belongs

svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=673394
2007-06-10 06:02:38 +00:00
Aaron J. Seigo
2894a3403b initial 284LOC sketch of phase/animator. this includes the "null" animator base class, the phase manager and plugin loader.
tomorrow: an animator!

svn path=/trunk/KDE/kdebase/workspace/lib/plasma/; revision=672771
2007-06-08 05:24:19 +00:00