static unsafe Menu() { _menuCallback = MenuCallback;
public static unsafe MenuID CreateMenu(byte *inName, MenuID inParentMenu, int inParentItem, MenuHandlerCallback inHandler, void *inMenuRef) { IL.DeclareLocals(false); IntPtr inHandlerPtr = inHandler != null?Marshal.GetFunctionPointerForDelegate(inHandler) : default; MenuID result = CreateMenuPrivate(inName, inParentMenu, inParentItem, inHandlerPtr, inMenuRef); GC.KeepAlive(inHandler); return(result); }