We need a GUI for the lazy brush functionality. Basically, the filling should be done by a special kind of a mask. This mask can work in two modes: "mask mode" and "split layers mode". We can implement either both modes or just one of them. It should be decided.
If using split layer mode, the folloowing questions should be answered:
- what naming scheme should be followed by the automatically created layers?
- should they be grouped and, if yes, what naming convention should it be?
- what composite op should be used for the filling layers? Should it be configurable? What about opacity?
Here are my very rough mockups/ideas of how it can be implemanted:
Transcription from the example mockups:
Split into fill layers:
- The fill colors are extracted into a set of new layers.
- "Show filling" becomes disabled on the mask.
- On every "Update"-click, the alpha-channel of the fill layers is updated.
- The link between a mask and a layer persists until the mask is deleted.
- If a layer got deleted, the mask recreates it on the next update call.
^
- Property of the mask.
- editable by lazybrush only.
- Every painted color is automatically added to the palette in the tool options docker.








