]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/variant.h
added macros to avoid code repetition when defining comparison operators; use them...
[wxWidgets.git] / include / wx / variant.h
index 5d971dbba763a115691ea56ce1a33987873ab215..61186b5f2002899c87a6b63080bafa254b514ad1 100644 (file)
@@ -20,6 +20,7 @@
 #include "wx/string.h"
 #include "wx/arrstr.h"
 #include "wx/list.h"
+#include "wx/cpp.h"
 
 #if wxUSE_DATETIME
     #include "wx/datetime.h"
@@ -254,14 +255,6 @@ public:
     wxObject* GetWxObjectPtr() const;
 
 
-#if WXWIN_COMPATIBILITY_2_4
-    wxDEPRECATED( wxVariant(const wxStringList& val, const wxString& name = wxEmptyString) );
-    wxDEPRECATED( bool operator== (const wxStringList& value) const );
-    wxDEPRECATED( bool operator!= (const wxStringList& value) const );
-    wxDEPRECATED( void operator= (const wxStringList& value) );
-    wxDEPRECATED( wxStringList& GetStringList() const );
-#endif
-
     // ------------------------------
     // list operations
     // ------------------------------
@@ -316,21 +309,15 @@ private:
     DECLARE_DYNAMIC_CLASS(wxVariant)
 };
 
-/* Fake macro parameter value */
-#ifdef EMPTY_PARAMETER_VALUE
-    #undef EMPTY_PARAMETER_VALUE
-#endif
-#define EMPTY_PARAMETER_VALUE
-
 #define DECLARE_VARIANT_OBJECT(classname) \
-    DECLARE_VARIANT_OBJECT_EXPORTED(classname,EMPTY_PARAMETER_VALUE)
+    DECLARE_VARIANT_OBJECT_EXPORTED(classname, wxEMPTY_PARAMETER_VALUE)
 
 #define DECLARE_VARIANT_OBJECT_EXPORTED(classname,expdecl) \
 expdecl classname& operator << ( classname &object, const wxVariant &variant ); \
 expdecl wxVariant& operator << ( wxVariant &variant, const classname &object );
 
 #define IMPLEMENT_VARIANT_OBJECT(classname) \
-    IMPLEMENT_VARIANT_OBJECT_EXPORTED(classname,EMPTY_PARAMETER_VALUE)
+    IMPLEMENT_VARIANT_OBJECT_EXPORTED(classname, wxEMPTY_PARAMETER_VALUE)
 
 #define IMPLEMENT_VARIANT_OBJECT_EXPORTED_NO_EQ(classname,expdecl) \
 class classname##VariantData: public wxVariantData \
@@ -381,10 +368,10 @@ expdecl wxVariant& operator << ( wxVariant &variant, const classname &value )\
     return variant;\
 }
 
-// implements a wxVariantData-derived class using for the Eq() method the operator==
-// which must have been provided by "classname"
+// implements a wxVariantData-derived class using for the Eq() method the
+// operator== which must have been provided by "classname"
 #define IMPLEMENT_VARIANT_OBJECT_EXPORTED(classname,expdecl) \
-IMPLEMENT_VARIANT_OBJECT_EXPORTED_NO_EQ(classname,expdecl) \
+IMPLEMENT_VARIANT_OBJECT_EXPORTED_NO_EQ(classname,wxEMPTY_PARAMETER_VALUE expdecl) \
 \
 bool classname##VariantData::Eq(wxVariantData& data) const \
 {\
@@ -398,8 +385,10 @@ bool classname##VariantData::Eq(wxVariantData& data) const \
 
 // implements a wxVariantData-derived class using for the Eq() method a shallow
 // comparison (through wxObject::IsSameAs function)
+#define IMPLEMENT_VARIANT_OBJECT_SHALLOWCMP(classname) \
+    IMPLEMENT_VARIANT_OBJECT_EXPORTED_SHALLOWCMP(classname, wxEMPTY_PARAMETER_VALUE)
 #define IMPLEMENT_VARIANT_OBJECT_EXPORTED_SHALLOWCMP(classname,expdecl) \
-IMPLEMENT_VARIANT_OBJECT_EXPORTED_NO_EQ(classname,expdecl) \
+IMPLEMENT_VARIANT_OBJECT_EXPORTED_NO_EQ(classname,wxEMPTY_PARAMETER_VALUE expdecl) \
 \
 bool classname##VariantData::Eq(wxVariantData& data) const \
 {\