Started off by tweaking my Tile Masking colour picker so that the Tileset is automatically refreshed when a new masking colour is chosen. Quickly changed my mind, however, as it was no longer possible to have different colours for different Tilesets. D'oh!
Moved on to the thumbnail code, which generates a smaller (or bigger) version of the Tileset if the tile size is above or below 32x32 - the reason being, the Anim and Grab Panels both rely on tiles of 32x32 in order to fit all of the required information on the relatively small panel. Got the code working, but I need to finish up by tweaking the cursor and ensuring that any Tilesets loaded into the Editor have thumbnails generated automatically.
Implemented the Grab Panel functionality today, and tidied up a few loose ends (label positions, etc.), and also took the liberty of refining my Text Display routine so that only labels currently in use are updated. Also hit upon a way of avoiding flicker on my text labels, which has been sitting on my bug list for way too long.
Started tackling the various functions for the Grab panel, and hit a couple of problems when locking buffers - as it turns out, in operations that involve writing or reading pixels, you need to lock both the source buffer and the destination buffer; with that little quirk sorted, I wrote a copy/paste routine for tiles, then expanded my Brush Rotate code to add flipping and rotation to the tile functions.
Finally came the Clear routines, which allow the user to pick a colour to clear the current tile, or click the Quick button to clear with the last colour you 'picked'.
