- Group: v0.9.30 --> v0.9.31
Provide ways to scale brushes, to allow for larger brush shapes when using the Paint and Lines tools.
Motivations:
* It can allow for greater diversity in drawings
* It might be possible to remove some redundant items from the Brushes bar (e.g., one circle brush rather than five different sized circles)
* On higher-resolution, higher-DPI screens, the brushes can be too small (especially the less abstract ones, such as the animated cat, dog, squirrel, footprints, etc., the 'splat', the heart, etc.) (See, e.g. https://twitter.com/ConnyQueen/status/1657687980499165186)
Thoughts on what we can and/or should do:
* We could provide UI controls to scale the brush size (like we have for the Stamp tool)
* We already have a triangular "slider" when showing Brushes, which controls the spacing; we would need to differentiate them!
* Any controls in the UI would need to be disable-able via configuration options (a la removing Magic sizes, Brush spacing, etc.).
* If controls are not available, we would need to fall back to a resonable default.
* If some brushes would normally 'collapse' into a single brush (e.g., the circle) when sizing options are available, they would need to 'expand' back into the various separate entries in the Brushes collection, if the controls are not available (similar to how "Bricks" and "Googly Eyes" Magic tools work)
* The option to disable the controls would need to also be made accessible via the "Simplification" tab in Tux Paint Config.
* We could pick a default scale, based on the canvas size, like we do for stamps. It could possibly also be based on the calculation we use when buttonsize=auto
is set. (Historically, brushes have been approximately the same size as the default button size, around 48x48 pixels.)
* When the controls are disabled, if we end up using this new "default scale", we might want to provide a way to disable this (or conversely, only do this if yet another configuration option has been enabled), so Tux Paint can continue acting the way it always has prior to this feature existing.
* We would want to upscale the brush bitmaps as much as possible, so that larger sizes look good (not blurry and/or pixellated).