Skip to content
Snippets Groups Projects
Commit 75101add authored by Huw Davies's avatar Huw Davies Committed by Alexandre Julliard
Browse files

Add support for CBS_{LOWER|UPPER}CASE.

parent 4a8c8e4e
No related branches found
No related tags found
No related merge requests found
...@@ -33,6 +33,8 @@ ...@@ -33,6 +33,8 @@
#include "user.h" #include "user.h"
#include "win.h" #include "win.h"
#include "controls.h" #include "controls.h"
#include "winreg.h"
#include "winternl.h"
#include "wine/debug.h" #include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(combo); WINE_DEFAULT_DEBUG_CHANNEL(combo);
...@@ -2111,15 +2113,43 @@ static LRESULT ComboWndProc_common( HWND hwnd, UINT message, ...@@ -2111,15 +2113,43 @@ static LRESULT ComboWndProc_common( HWND hwnd, UINT message,
if( CB_HASSTRINGS(lphc) ) lParam = (LPARAM)MapSL(lParam); if( CB_HASSTRINGS(lphc) ) lParam = (LPARAM)MapSL(lParam);
/* fall through */ /* fall through */
case CB_ADDSTRING: case CB_ADDSTRING:
return unicode ? SendMessageW(lphc->hWndLBox, LB_ADDSTRING, 0, lParam) : if( unicode )
SendMessageA(lphc->hWndLBox, LB_ADDSTRING, 0, lParam); {
if( lphc->dwStyle & CBS_LOWERCASE )
strlwrW((LPWSTR)lParam);
else if( lphc->dwStyle & CBS_UPPERCASE )
struprW((LPWSTR)lParam);
return SendMessageW(lphc->hWndLBox, LB_ADDSTRING, 0, lParam);
}
else
{
if( lphc->dwStyle & CBS_LOWERCASE )
_strlwr((LPSTR)lParam);
else if( lphc->dwStyle & CBS_UPPERCASE )
_strupr((LPSTR)lParam);
return SendMessageA(lphc->hWndLBox, LB_ADDSTRING, 0, lParam);
}
case CB_INSERTSTRING16: case CB_INSERTSTRING16:
wParam = (INT)(INT16)wParam; wParam = (INT)(INT16)wParam;
if( CB_HASSTRINGS(lphc) ) lParam = (LPARAM)MapSL(lParam); if( CB_HASSTRINGS(lphc) ) lParam = (LPARAM)MapSL(lParam);
/* fall through */ /* fall through */
case CB_INSERTSTRING: case CB_INSERTSTRING:
return unicode ? SendMessageW(lphc->hWndLBox, LB_INSERTSTRING, wParam, lParam) : if( unicode )
SendMessageA(lphc->hWndLBox, LB_INSERTSTRING, wParam, lParam); {
if( lphc->dwStyle & CBS_LOWERCASE )
strlwrW((LPWSTR)lParam);
else if( lphc->dwStyle & CBS_UPPERCASE )
struprW((LPWSTR)lParam);
return SendMessageW(lphc->hWndLBox, LB_INSERTSTRING, wParam, lParam);
}
else
{
if( lphc->dwStyle & CBS_LOWERCASE )
_strlwr((LPSTR)lParam);
else if( lphc->dwStyle & CBS_UPPERCASE )
_strupr((LPSTR)lParam);
return SendMessageA(lphc->hWndLBox, LB_INSERTSTRING, wParam, lParam);
}
case CB_DELETESTRING16: case CB_DELETESTRING16:
case CB_DELETESTRING: case CB_DELETESTRING:
return unicode ? SendMessageW(lphc->hWndLBox, LB_DELETESTRING, wParam, 0) : return unicode ? SendMessageW(lphc->hWndLBox, LB_DELETESTRING, wParam, 0) :
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment