Command Group: GUI Control - Menu

From Bohemia Interactive Community
Jump to navigation Jump to search

Commands to manipulate CT MENU STRIP, CT MENU, CT CONTEXT MENU controls. CT MENU STRIP and CT CONTEXT MENU were introduced with Eden Editor. See Entity Context Menu and Configuring Menu Bar to find out how to configure these menus in Eden Editor.

Example for Eden Editor

// Create main folder
disableSerialization;
private _ctrlMenuStrip = findDisplay 313 displayCtrl 120;
private _indexMain = _ctrlMenuStrip menuAdd [[], "Custom Tools"];
 
// Create first subentry which is not checkable but has an action
private _indexUncheckable = _ctrlMenuStrip menuAdd [[_indexMain],"This entry can not be checked"];
_ctrlMenuStrip menuSetAction [[_indexMain,_indexUncheckable], "systemChat 'Hello World!'"];
// Create second subentry which is checkable and has an action
private _indexCheckable = _ctrlMenuStrip menuAdd [[_indexMain],"This entry is checkable"];
_ctrlMenuStrip menuSetAction [[_indexMain,_indexCheckable], "systemChat 'Hello World!'"];
_ctrlMenuStrip menuSetCheck [[_indexMain,_indexCheckable], true];
// Create third subentry which shows an image and has an action
private _indexPicture = _ctrlMenuStrip menuAdd [[_indexMain],"This entry has a picture"];
_ctrlMenuStrip menuSetAction [[_indexMain,_indexPicture], "systemChat 'Hello World!'"];
_ctrlMenuStrip menuSetPicture [[_indexMain,_indexPicture],"\a3\modules_f\data\iconunlock_ca.paa"];
// Create a fourth entry which will destroy itself once clicked
private _indexDelete = _ctrlMenuStrip menuAdd [[_indexMain],"This entry will be deleted once clicked"];
_ctrlMenuStrip menuSetAction [[_indexMain,_indexDelete], "findDisplay 313 displayCtrl 120 menuDelete (menuHover (findDisplay 313 displayCtrl 120)); systemChat 'Entry gone!'"];
// Create a fifth entry which will return its data once clicked
private _indexData = _ctrlMenuStrip menuAdd [[_indexMain],"This entry will print its data to system chat when clicked"];
_ctrlMenuStrip menuSetData [[_indexMain,_indexData], "[objNull,'Some String',true]"];
_ctrlMenuStrip menuSetAction [[_indexMain,_indexData], "systemChat (findDisplay 313 displayCtrl 120 menuData (menuHover (findDisplay 313 displayCtrl 120)));"];
To remove the custom menu, just restart Eden Editor.