One au effects plugin with two gui windows?

Goal is one AU effects plugin with two independently movable GUI windows (one for parameters, one for plot).

1.1 Can one Editor invoke two separate, movable GUI window components? If so, how?
1.2 Does GUIWindow2 have to be a child of GUIWindow1, or can they be peers?
Also:
2.1 Can one Processor invoke two Editor components? If so, how?
2.2. Does Editor2 have to be a child of Editor1, or can they be peers?

Thanks…the tutorials & posts I’ve found concerning extra window creation have been in the context of host apps or software instrument plugins.

There is no official way to create a second editor window, which will be guaranteed to work on every host.
But in most hosts it will work if you just create a second window, and bound the lifetime of it to the editor, important is that the window in not modal.

In the Editor-Class
ScopedPointer <DocumentWindow> extraWindow;

to open the window
extraWindow=new DocumentWindow("ExtraWindow",Colours::white,DocumentWindow::closeButton,true);
extraWindow->centreAroundComponent(nullptr,200,200);
extraWindow->setVisible(true);

1 Like

This subject is really quite tricky.
If you don’t set alwaysOnTop for the new window it will never show in front of the main window on a number of hosts was my experience, but then of course your 2nd window is always on top of other windows, unlike the main window. Further in Ableton Live, when clicking on another track when the “auto hide” setting is enabled, the main window is hidden but the secondary window isn’t.
There must be ways of solving these problems as other plugins handle it quite easily, so if anyone has some pointers on how, would be much appreciated!

1 Like

Works as noted. centreAroundComponent seems to do what is meant only if extraWindow is launched outside of the Editor’s constructor. Where can I launch extraWindow, that’ll get called automatically exactly once, and that is outside of Editor’s constructor?

Timer ?