const int GUI_WIDTH = 1200;
const int GUI_HEIGHT = 800;
float scaleUI = 0.666f; // this can be 0.5, 0.666 or 1.0
In Live I can resize the VST3, but VST2 and AU are not resizable. In GarageBand when hovering the mouse over the window borders it shows me the resize mouse cursor, but resizing does not work.
Is this just a limitation of VST2/AU or have I just overlooked something/done it wrong?
At what point does it become acceptable to ping the JUCE team about unanswered questions? It’s a little frustrating seeing later questions answered by them and (seemingly) ignoring an earlier one.
yeah, that is fine for me also, but I would rather not use the corner resizer, for two reasons:
a) it looks weird in Logic
b) the actual edges of the plugin window give the impression that they can be dragged to resize (showing the double headed arrow mouse cursor), however it does not work
Hmm, good question. I assume though that it is something to do with the VST2/AU wrappers, as in Live I get the same problem (minus the extra crap that Logic attaches to the window) : the window borders give the impression that the VST2/AU is resizable, but does not actually do anything. For the VST3 it’s working perfectly.
That was my experience as well, so the resizable corner is a workaround for the situation… I am due to investigate the situation outside juce, but don’t know yet, when I get around to do that
It would be great to know, if anybody managed, any plugin except the apple ones I meant
I haven’t seen a plugin except for apples own, that allow resizing AUs by dragging the frame of the plugin, even though it shows the resize cursor. All resizeable plugins I saw, with or without JUCE, are using any sort of resizer dragger in their client area.
Would be happy to learn if anybody found another way, so far everybody I spoke to says it is not possible. My last hope would be somebody finds the messages in an API, where the resize calls are accessible.
What the user says is that at least the bottom window corner do not allow resize and only the inner edge would work in case of those plugin.
Right now, you think you can but it doesn’t and in some DAW, you just resize the window but the actual plugin content do not resize hence the bad feeling
Yes, I see. This is how I understand it and was confirmed by others who spent a lot of time investigating as well:
You can change the size programmatically by resizing the client (your plugin GUI aka AudioProcessorEditor). This is how the corner resizer works.
Logic shows the resizer cursor when you hover the frame. But the drag events from the border are not processed it seems. It seems to be the responsibility of the client component, but I haven’t found a way how to receive the drag events.
Judging from your observation (I haven’t seen that) some hosts resize the frame but don’t resize the client component, since I don’t think that is part of the SDK.
There seems to be a missing link in how the window events are communicated to the client GUI.
What puzzling me is that the user says it doesn’t happen for Fabfilter, IK and iZotope plugins.
aka the window resize corner do not work hence it’s less confusing.
I don’t have those so I can’t test
Great, thanks for confirming. Interesting that they have different approaches for VST2 and VST3.
Yes, that’s what I said above: the CornerResizer is part of the GUI client, i.e. the AudioProcessorEditor and it resizes programmatically on dragging. But the seemingly draggable borders of the host editor window have no effect.