In the above sample code, passwdChanged(void) is connected to MythUITextEdit's valueChanged signal.
If Close() is called, m_Font will be deleted in advance and then MythUITextEdit::MoveCursor?() called after that.

I don't see how it's possible for the valueChanged() signal to be sent and received before MoveCursor?() is called, the signal is always sent as the last thing that we do. That's not just true in MythUITextEdit but all widgets.