diff --git a/src/wxwindow/src/msw/wx_lbox.cxx b/src/wxwindow/src/msw/wx_lbox.cxx index 25b16b72b5..e28eec5385 100644 --- a/src/wxwindow/src/msw/wx_lbox.cxx +++ b/src/wxwindow/src/msw/wx_lbox.cxx @@ -110,10 +110,10 @@ Bool wxListBox::Create(wxPanel *panel, wxFunction func, windows_id = NewId(this); - wx_list = wxwmCreateWindowEx(WS_EX_CLIENTEDGE, "wxLISTBOX", NULL, - wstyle | WS_CHILD | WS_CLIPSIBLINGS, - 0, 0, 0, 0, cparent->handle, (HMENU)windows_id, - wxhInstance, NULL); + wx_list = CreateWindowExW(WS_EX_CLIENTEDGE, L"wxLISTBOX", NULL, + wstyle | WS_CHILD | WS_CLIPSIBLINGS, + 0, 0, 0, 0, cparent->handle, (HMENU)windows_id, + wxhInstance, NULL); user_data = new char*[N]; for (i = 0; i < N; i++) { diff --git a/src/wxwindow/src/msw/wx_main.cxx b/src/wxwindow/src/msw/wx_main.cxx index cbfc361432..6c71f1f799 100644 --- a/src/wxwindow/src/msw/wx_main.cxx +++ b/src/wxwindow/src/msw/wx_main.cxx @@ -46,6 +46,12 @@ LRESULT APIENTRY wxWndProc(HWND, UINT, WPARAM, LPARAM); __declspec(dllexport) void (*wx_post_setup)(void) = NULL; +LRESULT CALLBACK UnhideMouseHook(int nCode, WPARAM wParam, LPARAM lParam) +{ + wxUnhideCursor(); + return CallNextHookEx(0, nCode, wParam, lParam); +} + static void RegisterNoCursor(HINSTANCE hInstance, char *src, char *dest, wchar_t *wsrc, wchar_t *wdest) { @@ -136,6 +142,7 @@ void wxInitialize(HINSTANCE hInstance) RegisterNoCursor(hInstance, "LISTBOX", "wxLISTBOX", L"LISTBOX", L"wxLISTBOX"); RegisterNoCursor(hInstance, "EDIT", "wxEDIT", L"EDIT", L"wxEDIT"); RegisterNoCursor(hInstance, "STATIC", "wxSTATIC", L"STATIC", L"wxSTATIC"); + RegisterNoCursor(hInstance, WC_TABCONTROL, "wxTABCONTROL", WC_TABCONTROLW, L"wxTABCONTROL"); } wxREGGLOB(wxWinHandleList); @@ -143,6 +150,8 @@ void wxInitialize(HINSTANCE hInstance) wxWinHandleList = new wxNonlockingHashTable(); wxSliderList = new wxNonlockingHashTable(); + + SetWindowsHookEx(WH_MOUSE, UnhideMouseHook, NULL, GetCurrentThreadId()); } diff --git a/src/wxwindow/src/msw/wx_tabc.cxx b/src/wxwindow/src/msw/wx_tabc.cxx index 90884040cc..9676efad13 100644 --- a/src/wxwindow/src/msw/wx_tabc.cxx +++ b/src/wxwindow/src/msw/wx_tabc.cxx @@ -76,10 +76,10 @@ wxTabChoice::wxTabChoice(wxPanel *panel, wxFunction func, char *label, height = 2 * cy; } - hwndTab = CreateWindow(WC_TABCONTROL, "", - WS_CHILD | WS_CLIPSIBLINGS, - 0, 0, width ? width : 40, height, - cparent->handle, (HMENU)windows_id, wxhInstance, NULL); + hwndTab = CreateWindowW(L"wxTABCONTROL", L"", + WS_CHILD | WS_CLIPSIBLINGS, + 0, 0, width ? width : 40, height, + cparent->handle, (HMENU)windows_id, wxhInstance, NULL); nid = NewId(this);