I wrote an AutoIt script that runs once per second, it detects when EAGLE is the active window, then checks if anything has changed on the screen, then it takes a screen shot of the EAGLE window if the screen has changed. The screen shots are saved with the current date and time.
The idea is that I can have this loop in the background and work on a project, and end up with a nice animation of how the project evolves.
Here I am making a library component from scratch. 25MB GIF animation. http://min.us/mT4zjC8AF
I forgot to give the footprint ">NAME" on the "tName" silkscreen layer, probably forgot some other minor things that I fixed later, so don't take this animation as some sort of tutorial. Note that the capture script isn't smart enough to capture sub dialogs, so it never captured the pin assignment dialog, which took a long time near the end. It also never captured the times when I had to type in anything manually.
The AutoIt script is below, edit it to suit your needs, the folder path may not be automatically created so do that manually.
$winList = WinList()
$winCnt = $winList
For $i = 1 To $winCnt Step 1
If StringInStr($winList[$i], "EAGLE", 1) And (StringInStr($winList[$i], "Board", 1) Or StringInStr($winList[$i], "Schematic", 1) Or StringInStr($winList[$i], "Library", 1)) Then
If WinActive($winList[$i]) Then
$winPosInfo = WinGetPos($winList[$i])
$filePath = "C:/EAGLECaps/" & @YDAY & @HOUR & @MIN & @SEC & ".png"
$curPixChkSum = PixelChecksum($winPosInfo + 150, $winPosInfo + 150, $winPosInfo + $winPosInfo - 150, $winPosInfo + $winPosInfo - 150, 4)
If $curPixChkSum <> $prevPixChkSum Then
_ScreenCapture_Capture($filePath, $winPosInfo, $winPosInfo, $winPosInfo + $winPosInfo, $winPosInfo + $winPosInfo, False)
$prevPixChkSum = $curPixChkSum
I'm thinking of adding all the other tools I use to the windows it captures, such as Notepad2, Notepad++, Eclipse, Visual Studio, SolidWorks, etc. It's not hard to edit this script.