// -----------------------------------------------------------------------------
// a double-linked list class
// -----------------------------------------------------------------------------
+
class WXDLLEXPORT wxListBase : public wxObject
{
friend class wxNodeBase; // should be able to call DetachNode()
void Sort(wxSortCompareFunction compfunc) { wxListBase::Sort(compfunc); }
wxNode *Member(wxObject *object) const { return (wxNode *)Find(object); }
+
+private:
+ DECLARE_DYNAMIC_CLASS(wxList)
};
// -----------------------------------------------------------------------------
private:
void DoCopy(const wxStringList&); // common part of copy ctor and operator=
+
+ DECLARE_DYNAMIC_CLASS(wxStringList)
};
#endif // wxLIST_COMPATIBILITY
delete[] objArray;
}
+// ============================================================================
+// compatibility section from now on
+// ============================================================================
+
+#ifdef wxLIST_COMPATIBILITY
+
// -----------------------------------------------------------------------------
// wxList (a.k.a. wxObjectList)
// -----------------------------------------------------------------------------
+IMPLEMENT_DYNAMIC_CLASS(wxList, wxObject)
+
void wxObjectListNode::DeleteData()
{
delete (wxObject *)GetData();
// wxStringList
// -----------------------------------------------------------------------------
+IMPLEMENT_DYNAMIC_CLASS(wxStringList, wxObject)
+
// instead of WX_DEFINE_LIST(wxStringListBase) we define this function
// ourselves
void wxStringListNode::DeleteData()
delete [] array;
}
+
+#endif // wxLIST_COMPATIBILITY
+