Avoid events when implicitly selecting first wxBookCtrl page.

The first page added to a wxBookCtrlBase-derived control is always selected,
even if "bSelect" argument of AddPage() was false. This is necessary because
a non-empty book control must always have a selection but the "selection
changed" event generated when doing it is unexpected.

Fix this by not generating any events when the first page is implicitly
selected.

Closes #12075.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65967 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2010-10-31 13:33:34 +00:00
parent 03263ff73b
commit 60d5c563d2
7 changed files with 29 additions and 57 deletions

View File

@@ -648,19 +648,7 @@ bool wxNotebook::InsertPage ( size_t nPage,
pPage->Show(false);
}
//
// Some page should be selected: either this one or the first one if there is
// still no selection
//
int nSelNew = wxNOT_FOUND;
if (bSelect)
nSelNew = nPage;
else if ( m_selection == wxNOT_FOUND )
nSelNew = 0;
if (nSelNew != wxNOT_FOUND)
SetSelection(nSelNew);
DoSetSelectionAfterInsertion(nPage, bSelect);
InvalidateBestSize();