I’m trying to wrap the Rhino executable so it appears to be my own application. To that end, I’m trying to show/hide menu items and change AppearanceSettings.
I’ve followed the steps to creating a custom skin Creating A Skin and it appears that the app loads the .rhs file (the splash screen is gone, and the app has an open filehandle to the .rhs file).
I’ve overriden OnEndLoadAtStartPlugIns and ShowSplash and have the following code in both:
Because Rhino has all of the functionality required, but can not be distributed as a linked library to another executable. The only way to use its functionality is to wrap the Rhino executable. Compare that to writing a 3D modeling API yourself (because there are so few out there), and the answer seems clear.
I doubt Rhino is really ready to do anything when this function is called. Better to create an On Idle event handler, which will be called when Rhino is up and running.
It is. There is an app setting to turn off the menu. If you want to replace it, consider providing your own custom .RUI file that has menus. You can also replace the menus from a C++ Skin DLL. Here is an example:
Thanks for the info. I decided to familiarize myself with customizing menus by following Adding a Custom Menu
I have Rhino 6 loading the PlugIn DLL with the code from the tutorial, but Rhino crashes when I click the ‘Tools’ menu after I run the command associated with ‘CCommandMyMenu’. I stepped through with the debugger and the call to InsertPlugInItemToRhinoMenu returns TRUE.