Extract StyleBoxFlat, StyleBoxTexture and StyleBoxLine in their own file
Part of the ongoing effort to have only one class per file with the goal of improving the structure of the codebase in terms of readability and compilation speed.
style_box.cpp contained already over 1000 LOC, which made navigation quite cumbersome.
In addition, some methods and members have been reordered to further improve clarity.
I agree with this greatly, but where has the "ongoing effort" been stated, if anywhere?
A lot of classes could benefit from it, absolutely, but it makes me wonder if it would be worth it to group them in sub-folders someday and what is the argument against it.
It came up on RC a few times and in the discussion around #33027 as well, but like some other things we discussed it was never written down formally in https://docs.godotengine.org/en/latest/community/contributing/code_style_guidelines.html. We still need to do that. Grouping some header/source files together in a sub-folder could make sense, but one (minor) argument against this would be that having a deeper folder structure impedes navigation (especially in tree views).
I approved the change in principle but I'm not sure this is the right time to merge such changes, as there's a lot more that would need splitting if we decide that this is the new standard. Started a discussion in maintainer channel, we can formalize this in a proposal later on to document the direction we want to go for. For now I'd tend to keep this and similar changes for 4.1.
With Akien's comment in mind and the timing, I've kicked this to 4.x (realistically to 4.1) for now.
@Geometror I think we are ready to merge it in the next couple of weeks. So if you could do a rebase, it would be great!
Thanks!