the way i see it ofParameter<ofEvent<void>>
doesn't make much sense, for every other control the parameter creates an event of it's type that you listen to:
ofParameter<float> -> ofEvent<float> (in ofxSlider)
ofParameter<bool> -> ofEvent<bool> (in ofxToggle)
so the most logical to me would be that
ofParameter<void> -> ofEvent<void> (in ofxButton)
for an ofParameter<ofEvent<void>>
i would expect an ofEvent<ofEvent<void>>
which wouldn't make sense.
ofParameter<void>
would be an special case where the parameter would contain no data, as its type clearly says, but still has an event like any other ofParameter that you can listen to by doing:
voidParam.addListener(voidListener);
void voidListener(){
}
which would be compatible with how ofxButton works now, that way also the getParameter() in ofxButton wouldn't need to return an empty boolean parameter as it does now and would instead return the real parameter that triggers the event when the button is pressed