Skip to content
Animation framework for Delphi
Branch: master
Clone or download
WladiD AnyiQuack works now also with FMX, at least FMX on Windows. New Slidi…
…ngButtonFMX example to demonstrate the ability.
Latest commit def2341 Jun 15, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
NotificationWindowsFramework Simpler solution for the Win 10 bugfix, when TWinControl descendants … Jun 14, 2019
ThirdPartyLibs - Adding the Unit VCLFlickerReduce.pas from Andreas Hausladen to avoi… Dec 8, 2017
.gitignore Updated .gitignore Mar 22, 2011
AQPControlAnimations.pas New class method TAQ.HasActiveActors and their usage in an example Apr 30, 2019
AQPMessages.pas - Optimizing of the TAQPMessages plugin Dec 18, 2017
AQPSystemTypesAnimations.pas AnyiQuack works now also with FMX, at least FMX on Windows. New Slidi… Jun 14, 2019
AnyiQuack.pas Cosmetic code adjustments Dec 12, 2017 Merge branch 'master' of Dec 26, 2017
_PackExamples.bat _PackExamples.bat uses now 7zip Dec 9, 2017
_clean.bat - Neues Beispiel für die Erstellung eigener Plugins May 26, 2010


Object-(Time-Based-)Batch processing with closures, using the most modern OOP design patterns for Delphi >= 2010. AnyiQuack is ideal for independent and distributed parametric animations, but the exact purpose is not specified.

Features / quack points

  • Most methods operate on the Chain-Pattern
  • Chained by chains or branches of conditional chains
  • Flexible plugin system for unlimited expandability
  • Animation-Plugin for TControl descendants included
  • Rationalized easing concept


  ..., AnyiQuack, AQPControlAnimations;
// Place some buttons and other controls on the form

procedure TForm1.Button1Click(Sender: TObject);
  // Take the form 
    // Takes all children of Form1 recursive (=True)
    // Create a chain with only containing TButton descendants
    // If there are already running animations (on the contained buttons) 
    // in the chain, finish them
    // Create a plugin chain
    // Play a shake animation on all contained buttons
    .ShakeAnimation(1, 10, 2, 5, 300); 
You can’t perform that action at this time.