X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f915d44b3f310ceabfca6b0e66c6c81fd778f7b9..3cc570448587520419caf27f2ea2414be372eb89:/src/propgrid/propgridiface.cpp diff --git a/src/propgrid/propgridiface.cpp b/src/propgrid/propgridiface.cpp index f762133260..ac348f9f1f 100644 --- a/src/propgrid/propgridiface.cpp +++ b/src/propgrid/propgridiface.cpp @@ -498,18 +498,6 @@ bool wxPropertyGridInterface::ExpandAll( bool doExpand ) // ----------------------------------------------------------------------- -void wxPropertyGridInterface::SetPropertyValueUnspecified( wxPGPropArg id ) -{ - wxPG_PROP_ARG_CALL_PROLOG() - wxPropertyGrid* propGrid = p->GetGridIfDisplayed(); - if ( propGrid ) - propGrid->DoSetPropertyValueUnspecified(p); - else - p->GetParentState()->DoSetPropertyValueUnspecified(p); -} - -// ----------------------------------------------------------------------- - void wxPropertyGridInterface::ClearModifiedStatus() { unsigned int pageIndex = 0; @@ -523,6 +511,9 @@ void wxPropertyGridInterface::ClearModifiedStatus() pageIndex++; } + + // Update active editor control, if any + GetPropertyGrid()->RefreshEditor(); } // ----------------------------------------------------------------------- @@ -552,13 +543,7 @@ void wxPropertyGridInterface::SetPropVal( wxPGPropArg id, wxVariant& value ) wxPG_PROP_ARG_CALL_PROLOG() if ( p ) - { p->SetValue(value); - wxPropertyGrid* propGrid = p->GetGridIfDisplayed(); - if ( propGrid ) - propGrid->DrawItemAndValueRelated( p ); - - } } // ----------------------------------------------------------------------- @@ -567,12 +552,8 @@ void wxPropertyGridInterface::SetPropertyValueString( wxPGPropArg id, const wxSt { wxPG_PROP_ARG_CALL_PROLOG() - if ( m_pState->DoSetPropertyValueString(p,value) ) - { - wxPropertyGrid* propGrid = p->GetGridIfDisplayed(); - if ( propGrid ) - propGrid->DrawItemAndValueRelated( p ); - } + if ( p ) + m_pState->DoSetPropertyValueString(p, value); } // ----------------------------------------------------------------------- @@ -759,6 +740,25 @@ bool wxPropertyGridInterface::Expand( wxPGPropArg id ) // ----------------------------------------------------------------------- +void wxPropertyGridInterface::Sort( int flags ) +{ + wxPropertyGrid* pg = GetPropertyGrid(); + + pg->ClearSelection(false); + + unsigned int pageIndex = 0; + + for (;;) + { + wxPropertyGridPageState* page = GetPageState(pageIndex); + if ( !page ) break; + page->DoSort(flags); + pageIndex++; + } +} + +// ----------------------------------------------------------------------- + void wxPropertyGridInterface::SetPropertyLabel( wxPGPropArg id, const wxString& newproplabel ) { wxPG_PROP_ARG_CALL_PROLOG()