If you have a cool piece of software to share, but you are not hosting it officially yet, please dump it in here. If you have code snippets that are useful, please donate!
I searched for the method of setting password style to a wxTextCtrl at runtime, and the answer is impossible, as the manual says:
wxTE_READONLY, wxTE_PASSWORD and wrapping styles can be dynamically changed under wxGTK but not wxMSW.
I know that it can be done at runtime (I did it when I was using VB and Euphoria), so I tried this code and it works. Unfortunately it is for Windows only.
The win-Refresh() should be moved after the #endif as win will need to be refreshed regardless of the method used to change it's style.
and finaly this is maybe better done as a patch wxWindow::SetWindowStyle(), as you code shows that wxTE_PASSWORD is a style that can be changed after creation on __WXMSW__.
It turns out that restoring the bullet after once removing it (with 0) is impossible, in Ansi mode builds on WinXP.
SendMessage(EM_SETPASSWORDCHAR) and even SendMessageW(EM_SETPASSWORDCHAR) cannot understand 0x25CF. You just have to settle for '*' in non-Unicode builds.
This is tested on WinXP(ansi+unicode),Win95(ansi),Vista(unicode) and GTK2: