]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/list.h
more warning fixes; removed references to wxToolBarBase from wxRTTI
[wxWidgets.git] / include / wx / list.h
index c51e085977fc48aabb9f71de9e3fcb87a660f8ba..9d64eafea3fb3cb403c6dfc65bf3c9aa9b095e53 100644 (file)
@@ -586,6 +586,8 @@ private:
             { wxNodeBase::SetData(data); }                                  \
                                                                             \
         virtual void DeleteData();                                          \
+                                                                            \
+        DECLARE_NO_COPY_CLASS(nodetype)                                     \
     };                                                                      \
                                                                             \
     classexp name : public wxListBase                                       \
@@ -980,22 +982,46 @@ private:
 
 #endif // !wxUSE_STL
 
-// =============================================================================
+// ============================================================================
 // now we can define classes 100% compatible with the old ones
-// =============================================================================
+// ============================================================================
 
 // ----------------------------------------------------------------------------
 // commonly used list classes
 // ----------------------------------------------------------------------------
 
-#ifdef wxLIST_COMPATIBILITY
+#if defined(wxLIST_COMPATIBILITY)
+
+// inline compatibility functions
+
+#if !wxUSE_STL
+
+// ----------------------------------------------------------------------------
+// wxNodeBase deprecated methods
+// ----------------------------------------------------------------------------
+
+inline wxNode *wxNodeBase::Next() const { return (wxNode *)GetNext(); }
+inline wxNode *wxNodeBase::Previous() const { return (wxNode *)GetPrevious(); }
+inline wxObject *wxNodeBase::Data() const { return (wxObject *)GetData(); }
+
+// ----------------------------------------------------------------------------
+// wxListBase deprecated methods
+// ----------------------------------------------------------------------------
+
+inline int wxListBase::Number() const { return (int)GetCount(); }
+inline wxNode *wxListBase::First() const { return (wxNode *)GetFirst(); }
+inline wxNode *wxListBase::Last() const { return (wxNode *)GetLast(); }
+inline wxNode *wxListBase::Nth(size_t n) const { return (wxNode *)Item(n); }
+inline wxListBase::operator wxList&() const { return *(wxList*)this; }
+
+#endif
 
 // define this to make a lot of noise about use of the old wxList classes.
 //#define wxWARN_COMPAT_LIST_USE
 
-// -----------------------------------------------------------------------------
+// ----------------------------------------------------------------------------
 // wxList compatibility class: in fact, it's a list of wxObjects
-// -----------------------------------------------------------------------------
+// ----------------------------------------------------------------------------
 
 WX_DECLARE_LIST_2(wxObject, wxObjectList, wxObjectListNode,
                         class WXDLLIMPEXP_BASE);