moved assert for parent window not being a static box to common code where it should catch more cases
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18667 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -38,6 +38,7 @@
|
||||
#include "wx/control.h"
|
||||
#include "wx/checkbox.h"
|
||||
#include "wx/radiobut.h"
|
||||
#include "wx/statbox.h"
|
||||
#include "wx/textctrl.h"
|
||||
#include "wx/settings.h"
|
||||
#include "wx/dialog.h"
|
||||
@@ -203,6 +204,17 @@ bool wxWindowBase::CreateBase(wxWindowBase *parent,
|
||||
// when a new ctor is added which doesn't call InitWindow)
|
||||
wxASSERT_MSG( m_isWindow, wxT("Init() must have been called before!") );
|
||||
|
||||
#if wxUSE_STATBOX
|
||||
// wxGTK doesn't allow to create controls with static box as the parent so
|
||||
// this will result in a crash when the program is ported to wxGTK so warn
|
||||
// the user about it
|
||||
|
||||
// if you get this assert, the correct solution is to create the controls
|
||||
// as siblings of the static box
|
||||
wxASSERT_MSG( !parent || !wxDynamicCast(parent, wxStaticBox),
|
||||
_T("wxStaticBox can't be used as a window parent!") );
|
||||
#endif // wxUSE_STATBOX
|
||||
|
||||
// generate a new id if the user doesn't care about it
|
||||
m_windowId = id == -1 ? NewControlId() : id;
|
||||
|
||||
|
Reference in New Issue
Block a user