fixed warnings about possibly uninitialized variables; commented non trivial piece of code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -241,41 +241,41 @@ LRESULT APIENTRY _EXPORT wxComboEditWndProc(HWND hWnd,
|
|||||||
|
|
||||||
WXLRESULT wxComboBox::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam)
|
WXLRESULT wxComboBox::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam)
|
||||||
{
|
{
|
||||||
bool isSize = false;
|
// TODO: handle WM_CTLCOLOR messages from our EDIT control to be able to
|
||||||
long fromOld, toOld;
|
// 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 )
|
switch ( nMsg )
|
||||||
{
|
{
|
||||||
case CB_SETCURSEL:
|
case CB_SETCURSEL:
|
||||||
// Selection was set with SetSelection. Update the value too.
|
// Selection was set with SetSelection. Update the value too.
|
||||||
if ((int)wParam > GetCount())
|
if ((int)wParam > GetCount())
|
||||||
m_value = wxEmptyString;
|
m_value.clear();
|
||||||
else
|
else
|
||||||
m_value = GetString(wParam);
|
m_value = GetString(wParam);
|
||||||
m_selectionOld = -1;
|
m_selectionOld = -1;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WM_SIZE:
|
case WM_SIZE:
|
||||||
GetSelection(&fromOld, &toOld);
|
{
|
||||||
isSize = true;
|
// combobox selection sometimes spontaneously changes when its
|
||||||
break;
|
// size changes, restore it to the old value if necessary
|
||||||
|
long fromOld, toOld;
|
||||||
|
GetSelection(&fromOld, &toOld);
|
||||||
|
WXLRESULT result = wxChoice::MSWWindowProc(nMsg, wParam, lParam);
|
||||||
|
|
||||||
|
long fromNew, toNew;
|
||||||
|
GetSelection(&fromNew, &toNew);
|
||||||
|
|
||||||
|
if ( fromOld != fromNew || toOld != toNew )
|
||||||
|
{
|
||||||
|
SetSelection(fromOld, toOld);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
WXLRESULT result = wxChoice::MSWWindowProc(nMsg, wParam, lParam);
|
return wxChoice::MSWWindowProc(nMsg, wParam, lParam);
|
||||||
|
|
||||||
if(isSize)
|
|
||||||
{
|
|
||||||
long fromNew, toNew;
|
|
||||||
GetSelection(&fromNew, &toNew);
|
|
||||||
|
|
||||||
if ( fromOld != fromNew || toOld != toNew )
|
|
||||||
{
|
|
||||||
SetSelection(fromOld, toOld);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool wxComboBox::MSWProcessEditMsg(WXUINT msg, WXWPARAM wParam, WXLPARAM lParam)
|
bool wxComboBox::MSWProcessEditMsg(WXUINT msg, WXWPARAM wParam, WXLPARAM lParam)
|
||||||
|
Reference in New Issue
Block a user