I need to convert a CPP program that uses wxWidgets to use wxLocale for multilingual support.
Currently, all texts are stored inline in the code. The texts should be wrapped in gettext calls and a .po file created.
The project will include:
* Wrap all texts in gettext calls
* Parametrize all dynamic texts
* Include the wxLocale initialization, including locales loading and language selection
* Include a drop-down language selector in the application
* Save the selected language to the registry/disk and restore it
* Initialize the language for first use according to the installer language
## Deliverables
1) The list of available languages will be kept in the program's header file. The program doesn't need to look for available .mo files.
2) The language selector will display two names always - the native language name and the name of the language in the current language.
For example, if the program is currently running in English, Spanish will be displayed as:
"español (Spanish)"
3) You don't need to do the translation itself. Just produce the .po files for the application.
4) You must supply a way for me to scan the CPP/.H files for gettext strings and build the .po file programatically. This should support merging existing translations so that the generated .po file includes all translated strings and new/modified strings marked correctly (fuzzy).
5) The application has code that saves the configuration information to the registry or to file storage. You must use the same process to save the language information too.
6) If the language setting isn't find in the program's registry entry, it should get the language code set by the installer. I will supply the installer for you to debug with.
7) The program must be able to change languages on the fly without closing and reopening.