Control interaction in VSTGUI4

You should use a specialised controller for your UI. You should do something like this:

class MyUIController : public DelegationController
{
public:
    MyUIController (IController* parent) : DelegationController (parent) {}
    
	IControlListener* getControlListener (UTF8StringPtr controlTagName) override { return this; }

    void valueChanged (CControl* pControl)
    {
    }
};

And for your EOSXController :

IController* EOSXController::createSubController (UTF8StringPtr name, const IUIDescription* description, VST3Editor* editor)
{
    return new MyUIController (editor);
}