This is a try to allow stacked brush engine solve both user histories: 1) combine brush engines and 2) use multiple brushes for clipping
Side notes:
- The main difference from the previous proposals is that the stacked brush is not a brush engine in its classical view. Every brush engine can have other engines stacked onto it.
- The user can select any brush preset and stack other presets onto it. After stacking at least one preset on the top of the current one, additional controls appear that allow the user to switch between "internal" presets.
- Previous versions of Krita will see such presets as a usual preset with one (first) brush (disputable?)
- Technically it will be implemented as a usual brush engine, which is just hidden from the engines list. Instead, paintop editor recognizes such presets and allows the user to switch between them.
- The size of the paintop editor does not change! The controls reuse the space occupied but the brush name text field.
- Most of the @rempt's code and controls are reused (KisStackedPaintOp and StackedView). It just changes the way how these controls are shown in the GUI.