====== menu_InsertItem ====== This function has been deprecated. Please use [[zeolite:functions:menu_InsertItem2]] instead. ===== Description ===== Add an item to the menu in L3DT. ===== Function prototype ===== bool CExtAPI::menu_InsertItem(const char* lpFnName, const char* lpOptionName); ===== Arguments ===== ^ Name ^ Type ^ Comment ^ | lpFnName | const char*| A pointer to a C-style string containing the name of the ZeoFunc to be activated by this menu option. | | lpOptionName | const char*| A pointer to a C-style string containing the display name of the menu option. | ===== Return value ===== False if an error occurred, and true otherwise. ===== Comments ===== ==== Use with zeofunc_LoadFunc ==== The //lpFnName// argument must be the name of a function loaded from your plugin via the [[zeolite:functions:zeofunc_LoadFunc]] method. See the example provided below. ==== Where the menu items go ==== All menu items are created in the '//Extensions->[your plugin name]//' menu in L3DT. ==== Sub-menus ==== The '.' (dot) character is used to delimit nested menus. Thus, if you provide an //lpOptionName// of "mysubmenu.myoption", your option will appear at '//Extensions->[your plugin name]->mysubmenu->myoption//'. Unfortunately, this means you cannot use dots for abbreviations or ellipsis (e.g. 'about...') ===== Example ===== This is from the InitPlugin funtion of [[bundywiki>plugins:calc:atSphericalDistort|atSphericalDistort]]: // create the info function theAPI.zeofunc_LoadFunc("ExtAbout", VarID_void, NULL); // create the worker function (SphericalDistort) ZLIST hArgs = theAPI.var_CreateTemp(VarID_varlist); theAPI.list_CreateItem(hArgs, VarID_map, "hMap"); theAPI.list_CreateItem(hArgs, VarID_double, "radius"); theAPI.zeofunc_LoadFunc("ExtSphericalDistort", VarID_bool, hArgs); theAPI.var_Delete(hArgs); // delete temp arg list // create the user-interface function (SphericalDistortUI) theAPI.zeofunc_LoadFunc("ExtSphericalDistortUI", VarID_bool, NULL); // add menu options (HERE IS THE MENU EXAMPLE) theAPI.menu_InsertItem("ExtSphericalDistortUI", "Distort heightfield"); theAPI.menu_InsertItem("ExtAbout", "About");