I am developing a desktop application to create, arrange and read blocs of sounds, via a grid interface like this :
Each bloc of sound is of different nature and has its own panel to control its parameters (with sliders, spinners, etc). My first approach was that, when a user clicked a bloc, its parameter panel would appear in the main window, to the right of the grid, reducing the grid's width. When another bloc was clicked, the panel was replaced by the one relative to the bloc clicked.
I later realised I wanted it possible to manipulate several bloc panels at the same time, without having to constantly click on the desired bloc. So my new UI approach was to have a seperate window for each panel, and now each time a bloc is clicked, its parameter windows (there are actually several windows for a single bloc) appear in the top left of the screen. I can move them around, hide them (by clicking on the red cross, or clicking elsewhere on the grid), and when I click the bloc again they appear at the same position on the screen as I left them, which is cool.
The only problem really is that the first time a bloc is clicked, its windows appear on top of each other, in the top left corner of the screen. Before getting my head into where to show them the first time, I wanted to know if there were better UI approaches to my problem.