X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c0392997c9ae7624382ee07a8eddc674c27e68c9..57c208c5759da71a637f0f0f5b7d3dc3eda09c02:/src/gtk/threadno.cpp diff --git a/src/gtk/threadno.cpp b/src/gtk/threadno.cpp index 2cdfcd3a37..7299440456 100644 --- a/src/gtk/threadno.cpp +++ b/src/gtk/threadno.cpp @@ -1,7 +1,7 @@ ///////////////////////////////////////////////////////////////////////////// // Name: thread.cpp -// Purpose: No thread support -// Author: Original from Wolfram Gloger/Guilhem Lavaux +// Purpose: Solaris thread support +// Author: Guilhem Lavaux // Modified by: // Created: 04/22/98 // RCS-ID: $Id$ @@ -15,6 +15,7 @@ #include "wx/wx.h" #include "wx/module.h" #include "wx/thread.h" +#include "wx/log.h" wxMutex::wxMutex() { @@ -24,29 +25,29 @@ wxMutex::wxMutex() wxMutex::~wxMutex() { if (m_locked) - wxDebugMsg("wxMutex warning: destroying a locked mutex (%d locks)\n", m_locked); + wxLogDebug( "wxMutex warning: destroying a locked mutex (%d locks)\n", m_locked ); } wxMutexError wxMutex::Lock() { m_locked++; - return MUTEX_NO_ERROR; + return wxMUTEX_NO_ERROR; } wxMutexError wxMutex::TryLock() { if (m_locked > 0) - return MUTEX_BUSY; + return wxMUTEX_BUSY; m_locked++; - return MUTEX_NO_ERROR; + return wxMUTEX_NO_ERROR; } wxMutexError wxMutex::Unlock() { if (m_locked == 0) - return MUTEX_UNLOCKED; + return wxMUTEX_UNLOCKED; m_locked--; - return MUTEX_NO_ERROR; + return wxMUTEX_NO_ERROR; } wxCondition::wxCondition() @@ -84,12 +85,22 @@ wxThreadError wxThread::Create() { p_internal->exit_status = Entry(); OnExit(); - return THREAD_NO_ERROR; + return wxTHREAD_NO_ERROR; } wxThreadError wxThread::Destroy() { - return THREAD_RUNNING; + return wxTHREAD_NOT_RUNNING; +} + +wxThreadError wxThread::Pause() +{ + return wxTHREAD_NOT_RUNNING; +} + +wxThreadError wxThread::Resume() +{ + return wxTHREAD_NOT_RUNNING; } void wxThread::DeferDestroy( bool WXUNUSED(on) ) @@ -115,6 +126,11 @@ bool wxThread::IsMain() return TRUE; } +bool wxThread::IsRunning() const +{ + return FALSE; +} + bool wxThread::IsAlive() const { return FALSE; @@ -123,7 +139,7 @@ bool wxThread::IsAlive() const void wxThread::SetPriority(int WXUNUSED(prio)) { } int wxThread::GetPriority() const { return 0; } -wxMutex wxMainMutex; // controls access to all GUI functions +wxMutex *wxMainMutex; // controls access to all GUI functions wxThread::wxThread() { @@ -144,22 +160,27 @@ void wxThread::OnExit() } -// Automatic initialization -class wxThreadModule : public wxModule { - DECLARE_DYNAMIC_CLASS(wxThreadModule) -public: - bool OnInit(); - void OnExit(); -}; +IMPLEMENT_DYNAMIC_CLASS(wxThreadModule, wxModule) -bool wxThreadModule::OnInit() { - wxMainMutex.Lock(); +bool wxThreadModule::OnInit() +{ + wxMainMutex = new wxMutex(); + wxMainMutex->Lock(); return TRUE; } void wxThreadModule::OnExit() { - wxMainMutex.Unlock(); + wxMainMutex->Unlock(); + delete wxMainMutex; } -IMPLEMENT_DYNAMIC_CLASS(wxThreadModule, wxModule) + + +void wxMutexGuiEnter() +{ +} + +void wxMutexGuiLeave() +{ +}