Replace dynamic casts with virtual wxWindow::WXGetTextEntry()

Instead of checking for all text-like controls one by one in
wxCommandEvent::GetString(), call a virtual function checking for this.

This is simpler, less error-prone and faster -- at the cost of
increasing the vtbl size of all wxWindow-derived classes.

Closes https://github.com/wxWidgets/wxWidgets/pull/1696
This commit is contained in:
Vadim Zeitlin
2020-01-07 03:47:23 +01:00
parent 20ecab6268
commit 52ae67ef86
11 changed files with 33 additions and 27 deletions

View File

@@ -759,6 +759,8 @@ public:
return GetCompositeControlsDefaultAttributes(variant);
}
virtual const wxTextEntry* WXGetTextEntry() const wxOVERRIDE { return this; }
protected:
// Override wxEvtHandler method to check for a common problem of binding
// wxEVT_TEXT_ENTER to a control without wxTE_PROCESS_ENTER style, which is