DialogAddButton
- Parameters
-
whichDialog dialog
Target dialog to add the button to.
buttonText string
Custom text.
hotkey integer
Integer value of the ASCII upper-case character for the hotkey. Example: "F" = 70.
- comment
Creates a menu button and returns a handle to it.
You must save the button handle to later compare it to the selected button in a
EVENT_DIALOG_BUTTON_CLICK
usingGetClickedButton
andGetClickedDialog
.New buttons are added to the bottom of the menu.
- note
If the menu is already open, you must refresh the menu with
DialogDisplay
to show new buttons.- note
Line-width: With the default font (v1.32.10) there's just enough space to display
Yo dawg I put this text in here.
or 19 full-width characters like "@" (at character). If longer, the text becomes multi-line, up to 3 lines max. If longer than 3 full lines, the rest of string is not shown.- note
Hotkey (uppercase): When adding a hotkey use the uppercase, e.g.
'F'
instead of'f'
as it does not work with lowercased keys. The button still gets triggered when the player presses a lowercased letter.- note
Duplicated hotkeys: When multiple buttons have the same hotkey, the last button has priority.
- note
Hotkeys are layout-dependent.
In other words, the English QWERTY, the German QWERTZ and the French AZERTY layouts etc. will have some keyboard keys on different physical buttons, based on user's currently enabled layout.
The Russian keyboard layout adheres to QWERTY (as an example of a non-latin layout).
- note
Hotkeys like "@" (ASCII 64) don't work (or maybe they have a different integer value). On a QWERTY layout you need to press SHIFT+2 to enter "@".
- note
You can add up to 12 working buttons.
- bug
The 13th button will still render correctly, but not work when clicked/hotkey is used. The 14th button will render outside the dialog border background. The 15th button will render outside the visible area (you'll see a few pixels of it at the bottom).
- patch
1.00
- Source
- common.j
- return type
button
- Source code
native DialogAddButton takes dialog whichDialog, string buttonText, integer hotkey returns button