Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"Contiguous" option for Bucket Fill and Magic Wand tools #4116

Open
eishiya opened this issue Dec 5, 2024 · 0 comments
Open

"Contiguous" option for Bucket Fill and Magic Wand tools #4116

eishiya opened this issue Dec 5, 2024 · 0 comments
Labels
feature It's a feature, not a bug.

Comments

@eishiya
Copy link
Contributor

eishiya commented Dec 5, 2024

Request

It would be nice to have a "contiguous" toggle for the Bucket Fill and Magic Wand, allowing them to affect tiles in non-contiguous region. Currently, non-contiguous fills require first selecting all those tiles and then using Shift+Bucket Fill to fill those areas, but with a "contiguous" toggle, this behaviour could be achieved without any selections, without additional tools.

This toggle should, if possible, be a checkbox with the label "Contiguous" next to it, rather than an icon like the other tool options, as there does not appear to be any iconography associated with this concept. Every program I've ever seen describes this option only as text.

Justification

Non-contiguous bucket filling is useful for replacing tiles within a layer. For example, one may want it for making similar sets of Automapping rules, for replacing shallow water with deep water, filling flat areas with a pattern/random tiles, and so on. It would be nice to not need extra tools and a modifier key to do this :] If we get Terrain Mode on the bucket fill, non-contiguous bucket filling will get even more useful, allowing quick, terrain-aware replacement of one terrain with another, and selections would likely get in the way of that feature more than plain tile Bucket Fill.

Tiled already has the Select Same Tile tool for non-contiguous selections, but I feel that if Bucket FIll has a contiguous toggle, then so should Magic Wand for consistency. This would make Select Same Tile obsolete.
The benefits of this is that it'll remove a tool from the toolbar and bring the tooling more in line with other software like Aseprite (but further away from GIMP, after which these tools were modelled). The drawback is that if a user needs to frequently alternate between the two selection modes and other tools, it may require extra clicks, since they'll need to first click the Magic Wand Tool, and then check/change the Contiguous option. In my experience in other software, this has not been a problem.
I'll miss the Select Same Tile icon though, it's probably my favourite in Tiled :]

Comparison to other programs

GIMP works just like Tiled: Separate contiguous and non-contiguous selection tools. Bucket Fill is only Contiguous, but with a non-contiguous selection, you can shift+Bucket Fill to fill it (provided you have the "fill selection" option chosen for the Shift behaviour).
Krita has separate contiguous and non-contiguous selection tools, but a contiguous toggle on its Fill tool. An odd inconsistency.
Aseprite and Photoshop have contiguous toggles on both their Magic Wand and Paint Bucket tools, like what I'm requesting here.

Bjorn noted on Discord,

at the time that [the two selection tools and bucket fill] was implemented I don't think we had the toolbar with tool options available.

Tiled's current tool set-up, with a toolbar that can also have tool-specific options displayed, is most like that of Aseprite and Photoshop, which is perhaps why it feels so tempting to me to also duplicate those programs' set-up for selections and bucket fill :] GIMP and Krita both rely instead on tool dockers with many more options, so it makes sense they'd want to give users the two most common magic wand styles without having to dig through those options. In Tiled, that's not a problem, all of the selection options can comfortably fit in the toolbar.

@eishiya eishiya added the feature It's a feature, not a bug. label Dec 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature It's a feature, not a bug.
Projects
None yet
Development

No branches or pull requests

1 participant