Log
Up one levela chronicle of Python related development efforts
I've recently been doing some internationalization work for a gui tool using wxPython, and was confounded by an apparent inconsistency in how 'common' dialogs adhered to the locale settings in effect. Everything worked as expected on Linux and OSX, but on windows the dialogs stubbornly ignored all of my efforts to enforce a specific translation on their widget strings. Note that I'm talking about the 'convenience' dialogs offered by wxPython, such as wx.DirDialog, not dialogs that I construct from scratch.
As it turns out, on windows some of the dialogs actually completely defer to windows shell API calls, and therefore aren't sensitive to any wxPython localization state. The dialogs simply reflect whatever language settings are in effect on the windows machine on which they're invoked. So if you have your application set to, say, Japanese, but you're running on a windows machine configured for english, the dialogs will always show up in english. Which is bubkis. But it's also 'just the way it is', unless/until the wx folks (whom are ultimately responsible for how the underlying dialog entities are implemented) change the affected dialogs to be constructed from other wx primitives rather than using a direct windows call.
After wrestling with the problem for bit, I had begun to suspect the reason behind it, and ultimately did find some verification of my suspicions in a forum post. Interestingly, it references an MSDN forum post which describes a .Net developer struggling with the same issue -- namely the inability to localize, within a .Net application, a common windows dialog.