Rhino C++ API  8.7
Public Types | Public Member Functions | List of all members
CRhRdkCustomRenderFrameMenu Class Referenceabstract

#include <RhRdkContentEditorCustomButtonProvider.h>

Inheritance diagram for CRhRdkCustomRenderFrameMenu:
CRhRdkExtension CRhRdkObject

Public Types

enum  MenuType : unsigned int {
  MenuType::Main, MenuType::File, MenuType::Edit, MenuType::View,
  MenuType::Render, MenuType::Help
}
 

Public Member Functions

virtual bool AddMenuItems (HMENU menu, MenuType type, UINT &cmdId)=0
 
virtual UUID InterfaceId (void) const final override
 
virtual bool OnCommand (UINT cmdId)=0
 
virtual bool OnUpdateCommandUI (IRhRdkCommandUpdate &cu) const =0
 
virtual UUID RenderEngineID (void) const =0
 
- Public Member Functions inherited from CRhRdkExtension
 CRhRdkExtension ()
 
virtual ~CRhRdkExtension ()
 
virtual UUID PlugInId (void) const =0
 
bool Unregister (void)
 
- Public Member Functions inherited from CRhRdkObject
 CRhRdkObject ()
 
virtual ~CRhRdkObject ()
 
virtual void * EVF (const wchar_t *wszFunc, void *pvData)
 
void operator delete (void *buf)
 
void operator delete[] (void *buf)
 
void * operator new (size_t size)
 
void * operator new[] (size_t size)
 

Additional Inherited Members

- Static Public Member Functions inherited from CRhRdkObject
static void CheckMemory (void)
 
static void PopulateDebuggingInfo (void)
 

Detailed Description

This interface allows a client to add custom menu items to the render frame.

Member Enumeration Documentation

◆ MenuType

enum CRhRdkCustomRenderFrameMenu::MenuType : unsigned int
strong

Used by AddMenuItem()

Enumerator
Main 
File 
Edit 
View 
Render 
Help 

Member Function Documentation

◆ AddMenuItems()

virtual bool CRhRdkCustomRenderFrameMenu::AddMenuItems ( HMENU  menu,
MenuType  type,
UINT &  cmdId 
)
pure virtual

Implement this method to add one or more menu items to a menu. RDK calls this method once for each of the types in enum MenuType.

Parameters
menuis the menu to append the item(s) to.
typeis the type of menu that 'menu' refers to.
cmdIdis the first command id to use. You should increment this value for each item so that on returning, the next available command id is passed back to the RDK.
Returns
true if you appended an item, else false.

◆ InterfaceId()

virtual UUID CRhRdkCustomRenderFrameMenu::InterfaceId ( void  ) const
finaloverridevirtual

Returns the unique interface id of this extension.

Implements CRhRdkExtension.

◆ OnCommand()

virtual bool CRhRdkCustomRenderFrameMenu::OnCommand ( UINT  cmdId)
pure virtual

Implement this method to execute a menu command. If you recognize the command id, you should execute the command and return true. If not, just return false.

Parameters
cmdIdis the command id of the command to execute.
Returns
true if successful, else false.

◆ OnUpdateCommandUI()

virtual bool CRhRdkCustomRenderFrameMenu::OnUpdateCommandUI ( IRhRdkCommandUpdate cu) const
pure virtual

Implement this method to update a menu item. If you recognize the command id, you should update the menu item's state and return true. If not, just return false.

Returns
true if successful, else false.

◆ RenderEngineID()

virtual UUID CRhRdkCustomRenderFrameMenu::RenderEngineID ( void  ) const
pure virtual

Implement this method to return your render engine's id.

Returns
The unique identifier of your render engine.