GUI: Present interface languages in sorted order
rakhimov opened this issue · 1 comments
rakhimov commented
The current order of the interface languages is hard-coded and coupled with internal language indices.
This makes addition of new languages a bit cumbersome:
- CMake script with translations to compile (coupled w/ Crowdin)
- The main() function deducing locale and available translations (coupled w/ CMake)
- Preferences setting the language (coupled w/ the main())
- UI form presenting the string representation of the interface languages (coupled w/ Preferences)
rakhimov commented
The new language addition process is simplified to a single step:
add the language ts file name into CMake script.
The available translations are discovered at runtime by the GUI.
This decouples translations from the GUI package
so that they can be distributed/installed separately (no compile time hard coding).