]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/listimpl.cpp
Applied patch [ 1195797 ] Fixes to compile on Win64
[wxWidgets.git] / include / wx / listimpl.cpp
index ccb1e6397c7a2459925a34dfc94dce6432ebc8c9..11d0196a4e99f9cc09161b3f11f084a4143b76f7 100644 (file)
@@ -6,19 +6,33 @@
 // Created:     16/11/98
 // RCS-ID:      $Id$
 // Copyright:   (c) 1998 Vadim Zeitlin
 // Created:     16/11/98
 // RCS-ID:      $Id$
 // Copyright:   (c) 1998 Vadim Zeitlin
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /////////////////////////////////////////////////////////////////////////////
 
-#define _DEFINE_LIST(T, name)           \
-    void wx##name##Node::DeleteData()   \
-    {                                   \
-        delete (T *)GetData();          \
-    }
+#if wxUSE_STL
 
 
-// redefine the macro so that now it will generate the class implementation
-// old value would provoke a compile-time error if this file is not included
-#undef  WX_DEFINE_LIST
-#define WX_DEFINE_LIST(name) _DEFINE_LIST(_WX_LIST_ITEM_TYPE_##name, name)
+    #undef  WX_DEFINE_LIST
+    #define WX_DEFINE_LIST(name)                                        \
+        void name::DeleteFunction( const _WX_LIST_ITEM_TYPE_##name X )  \
+        {                                                               \
+            delete X;                                                   \
+        }
+
+#else // if !wxUSE_STL
+
+    #define _DEFINE_LIST(T, name)         \
+        void wx##name##Node::DeleteData() \
+        {                                 \
+            delete (T *)GetData();        \
+        }
+
+    // redefine the macro so that now it will generate the class implementation
+    // old value would provoke a compile-time error if this file is not included
+    #undef  WX_DEFINE_LIST
+    #define WX_DEFINE_LIST(name) _DEFINE_LIST(_WX_LIST_ITEM_TYPE_##name, name)
+
+    // don't pollute preprocessor's name space
+    //#undef  _DEFINE_LIST
+
+#endif
 
 
-// don't pollute preprocessor's name space
-//#undef  _DEFINE_LIST