X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1c4293cb91327247ad69e6ec8d589bfaa299db28..e6ba38871f6cc5c02391c04e37e481d0428cef3f:/src/propgrid/propgridpagestate.cpp diff --git a/src/propgrid/propgridpagestate.cpp b/src/propgrid/propgridpagestate.cpp index 425ab026da..18c0369c6c 100644 --- a/src/propgrid/propgridpagestate.cpp +++ b/src/propgrid/propgridpagestate.cpp @@ -16,6 +16,8 @@ #pragma hdrstop #endif +#if wxUSE_PROPGRID + #ifndef WX_PRECOMP #include "wx/defs.h" #include "wx/object.h" @@ -27,24 +29,10 @@ #include "wx/panel.h" #include "wx/dc.h" #include "wx/dcmemory.h" - #include "wx/button.h" #include "wx/pen.h" #include "wx/brush.h" - #include "wx/cursor.h" - #include "wx/dialog.h" - #include "wx/settings.h" - #include "wx/msgdlg.h" - #include "wx/choice.h" - #include "wx/stattext.h" - #include "wx/scrolwin.h" - #include "wx/dirdlg.h" - #include "wx/layout.h" - #include "wx/sizer.h" - #include "wx/textdlg.h" - #include "wx/filedlg.h" - #include "wx/statusbr.h" #include "wx/intl.h" - #include "wx/frame.h" + #include "wx/stopwatch.h" #endif // This define is necessary to prevent macro clearing @@ -54,7 +42,6 @@ #include #include - #define wxPG_DEFAULT_SPLITTERX 110 @@ -398,7 +385,8 @@ wxPGProperty* wxPropertyGridPageState::GetLastItem( int flags ) if ( pwc->GetFlags() & itemExMask ) { wxPropertyGridIterator it( this, flags, pwc ); - for ( ; !it.AtEnd(); it.Prev() ); + for ( ; !it.AtEnd(); it.Prev() ) + ; pwc = (wxPGProperty*) it.GetProperty(); } @@ -1446,7 +1434,7 @@ void wxPropertyGridPageState::DoSetPropertyValues( const wxVariantList& list, wx wxPGProperty* foundProp = BaseGetPropertyByName(propName); if ( foundProp ) { - wxASSERT( wxPGIsVariantType(*current, list) ); + wxASSERT( current->GetType() == wxPG_VARIANT_TYPE_LIST ); wxVariantList& list2 = current->GetList(); wxVariantList::const_iterator node2; @@ -1500,6 +1488,12 @@ int wxPropertyGridPageState::PrepareToAddItem( wxPGProperty* property, if ( scheduledParent == m_properties ) scheduledParent = (wxPGProperty*) NULL; + if ( scheduledParent && !scheduledParent->IsCategory() ) + { + wxASSERT_MSG( property->GetBaseName().length(), + "Property's children must have unique, non-empty names within their scope" ); + } + property->m_parentState = this; if ( property->IsCategory() ) @@ -1869,3 +1863,5 @@ void wxPropertyGridPageState::DoDelete( wxPGProperty* item ) } // ----------------------------------------------------------------------- + +#endif // wxUSE_PROPGRID