If user searched the docs in 'Reference search' menu (menutextiteminput is
on the last position), afterwards clicked one of the results and closed the
console, then pressing '/' or 'T' caused automatic repetition of the char.
* use keyrepeat and textinput switch code from sauer (on windows, opening
a console with "t" also produced a "t" as text otherwise)
* screenw and screenh are now cubescript-variables that always reflect
the actual resolution of the screen or the window
DOCREF screenw screenh
greyed out menu items are a) grey and b) can't be operated
menuitemgreyedout 0|1
menu items added after this command are greyed out (1) or not (0)
DOCREF menuitemgreyedout
almost 3000 lines of "errors" contained one actual memleak, one actually
unused variable and three actual ambiguous code parts
from cppcheck website: "The goal is to detect only real errors in the
code (i.e. have zero false positives)." :)
thx for finding five problems in our code
menuitemmapload mapname action [hoveraction [desc]]
create menu entry for a map file
menudirlistsub action dots
adds subdirectory entries to a menu with a files list
has to come after the menudirlist command
<action> is the command to be executed, when the menu entry is chosen
if <dots> is 1, an entry ".." is added
enumfiles path [extension]
lists files in a directory
if extension is specified, only files of that extension are listed
if the extension is "dir", only directories are listed
DOCREF menuitemmapload menudirlistsub enumfiles
* fix some memory leaks
* rename stuff
* fix crash
Removed commands and variables:
chmenumdl (replaced by menumdl)
scorefont (replaced by "menufont score mono")
menuitemvar (better handled with fully dynamic menus)
Changed commands:
menufont menu font
Sets the font for a specific menu. If menu is "", the currently
initialised menu is used. Example: menufont score mono
menumdl menu mdl anim rotspeed scale
Assumes the function of the previous chmenumdl. If menu is "", the
currently initialised menu is used. Specifies, which model to render
and how. If only menu is specified, no model is rendered.
DOCREF chmenumdl scorefont menufont menumdl menuitemvar
- omit step size for sliders with value descriptions
- optionally auto-determine max value by list length
menuitemslider text min max value display action wrap
menuitemradio text min max value display action
text: menu item text
min: min value
max: max value (or optionally -1 and set by display string length)
value: initial value
display: list of value descriptions or value step size
action: executed on value changes (new value in arg1)
wrap: if 1, wrap slider around (radio buttons always wrap)
DOCREF menuitemslider menuitemradio
updateeditinfopanel is a cubescript hook to provide additional information
about the current edit situation, like, for example, the closest entity.
The returned text is rendered on the right side of the screen.
Default for updateeditinfopanel is explainclosestentity which provides
detailed info about the closest entity.
editinfopanelmillis <n>
update the edit info panel every n milliseconds
hideeditinfopanel 0|1
render (0) or hide (1) the edit info panel
DOCREF updateeditinfopanel editinfopanelmillis hideeditinfopanel
and: fix enumsounds, kill some CR, cleanup
menuitemcheckbox <text> <value> <action> <position>
Now takes an optional fourth parameter "position" in the range from 0
to 100, default 0, which moves the position of the checkbox over the
width of a text input or slider, with 100 being left and 0 being right.
DOCREF menuitemcheckbox
* fixes bug with text input fields with less than 15 chars allowed
* recalculates slider width for resolution and font changes (on menu open)
* new tab-like function for '\n' in menuitems: sync with slider width
(see example in menus_edit.cfg in this commit)
DOCREF menuitem
menusynctabstops 0|1
if enabled(1), tab positions in a menu are synchronised
default is off(0)
affects menu title, header and items but not footer or descriptions
DOCREF menusynctabstops
1. Added background to description of selected keyinput item.
2. Added warning to menu footer, when user tries to bind already bound key.
3. Cleanup, fixed background color in description of selected active
menu items, when "menuitem" is absent in the menu.
* removed convertcase
use toupper (concat A B C D ....) instead
* moved several COMMAND macros to their function bodies
* cleaned up screenshot extension handling
* prefix screenshot argument with "screenshot/" and add correct extension
Two new commands, menuitemeditkeyinput and menuitemspectkeyinput, both
work the same as menuitemkeyinput - only for edit and spect binds.
The new edit keys menu should also work fine as edit key help :)
menuitem[|edit|spect]keyinput text bindcmd
Menuitem, that displays "text" and all keys, that bind "bindcmd" - in
game-, edit- or spect mode.
DOCREF menuitemeditkeyinput menuitemspectkeyinput
Now, if the last line of a menu is a text input item, pressing enter in
that line will not only execute the assigned command, but also close the
menu.
With this, menus without the annoying "[OK]"-button can be created.
Also: emptied text input fields don't magically fill up again, when you
deselect them.
DOCREF menuitemtextinput