How to get a Plug-in's custom UI to appear on a Mac

I am working with an existing open-source project that works flawlessly on a PC. I assume it also works on Linux. I am trying to get the project to work on Mac OSX 10.11.4. I got the source code to compile and link. The problem is the custom UI will not show up. Due to recommendations from the original author I am using version 4.1.0 of the JUCE framework.

I am using Reaper to test it (although I get similar results in the Plug-in Host provided by Juce). I am an experienced C++ developer but new to Juce and I don’t do much C++ on the mac. That means I’m on an XCode and Juce learning ramp.

When I load the plug-in in Reaper, Reaper has a UI button that allows me to toggle between the native Reaper UI and the plug-in’s custom UI. The custom UI is blank. The native UI shows the controls for controlling the meter that I would expect. However, without the custom UI to show the meter itself the plug-in isn’t very useful. I realize this isn’t very much information but I’m hoping I missed something obvious about making a UI appear on the Mac. I’m also open to testing/debugging steps I might try. I’m not even sure how to debug this but I can add alert boxes and get feedback that way.

If anyone is ambitious and wants to download and try this I can detail the steps I took to get a clean compile and link.

in plugin_editor.cpp nothing happens in resized(). normally resized() is where you position all of your components and then paint() draws all of the images associated with the gui.

I put an AlertMessage::showMessageBox() call in resize() and it never gets called. Also would this be something that would vary between the Windows and Mac version of a plug-in?

I figured it out! By sprinkling some showMessageBox commands around I was able to determine that a missing resource file (the default skin file) was causing the error. Once I got a good copy of this file and put it in the right place the custom UI appeared.

Xcode -> Manage Schemes -> Run Application (choose Reaper) -> press play… Xcode launches Reaper and attach to debugger by itself, then breakpoints work.

1 Like

Wish I had known that a few days ago! Of course I suspect it will still come in mighty handy.

I’m editing this because I don’t think my praise was effusive enough @therealsambecket THAT IS SO COOL! This will really make my efforts moving forward so much easier. I can’t believe how easy it was to set up the debugger to debug a plugin. As you can probably tell I actually tried it out today. WOW. Thanks a ton. This is a great tip for beginner on the Mac. I am no longer En attendant Godot.

1 Like

Welcome !

Im sure you will have fun coding.

Cheers man, glad to help