I've added some features in BGRALayers (on subversion). There are new functions :
- MoveLayerUp / MoveLayerDown to move up or down a layer in the stack
- Draw and ComputeFlatImage can take (firstLayer,lastLayer) as additionnal parameters, so you can draw a range of layers.
- Freeze/Unfreeze functions : you can freeze a range of layers that you will not change, so that they will not be computed again when you call Draw
- FreezeExceptOneLayer : a helper function that freezes everything and unfreeze one layer, useful for example if you move a layer, change only one layer, and when the movement is finished, you need to call Unfreeze to get all the layers updating again.
This freeze/unfreeze capability is only provided for optimization purposes. For example, if you try to freeze just one layer, it will not do anything, because there is no point in making a frozen copy of only one layer.