} \
const CLASS& operator=( const CLASS& it ) \
{ \
- Assign(it); \
+ if (this != &it) \
+ Assign(it); \
return *this; \
} \
CLASS& operator++() { Next(); return *this; } \
Assign(other);
}
+ /**
+ Additional assignment operator.
+ */
+ const wxPropertyGridConstIterator& operator=( const wxPropertyGridIterator& it )
+ {
+ Assign(it);
+ return *this;
+ }
+
protected:
};
#ifndef SWIG
const wxPGVIterator& operator=( const wxPGVIterator& it )
{
- UnRef();
- m_pIt = it.m_pIt;
- m_pIt->IncRef();
+ if (this != &it)
+ {
+ UnRef();
+ m_pIt = it.m_pIt;
+ m_pIt->IncRef();
+ }
return *this;
}
#endif
Override this member function to add custom behavior on property
deletion.
*/
- virtual void DoDelete( wxPGProperty* item );
+ virtual void DoDelete( wxPGProperty* item, bool doDelete = true );
wxSize DoFitColumns( bool allowGridResize = false );
void DoSetPropertyValues( const wxVariantList& list,
wxPGProperty* default_category );
- void DoSetPropertyValueUnspecified( wxPGProperty* p );
-
void SetSplitterLeft( bool subProps = false );
/** Set virtual width for this particular page. */
void SetVirtualWidth( int width );
- void SortChildren( wxPGProperty* p );
- void Sort();
+ void DoSortChildren( wxPGProperty* p, int flags = 0 );
+ void DoSort( int flags = 0 );
+
+ bool PrepareAfterItemsAdded();
void SetSelection( wxPGProperty* p ) { m_selected = p; }