]> git.saurik.com Git - wxWidgets.git/commitdiff
undid the patches which shouldn't (IMHO) have been applied to this branch
authorVadim Zeitlin <vadim@wxwidgets.org>
Thu, 4 Jul 2002 17:26:36 +0000 (17:26 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Thu, 4 Jul 2002 17:26:36 +0000 (17:26 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/msw/combobox.cpp
src/msw/thread.cpp
src/msw/tooltip.cpp

index bb325725ce255f45b21ff4941e226361a0d0ece7..e8bfc1b6d563b866f978398e0b6efc8067dc2cf9 100644 (file)
@@ -269,17 +269,11 @@ bool wxComboBox::MSWCommand(WXUINT param, WXWORD WXUNUSED(id))
 
                 event.SetString(value);
                 event.SetEventObject(this);
-                return ProcessCommand(event);
+                ProcessCommand(event);
             }
             break;
     }
 
-       // I don't think the following should be true.  The return value is
-       // whether the event has been handled, not the status of the handling.
-       // So, we only return false if the switch fell through.  This will
-       // resolve the same event being sent multiple times by MS Windows.
-       // mea 05-22-01
-
     // there is no return value for the CBN_ notifications, so always return
     // FALSE from here to pass the message to DefWindowProc()
     return FALSE;
index 2180ddd994e8a548c97498fb39de7e8eb51b61aa..d93d017704c2d27c7abe938b44eee16dd8d89bc1 100644 (file)
@@ -965,30 +965,8 @@ wxThreadError wxThread::Delete(ExitCode *pRc)
 
     HANDLE hThread = m_internal->GetHandle();
 
-       // Check if thread is really still running.  There is a
-       // race condition in WinThreadStart between the time the
-       // m_internal->m_state is set to STATE_EXITED and the win32
-       // thread actually exits.  It can be flagged as STATE_EXITED
-       // and then we don't wait for it to exit.  This will cause
-       // GetExitCodeThread to return STILL_ACTIVE.
-       if ( !isRunning )
-       {
-               if ( !IsRunning() )
-               {
-                       if ( ::GetExitCodeThread(hThread, (LPDWORD)&rc) )
-                       {
-                               if ((DWORD)rc == STILL_ACTIVE)
-                                       isRunning = TRUE;
-                       }
-               }                                                                                                               
-               else
-               {
-                       isRunning = TRUE;
-               }
-       }
-
-    // does it still run?
-    if ( isRunning )
+    // does is still run?
+    if ( isRunning || IsRunning() )
     {
         if ( IsMain() )
         {
@@ -1044,24 +1022,13 @@ wxThreadError wxThread::Delete(ExitCode *pRc)
                     break;
 
                 case WAIT_OBJECT_0 + 1:
+                    // new message arrived, process it
+                    if ( !wxTheApp->DoMessage() )
                     {
-                        MSG    peekMsg;
-                        // Check if a new message has really arrived.
-                        // MsgWaitForMultipleObjects can indicate that a message
-                        // is ready for processing, but this message may be sucked
-                        // up by GetMessage and then GetMessage will hang and not
-                        // allow us to process the actual thread exit event.
-                        if (::PeekMessage(&peekMsg, (HWND) NULL, 0, 0, PM_NOREMOVE))
-                        {
-                            // new message arrived, process it
-                            if ( !wxTheApp->DoMessage() )
-                            {
-                                // WM_QUIT received: kill the thread
-                                Kill();
-                                                            
-                                return wxTHREAD_KILLED;
-                            }
-                        }
+                        // WM_QUIT received: kill the thread
+                        Kill();
+
+                        return wxTHREAD_KILLED;
                     }
                     break;
 
index 28bafa0c1603b74957d2651fbfa7db7d1f5f4863..930748cdbf1cf5b33ac47d6beaf93417fbf405fa 100644 (file)
@@ -382,9 +382,11 @@ void wxToolTip::SetWindow(wxWindow *win)
     //     something like this where the derived class can do such things
     //     itself instead of wxToolTip "knowing" about them all
     wxComboBox *combo = wxDynamicCast(control, wxComboBox);
-    if ( combo && !(combo->GetWindowStyle() & wxCB_READONLY))
+    if ( combo )
     {
-        WXHWND hwndComboEdit = combo->GetEditHWND();
+        WXHWND hwndComboEdit = combo->GetWindowStyle() & wxCB_READONLY
+                                ? combo->GetHWND()
+                                : combo->GetEditHWND();
         if ( hwndComboEdit )
         {
             Add(hwndComboEdit);