ProTools automation menu

Hello guys,

I’m trying to display the Automation menu that you can find in ProTools Mac when Ctrl+Alt+Cmd clicking an UI component bound to an automatable parameter.

For some reason, mouseDown with the given modifiers will not trigger anything. The solution I have in mind would be to let ProTools handle this shortcut and bypass Juce’s handlers for this particular combination of actions…

Did someone already experienced this?

I think I’m having the exact same problem as you do. I want to enable this shortcut and I am wondering if it could be handled “automatically” or not. I read on RTAS SDK’s official documentation that one should not override the shortcut as it is supposed to be handled directly by the SDK, but I don’t see anything in Juce framework that would suggest it would work.
To make it work, do we have to:

  • recognize this specific combination of keys in a mouseDown callback, and then
  • send somehow a message to the RTAS SDK, to launch Pro Tools’ automation menu for the parameter linked to the component?
    If so, I must admit I don’t see how to send this kind of message to the SDK…

Were you able to find the solution to your question? Does anyone have any clue about that?

I’m looking for such a thing. Apparently, implementing CEffectProcess::ChooseControl is half of the problem: it is not called when the editor uses the Juce framework. I haven’t achieved yet to find which method or call should trigger this functionality. Related:

Did anyone solve this?

For AAX, yep. I've no time for posting it here for the moment, but it will come eventually. There are 2 additional issues on windows though which I had to overcome:

- on windows, Juce considers win ctrl = mac cmd, however I needed to address such different keys differently.

- on windows, Juce is not receiving the "start" key notifications as Pro Tools eats them.

I got it working for AAX as well, but still stuck on RTAS...

I have had customer requests for this as well. Any advice/help/code/framwork changes are greatly appreciated!


Sean Costello

Currently discussing with Jules about the windows key issue on Windows & with Pro Tools (which eats the windows key and only provides info through the AAX SDK). Jules does not want custom PT-specific hacks in the key management system, however I doubt we have another option. I must answer him about that.

What ever happened to this? I’m also in the same boat right now. My AAX files lacks those things and PT users requested that I add support for PT Automation Menu.

I'm receiving requests for this as well, so any hints about how to solve this would be highly appreciated!

I've got it running on both Mac&Win Pro Tools; I've communicated the patches to Jules, however it's still a no-go for Jules for the windows-key hack for Pro Tools on Windows. Anyway, this gives my plug-ins a competitive advantage :p.

Thanks! Would it work on Mac without the hack? That would at least be better than not supporting the command at all. Most PT users seem to be on Mac anyway.

Yep, that would work on mac. I'll try and remove the win hacks and give that to Jules.

Thanks, much appreciated! I hope Jules will accept the code. 

I got this to work for both Windows and OS X and Jules has included my changes with some slight modifictions in JUCE. In order to get this to work, you need to override the method getControlParameterIndex in AudioProcessorEditor to let Pro Tools know the parameter index that corresponds to the control that was clicked.

1 Like


The suggested method is now implemented in JUCE so by overriding the functions it's simple to add this feature.

One thing I'm struggeling is how to avoid passing clicks when user hit the button/knob with the key combinations.

I've tried:

    if (m_isIgnoreCtrlCmdAltModifiers && modifiers.isCtrlDown() && modifiers.isAltDown() && modifiers.isCommandDown())

Overriding the clicked (const juce::ModifierKeys& modifiers) method,


What method do you use to avoid passing those clicks?

Is there any way how to call to this menu from my custom slider?

if (e.mods.isCtrlDown() && e.mods.isAltDown() && e.mods.isCommandDown()) 

Since we have a lot of custom ui I’ve thought the best way to resolve this would be adding a flag to avoid clicks with modifiers being intercepted.

Would be really nice if this could be add to JUCE / review by JUCE team and applied:


anything new regarding that?

It would be nice if the Juce Plug-in Demo implemented this, so that just by running it inside Pro Tools it would be apparent that this feature is supported.
I had to search the forum for a solid hour before getting to this info, and only because I was going to re-ask the same question since the Juce Plug-in Demo didn’t show the menu.