- When painting the text, if the control is OWNERDRAWN the issue the

WM_DRAWITEM message.
- Set the focused status at the end of the end of the Setfocus routine.
- Flip the order of updating the list box and issuing the WM_NOTIFY
  for CBN_EDITUPDATE to match native.
This commit is contained in:
Guy L. Albertelli 2001-01-26 20:59:51 +00:00 committed by Alexandre Julliard
parent e939eae00b
commit 4782b0e57f
1 changed files with 6 additions and 4 deletions

View File

@ -758,6 +758,7 @@ static void CBPaintText(
} else return;
}
else
if( !CB_OWNERDRAWN(lphc) )
return;
if( lphc->wState & CBF_EDIT )
@ -1284,6 +1285,7 @@ static void COMBO_SetFocus( LPHEADCOMBO lphc )
InvalidateRect(CB_HWND(lphc), &lphc->textRect, TRUE);
CB_NOTIFY( lphc, CBN_SETFOCUS );
lphc->wState |= CBF_FOCUSED;
}
}
@ -1355,9 +1357,6 @@ static LRESULT COMBO_Command( LPHEADCOMBO lphc, WPARAM wParam, HWND hWnd )
* checks a flag that is set in these occasions and ignores the
* notification.
*/
if (!(lphc->wState & CBF_NOEDITNOTIFY))
CB_NOTIFY( lphc, CBN_EDITCHANGE );
if (lphc->wState & CBF_NOLBSELECT)
{
lphc->wState &= ~CBF_NOLBSELECT;
@ -1366,6 +1365,9 @@ static LRESULT COMBO_Command( LPHEADCOMBO lphc, WPARAM wParam, HWND hWnd )
{
CBUpdateLBox( lphc, lphc->wState & CBF_DROPPED );
}
if (!(lphc->wState & CBF_NOEDITNOTIFY))
CB_NOTIFY( lphc, CBN_EDITCHANGE );
break;
case (EN_UPDATE >> 8):