Thanks to majkinetor which found a gold mine of custom Windows controls written in assembly language: they are small, they are fast, they are mean!
In the forum pointed out in RaGrid - Extreme Grid control, I found an AniGIF control and I tried to write a wrapper for it. Here is the result.
I used four Gif files for the demo, links below. The first two were "stolen" to deviantART, credit goes to them and their creators. The last one is static, on purpose.
<!-- m -->https://ahknet.autoh...ages/pacman.gif<!-- m -->
<!-- m -->https://ahknet.autoh...es/teleport.gif<!-- m -->
<!-- m -->https://ahknet.autoh...Flag_France.gif<!-- m -->
<!-- m -->https://ahknet.autoh...mages/Earth.gif<!-- m -->
[EDIT] Changed the script to automatically download them if not in the script dir.
And of course, you need the DLL, which can be found at the WinAsm site: <!-- m -->http://www.winasm.ne... ... w&iden=150<!-- m -->
[EDIT] The above link is outdated but it is freely available, so I leave it. You have to register to the WinAsm forum to get the latest file, so I uploaded the DLL to my AutoHotkey.net account (automatically downloaded by the script, too). <!-- m -->https://ahknet.autoh...iLho/AniGIF.dll<!-- m -->
The last problem is that the displayed Gifs lack transparency. I don't know if I must add a style to change this, or if that's a limitation of the library.
[EDIT] I found out, I must not take the public zip file but I had to register to the forum to get the latest file from the topic... This one adds the WAGM_SETBKCOLOR and transparency!
For your convenience, I provide the DLL, hoping the author doesn't mind. I copy his copyright in the source, since I have no About box...
;|AniGIF is a copyright of Antonis Kyprianou. |
;|You can use AniGIF for NON commercial purposes provided you |
;|have the following information on your application's about box: |
;|AniGIF control is copyright of Antonis Kyprianou (<!-- m -->http://www.winasm.net<!-- m -->)|
;|You need my WRITTEN permission to use AniGIF in commercial applications |
[EDIT] Better encapsulation (everything in functions), styles given as strings, hyperlink working in the demo.
// File/Project history:
1.03.000 -- 2007/05/17 (PL) -- Total encapsulation.
1.02.000 -- 2007/05/16 (PL) -- Changed functions names (thanks majkinetor), added more wrappers, freed correctly DLL.
1.01.000 -- 2007/05/16 (PL) -- Update to 220.127.116.11 with WAGM_SETBKCOLOR.
1.00.000 -- 2007/05/16 (PL) -- Creation.