guiAddMenu
int guiAddMenu(int gui_id, int parent_id, string text, bool is_checkable = false);
| Parameter | Description |
|---|---|
parent_id |
0 = top-level bar menu; non-zero = another menu handle (nested popup). |
text |
Must be non-empty (DLL rejects empty). |
is_checkable |
Checkbox-style popup rows (GUI_OBJPROP_CHECKED). |
Reading Menu State
int checked = guiObjectGetInteger(gui_id, menu_row, GUI_OBJPROP_CHECKED);
int enabled = guiObjectGetInteger(gui_id, menu_row, GUI_OBJPROP_ENABLED);
string row_text = guiObjectGetString(gui_id, menu_row, GUI_OBJPROP_MENU_TEXT);
Row appearance: GUI_OBJPROP_MENU_TEXT_COLOR, GUI_OBJPROP_MENU_BG_COLOR.
Clicks and Removal
Poll guiIsClicked(gui_id, menu_handle) like other objects. Remove with guiRemove(gui_id, menu_handle).
int file_menu = guiAddMenu(gui_id, 0, "File");
int open_item = guiAddMenu(gui_id, file_menu, "Open", false);
int save_item = guiAddMenu(gui_id, file_menu, "Save", false);
// In OnCalculate:
if(guiIsClicked(gui_id, open_item))
Print("Open chosen");