SWT Animation Toolkit Preview
I’m currently working on a SWT Animation Toolkit (I named it SAT) which goal is to allow adding motion effects to SWT applications.
The current version supports :
- Setting alpha level on a Shell
- Moving any control
- Resizing any control
- Adding Smooth scrolling to Shell, StyledText, Canvas or any SWT custom widget
These actions use easing functions, which are well known by Flash users. Available functions are Linear, Exponential, Elastic, Bounce.
Usage :
new SmoothAction().move(shell, shell.getLocation().x, target, 1000, new BounceOut());
I uploaded a very simple demo using java webstart which should work on win32-x86, linux-gtk-x86 and OSX Leopard : SAT Demo (JavaWebstart)
On other platforms, you’ll have to run it from sources, sorry.
Update : view SAT Demo on youtube, instead of eating my bandwidth
(Not visible on PlanetEclipse)
The code is available on SVN :
http://sharemedia.svn.sourceforge.net/viewvc/sharemedia/trunk/
Projects :
org.sharemedia.ui.sat/
org.sharemedia.ui.sat.easing/
org.sharemedia.ui.sat.demo/
The demo is using the Nebula Gallery widget, available on eclipse’s cvs.
My RCP photo manager is already using this toolkit : windows fade-in and widgets appear smoothly in fullscreen mode. ![]()
I’m not sure if this toolkit would fit in Nebula, probably not, but it would be nice if Eclipse plugins and applications could use fade effects for notifications (Mylyn, RSSOwl) or Smooth scrolling (Text editors).
License is EPL, even if the EPL header is not present on all files. Several easing equations are based on Robert Penner’s easing equations for FlashMX, distributed under the BSD license.
Update : related SWT bugs : 220173, 223637,220175. You can vote for them, if you want to.
Update 2 : This toolkit is now available in the Eclipse Nebula repository. See package org.eclipse.nebula.animation in the Nebula Gallery widget : 0.5.2 release notes, Javadoc.







