View Issue Details

IDProjectCategoryView StatusLast Update
0002796The Dark ModCodingpublic01.10.2011 17:02
Reportertels Assigned Totels  
Status resolvedResolutionfixed 
Product VersionTDM 1.06 
Target VersionTDM 1.07Fixed in VersionTDM 1.07 
Summary0002796: Non-ASCII GUI choices don't work
DescriptionTranslating settings in the GUI to non-ascii (f.i. russian high-bit choices) does not work, it skips these choises, eventually complaining "no choices defined". Find out if we can work around this somehow.
TagsNo tags attached.


related to 0002817 resolvedtels sys_lang only allows a fixed set of languages 
child of 0002779 confirmed Translate the menu and HUD into different languages 




24.09.2011 12:06

reporter   ~0004042

Last edited: 24.09.2011 13:27

Added two new menu commands with revision 0004977:

* initChoice
* stepChoice

Both take three arguments: the cvarname, the choices (f.i. "#str_01234"), the values (f.i. "0;1" or "#str_01235")

The first one figures out the current value from the CVAR, then updates "gui::cvarname_text" (e.g. the windowDef must have "text" "gui::cvarname_text" defined!) with the current choice.

The second one does the same, except it advances the setting by one, wrapping around to the first choice if the last one was reached.

For boolean choices, this behaves 100% identical to the old D3 choiceDef, except it actually works with any foreign character in the string - and properly updates in real-time if you change the language.

For integer/float/string choices this works the same, too, the only thing we lose is the "right click selects previous choice". So far I have not found a way to intercept right clicks in the GUI. However, it is still better as it works with any language, and we actually have only a few choices where this is nec. (the LOD choice, and a few video settings).

Due to the "lose rightclick" and the cumbersome way to switch through more than a handful values, any selector with more than 3 values should be converted to a different method (show screen with all choices, let user select). So far, this is probably only nec. for the language selector, and maybe the LOD level selector. Any other choice can either use the D3 method (resolution selection f.i. only contains numbers), or has only 2 choices (where is "just works"), or has only 3 choices (where it is okay to not have right click).

This bug can be closed once all the GUI choices have been converted.



25.09.2011 11:01

reporter   ~0004043

All but 5 GUI choices have been converted.

An additional difficulty is that there is seemingly a hard limit on how many commands can fit into the command buffer, and issuing too many commands overflows this buffer, leading to either runtogether of two commands, or missing arguments. Defining several CHOICE_INIT_X versions and using them works around this, but it's quite cumbersome, and sometimes the overflow still happens randomly. Some timing issue?


01.10.2011 17:02

reporter   ~0004055

The remaining choices have been converted, except the resolution/aspect ratio selector. This (and the language selector) need to be converted to a "pick-and-choose" screen, because stepping through a long list of unknown length is very cumbersome for the user, anyway, even if he has right-click working as undo.

Issue History

Date Modified Username Field Change
04.07.2011 20:18 tels New Issue
04.07.2011 20:18 tels Status new => assigned
04.07.2011 20:18 tels Assigned To => tels
04.07.2011 20:18 tels Relationship added child of 0002779
20.07.2011 17:43 tels Relationship added related to 0002817
24.09.2011 12:06 tels Note Added: 0004042
24.09.2011 13:27 tels Note Edited: 0004042
25.09.2011 11:01 tels Note Added: 0004043
01.10.2011 17:02 tels Note Added: 0004055
01.10.2011 17:02 tels Status assigned => resolved
01.10.2011 17:02 tels Fixed in Version => TDM 1.07
01.10.2011 17:02 tels Resolution open => fixed