Use the same logic for closing dialogs as for handling Escape key.
Pressing "Esc" key closed the dialog with only wxID_OK button (but no wxID_CANCEL one) by default but pressing the "close window" button only closed it if wxID_CANCEL was present. Fix this by using the same code in OnCloseWindow() as in OnCharHook(), after extracting it into the new SendCloseButtonClickEvent() method. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -249,6 +249,13 @@ private:
|
||||
// can be used as our parent or NULL if it can't
|
||||
wxWindow *CheckIfCanBeUsedAsParent(wxWindow *parent) const;
|
||||
|
||||
// Helper of OnCharHook() and OnCloseWindow(): find the appropriate button
|
||||
// for closing the dialog and send a click event for it.
|
||||
//
|
||||
// Return true if we found a button to close the dialog and "clicked" it or
|
||||
// false otherwise.
|
||||
bool SendCloseButtonClickEvent();
|
||||
|
||||
// handle Esc key presses
|
||||
void OnCharHook(wxKeyEvent& event);
|
||||
|
||||
|
Reference in New Issue
Block a user