]> git.saurik.com Git - wxWidgets.git/commitdiff
fixed warnings about possibly uninitialized variables; commented non trivial piece...
authorVadim Zeitlin <vadim@wxwidgets.org>
Mon, 21 Mar 2005 12:45:24 +0000 (12:45 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Mon, 21 Mar 2005 12:45:24 +0000 (12:45 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/msw/combobox.cpp

index 04c3639c910e7fa12ee69d8b6e90c68cbcf9a30e..1fd9e0daa577645fcc8d67055ba21c7a62098f72 100644 (file)
@@ -241,41 +241,41 @@ LRESULT APIENTRY _EXPORT wxComboEditWndProc(HWND hWnd,
 
 WXLRESULT wxComboBox::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam)
 {
-    bool isSize = false;
-    long fromOld, toOld;
+    // TODO: handle WM_CTLCOLOR messages from our EDIT control to be able to
+    //       set its colour correctly (to be the same as our own one)
 
-    // handle WM_CTLCOLOR messages from our EDIT control to be able to set its
-    // colour correctly (to be the same as our own one)
     switch ( nMsg )
     {
         case CB_SETCURSEL:
             // Selection was set with SetSelection.  Update the value too.
             if ((int)wParam > GetCount())
-                m_value = wxEmptyString;
+                m_value.clear();
             else
                 m_value = GetString(wParam);
             m_selectionOld = -1;
             break;
+
         case WM_SIZE:
-            GetSelection(&fromOld, &toOld);
-            isSize = true;
-            break;
-    }
+            {
+                // combobox selection sometimes spontaneously changes when its
+                // size changes, restore it to the old value if necessary
+                long fromOld, toOld;
+                GetSelection(&fromOld, &toOld);
+                WXLRESULT result = wxChoice::MSWWindowProc(nMsg, wParam, lParam);
 
-    WXLRESULT result = wxChoice::MSWWindowProc(nMsg, wParam, lParam);
+                long fromNew, toNew;
+                GetSelection(&fromNew, &toNew);
 
-    if(isSize)
-    {
-        long fromNew, toNew;
-        GetSelection(&fromNew, &toNew);
+                if ( fromOld != fromNew || toOld != toNew )
+                {
+                    SetSelection(fromOld, toOld);
+                }
 
-        if ( fromOld != fromNew || toOld != toNew )
-        {
-            SetSelection(fromOld, toOld);
-        }
+                return result;
+            }
     }
 
-    return result;
+    return wxChoice::MSWWindowProc(nMsg, wParam, lParam);
 }
 
 bool wxComboBox::MSWProcessEditMsg(WXUINT msg, WXWPARAM wParam, WXLPARAM lParam)