]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/any.cpp
Fix crash when accessing clipboard before entering the main loop.
[wxWidgets.git] / src / common / any.cpp
index 9ac859b6e17712fea33beb575bcb32e735da2030..ff7b1c8a30d5a4fb737f2fc1295f6fe2a091de2f 100644 (file)
@@ -112,27 +112,23 @@ wxAnyValueType::wxAnyValueType()
 //
 // Define integer minimum and maximum as helpers
 #ifdef wxLongLong_t
-const wxAnyBaseIntType UseIntMin = wxINT64_MIN;
-const wxAnyBaseUintType UseIntMax = wxINT64_MAX;
-const wxAnyBaseUintType UseUintMax = wxUINT64_MAX;
+    #define UseIntMin  (wxINT64_MIN)
+    #define UseIntMax  (wxINT64_MAX)
+    #define UseUintMax (wxUINT64_MAX)
 #else
-const wxAnyBaseIntType UseIntMin = LONG_MIN;
-const wxAnyBaseUintType UseUintMax = ULONG_MAX;
-const wxAnyBaseUintType UseIntMax = LONG_MAX;
+    #define UseIntMin  (LONG_MIN)
+    #define UseIntMax  (LONG_MAX)
+    #define UseUintMax (ULONG_MAX)
 #endif
 
+namespace
+{
+
 const double UseIntMinF = static_cast<double>(UseIntMin);
-#ifndef __VISUALC6__
 const double UseIntMaxF = static_cast<double>(UseIntMax);
 const double UseUintMaxF = static_cast<double>(UseUintMax);
-#else
-// VC6 doesn't implement conversion from unsigned __int64 to double
-const wxAnyBaseIntType UseIntMax0 = static_cast<wxAnyBaseIntType>(UseIntMax);
-const wxAnyBaseIntType UseUintMax0 = static_cast<wxAnyBaseIntType>(UseUintMax);
-const double UseIntMaxF = static_cast<double>(UseIntMax0);
-const double UseUintMaxF = static_cast<double>(UseUintMax0);
-#endif
 
+} // anonymous namespace
 
 bool wxAnyValueTypeImplInt::ConvertValue(const wxAnyValueBuffer& src,
                                          wxAnyValueType* dstType,
@@ -339,6 +335,10 @@ WX_IMPLEMENT_ANY_VALUE_TYPE(wxAnyValueTypeImplString)
 WX_IMPLEMENT_ANY_VALUE_TYPE(wxAnyValueTypeImpl<bool>)
 WX_IMPLEMENT_ANY_VALUE_TYPE(wxAnyValueTypeImplDouble)
 
+WX_IMPLEMENT_ANY_VALUE_TYPE(wxAnyValueTypeImpl<wxDateTime>)
+//WX_IMPLEMENT_ANY_VALUE_TYPE(wxAnyValueTypeImpl<wxObject*>)
+//WX_IMPLEMENT_ANY_VALUE_TYPE(wxAnyValueTypeImpl<wxArrayString>)
+
 //-------------------------------------------------------------------------
 // wxAnyNullValueType implementation
 //-------------------------------------------------------------------------
@@ -354,12 +354,12 @@ class wxAnyValueTypeImpl<wxAnyNullValue> : public wxAnyValueType
 {
     WX_DECLARE_ANY_VALUE_TYPE(wxAnyValueTypeImpl<wxAnyNullValue>)
 public:
+    // Dummy implementations
     virtual void DeleteValue(wxAnyValueBuffer& buf) const
     {
-        buf.m_ptr = NULL;  // This is important
+        wxUnusedVar(buf);
     }
 
-    // Dummy implementations
     virtual void CopyBuffer(const wxAnyValueBuffer& src,
                             wxAnyValueBuffer& dst) const
     {