]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/thread.h
Augmented version to b5
[wxWidgets.git] / include / wx / thread.h
index 1acb78279f807e0831867e9dc90826eae2baad16..b0bbc261f714c080681bc255d6a75368c2456ad7 100644 (file)
 #ifndef __THREADH__
 #define __THREADH__
 
-#ifdef __GNUG__
-    #pragma interface "thread.h"
-#endif
-
 // ----------------------------------------------------------------------------
 // headers
 // ----------------------------------------------------------------------------
 #include "wx/setup.h"
 
 #if wxUSE_THREADS
+/* otherwise we get undefined references for non-thread case (KB)*/
+#ifdef __GNUG__
+    #pragma interface "thread.h"
+#endif
 
 // Windows headers define it
 #ifdef Yield
@@ -151,9 +151,9 @@ public:
     WXCRITICAL_INLINE ~wxCriticalSection();
 
     // enter the section (the same as locking a mutex)
-    void WXCRITICAL_INLINE Enter();
+    WXCRITICAL_INLINE void Enter();
     // leave the critical section (same as unlocking a mutex)
-    void WXCRITICAL_INLINE Leave();
+    WXCRITICAL_INLINE void Leave();
 
 private:
     // no assignment operator nor copy ctor
@@ -301,7 +301,7 @@ public:
         // Returns true if the thread is running (not paused, not killed).
     bool IsRunning() const;
         // Returns true if the thread is suspended
-    bool IsPaused() const { return IsAlive() && !IsRunning(); }
+    bool IsPaused() const;
 
     // called when the thread exits - in the context of this thread
     //
@@ -352,6 +352,8 @@ void WXDLLEXPORT wxMutexGuiLeave();
 
 #else // !wxUSE_THREADS
 
+#include <wx/defs.h> // for WXDLLEXPORT
+
 // no thread support
 inline void WXDLLEXPORT wxMutexGuiEnter() { }
 inline void WXDLLEXPORT wxMutexGuiLeave() { }