X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e58dab20ce995856303154a367bcca904066525c..7948c0c24401c496c04da3c28f1f1f2f282ba327:/src/os2/combobox.cpp diff --git a/src/os2/combobox.cpp b/src/os2/combobox.cpp index fc4697b255..651dfe9209 100644 --- a/src/os2/combobox.cpp +++ b/src/os2/combobox.cpp @@ -101,8 +101,9 @@ bool wxComboBox::Create( , const wxString& rsName ) { + m_isShown = FALSE; - if (!OS2CreateControl( pParent + if (!CreateControl( pParent ,vId ,rPos ,rSize @@ -146,7 +147,6 @@ bool wxComboBox::Create( SetFont(*wxSMALL_FONT); int i; - for (i = 0; i < n; i++) { Append(asChoices[i]); @@ -165,6 +165,7 @@ bool wxComboBox::Create( ,(PFNWP)wxComboEditWndProc ); ::WinSetWindowULong(GetHwnd(), QWL_USER, (ULONG)this); + Show(TRUE); return TRUE; } // end of wxComboBox::Create @@ -398,22 +399,29 @@ bool wxComboBox::ProcessEditMsg( switch(vFlag) { case KC_CHAR: - return (HandleChar( SHORT1FROMMP(wParam) + return (HandleChar( wParam ,lParam ,TRUE /* isASCII */ )); case KC_PREVDOWN: - return (HandleKeyDown( SHORT1FROMMP(wParam) + return (HandleKeyDown( wParam ,lParam )); case KC_KEYUP: - return (HandleKeyUp( SHORT1FROMMP(wParam) + return (HandleKeyUp( wParam ,lParam )); } break; + + case WM_SETFOCUS: + if (SHORT1FROMMP((MPARAM)lParam) == TRUE) + return(HandleSetFocus((WXHWND)(HWND)wParam)); + else + return(HandleKillFocus((WXHWND)(HWND)wParam)); + break; } return FALSE; } // end of WinGuiBase_CComboBox::ProcessEditMsg @@ -435,6 +443,7 @@ MRESULT EXPENTRY wxComboEditWndProc( // // Forward some messages to the combobox // + case WM_SETFOCUS: case WM_CHAR: { wxComboBox* pCombo = wxDynamicCast( pWin