Introjucer puts all the sources and user created groups inside a useless extra group that cannot be removed or renamed:
If its really helpful to start new projects with this group, then just create the group so it appears in the project instead of hardwiring it into Introjucer. This way, we can remove it if we would rather not have yet another level of nesting in the platform-specifice IDE project file:
My proposed fix:
Note that I’ve added the Juce Modules and Juce Library code “builtin” groups to the treeview, this way they can be renamed or moved around (ideally, they could even be removed if no modules are used).
There’s two issues in the post. One is that there’s an extra group (“SimpleDJ” in the image). I’d like not to have this group, since it just adds an extra level of nesting for no reason. Every time Introjucer re-exports the Visual Studio project, and the project is open in the IDE, all the groups collapse and they have to be re-expanded.
Its true you can’t control the order of items but if the automatically generated directories (“Juce Library Code”) were in the tree they could be renamed, or made children of other groups. With a rename it is possible to control the order (I sometimes put an underscore or numeral at the beginning of the group to control order).
I remember spending some time on this when I first wrote it, and decided that this was the best way to do things. Can’t remember the details, but it was because of some differences between VS and Xcode, and I was trying to find a structure that worked on both.
Since it’s just something that you find aesthetically annoying, and doesn’t actually cause any real problems, I can’t justify the time or effort of restructuring the way the whole thing works just to avoid it, I’m afraid.
The extra group is what I was talking about! It’s there for a reason which I’m pretty sure was important, but I’ve forgotten the details. If you care about it so much, try modifying the introjucer yourself, and you’ll probably hit whatever problem it was that made me do it like that.