Professional UI Solutions
Site Map   /  Register


Please Log In to post a new message or reply to an existing one. If you are not registered, please register.

NOTE: Some forums may be read-only if you are not currently subscribed to our technical support services.

Forums » Prof-UIS General Discussion » Help with CExtAnimationXXX classes Collapse All
Subject Author Date
Jean-Yves Tremblay Oct 31, 2007 - 6:03 AM


I have a custom control, similar to CExtLabel, in which I would like to perform a blending transition between 2 images.
I was wondering if the classes CExtAnimationXXX are intended to this purpose.
If so, could you please provide me with some informations on how to use them ?

Thank you,


Technical Support Nov 1, 2007 - 12:47 PM

The CExtAnimationSite class helps window to make parts of its surface animated. The CExtAnimationClient class implements each animated part. The CExtAnimationSingleton class is convenient for implementing alpha-animated control which contains only one animated part (typically entire window) like push button or hyperlink control. The CExtAnimationParameters class contains parameters of one animated part. If you need simple button-like animated control, then you can simply create your own the CExtButton-derived class and implement the CExtButton::_RenderImpl() internal virtual method which paints button content. Everything else including animation-related details will work automatically. If you need more complex case like toolbar or ribbon bar, then you need to implement parts of your control in standalone classes and derive them from the CExtAnimationClient class. This more complex case will be similar to the CExtToolControlBar class in Prof-UIS which is toolbar window and animation site at the same time. The CExtBarButton class implements non-HWND based toolbar button, but it’s animation client at the same time. Each toolbar button detects its hover/pressing events manually and starts animation process in these cases. In fact, animation is used in ribbon bar only (it’s kind of toolbar) and in Office 2007 themes only. But it’s possible to make toolbar/menu bar buttons animated in any theme if toolbar buttons will return non-empty animation parameters from the CExtBarButton::AnimationClient_OnQueryAnimationParameters() virtual method.