I’d like to be able to know which studio tool (or plugin) is currently activated. We’d definitely need an ItemSelected event, and maybe a :GetSelectedItem() method. Use cases:
I want to replace the current select, move, scale, and rotate tools with my own plugin. I can easily replace the move/scale/rotate tools by removing the default ones from the quick access menu, adding the new ones in, and then assigning the shortcuts to the replacements, but I run into a problem with the select tool. Whenever you deselect a plugin/tool, the selected item will default to ROBLOX’s select tool. I want my own select tool to be the go-to tool, but there’s no way to do that currently. With the ItemSelected event I could switch to my own select tool whenever ROBLOX’s was selected.
I’m working on an ambiance modifier plugin which treats sounds as physical objects. You can change their play radius, where they start to fade, their origin, etc visually in the render window. I’d like for people to be able to scale/rotate/move the sound around using the default studio tools, but you can’t exactly resize a sound with the default studio tools. If I was able to read which tool was currently selected, I could create custom handles to scale/move/rotate the object depending on which tool you had selected. Likewise, model scaler plugins could add handles to scale the model if the resize tool was selected.
Say a user has two plugins that are known to conflict with one another, and I’m the developer of one of those plugins. I could prevent my plugin from activating while the conflicting plugin was active if I was able to tell which plugin was currently active.