]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/event.h
support SDK < 10.6, fixes #14902
[wxWidgets.git] / include / wx / event.h
index e28d5c29708f993883195c7a2c7bb5ede552a6bc..6e4805549c66deafbd7b146d0a262645f2ec7baa 100644 (file)
     #include "wx/meta/convertible.h"
 #endif
 
-#include "wx/meta/removeref.h"
+// Currently VC6 and VC7 are known to not be able to compile CallAfter() code,
+// so disable it for them.
+#if !defined(__VISUALC__) || wxCHECK_VISUALC_VERSION(8)
+    #include "wx/meta/removeref.h"
+
+    #define wxHAS_CALL_AFTER
+#endif
 
 // ----------------------------------------------------------------------------
 // forward declarations
@@ -1276,6 +1282,8 @@ private:
 // done asynchronously, i.e. at some later time, instead of immediately when
 // the event object is constructed.
 
+#ifdef wxHAS_CALL_AFTER
+
 // This is a base class used to process all method calls.
 class wxAsyncMethodCallEvent : public wxEvent
 {
@@ -1423,6 +1431,9 @@ private:
     const ParamType2 m_param2;
 };
 
+#endif // wxHAS_CALL_AFTER
+
+
 #if wxUSE_GUI
 
 
@@ -3294,6 +3305,7 @@ public:
         // NOTE: uses AddPendingEvent(); call only from secondary threads
 #endif
 
+#ifdef wxHAS_CALL_AFTER
     // Asynchronous method calls: these methods schedule the given method
     // pointer for a later call (during the next idle event loop iteration).
     //
@@ -3311,7 +3323,7 @@ public:
     }
 
     // Notice that we use P1 and not T1 for the parameter to allow passing
-    // parameters that are only convertible to the type taken by the method
+    // parameters that are convertible to the type taken by the method
     // instead of being exactly the same, to be closer to the usual method call
     // semantics.
     template <typename T, typename T1, typename P1>
@@ -3331,6 +3343,7 @@ public:
                 static_cast<T*>(this), method, x1, x2)
         );
     }
+#endif // wxHAS_CALL_AFTER
 
 
     // Connecting and disconnecting