]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/spinbutt.cpp
attempt to fix crash in tree ctrl
[wxWidgets.git] / src / msw / spinbutt.cpp
index 826c4a5e1b8bf8e520cb951c38e6aac4eb2dc560..03428c16ee3a8ada3d7a41904846304c5e81e7c6 100644 (file)
 
 #if wxUSE_SPINBTN
 
 
 #if wxUSE_SPINBTN
 
+#include "wx/spinbutt.h"
+
 IMPLEMENT_DYNAMIC_CLASS(wxSpinEvent, wxNotifyEvent)
 
 #if defined(__WIN95__) && !defined(__TWIN32__)
 
 IMPLEMENT_DYNAMIC_CLASS(wxSpinEvent, wxNotifyEvent)
 
 #if defined(__WIN95__) && !defined(__TWIN32__)
 
-#include "wx/spinbutt.h"
 #include "wx/msw/private.h"
 
 #if defined(__WIN95__) && !(defined(__GNUWIN32_OLD__) || defined(__TWIN32__))
 #include "wx/msw/private.h"
 
 #if defined(__WIN95__) && !(defined(__GNUWIN32_OLD__) || defined(__TWIN32__))
@@ -105,7 +106,7 @@ bool wxSpinButton::Create(wxWindow *parent,
         y = 0;
 
     // translate the styles
         y = 0;
 
     // translate the styles
-    DWORD wstyle = WS_VISIBLE | WS_CHILD | WS_TABSTOP |
+    DWORD wstyle = WS_VISIBLE | WS_CHILD | WS_TABSTOP | /*  WS_CLIPSIBLINGS | */
                    UDS_NOTHOUSANDS | // never useful, sometimes harmful
                    UDS_SETBUDDYINT;  // it doesn't harm if we don't have buddy
 
                    UDS_NOTHOUSANDS | // never useful, sometimes harmful
                    UDS_SETBUDDYINT;  // it doesn't harm if we don't have buddy
 
@@ -131,7 +132,7 @@ bool wxSpinButton::Create(wxWindow *parent,
 
     if ( !m_hWnd )
     {
 
     if ( !m_hWnd )
     {
-        wxLogLastError("CreateUpDownControl");
+        wxLogLastError(wxT("CreateUpDownControl"));
 
         return FALSE;
     }
 
         return FALSE;
     }
@@ -220,6 +221,9 @@ bool wxSpinButton::MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result)
     LPNMUPDOWN lpnmud = (LPNMUPDOWN)lParam;
 #endif
 
     LPNMUPDOWN lpnmud = (LPNMUPDOWN)lParam;
 #endif
 
+    if (lpnmud->hdr.hwndFrom != GetHwnd()) // make sure it is the right control
+        return FALSE;
+
     wxSpinEvent event(lpnmud->iDelta > 0 ? wxEVT_SCROLL_LINEUP
                                          : wxEVT_SCROLL_LINEDOWN,
                       m_windowId);
     wxSpinEvent event(lpnmud->iDelta > 0 ? wxEVT_SCROLL_LINEUP
                                          : wxEVT_SCROLL_LINEDOWN,
                       m_windowId);