Mercurial > vim
comparison src/gui_w32.c @ 2078:d7ce3adb8dda v7.2.362
updated for version 7.2.362
Problem: Win64: Vim doesn't work when cross-compiled with MingW libraries.
Solution: Instead of handling WM_NCCREATE, create wide text area window
class if the parent window iw side. (Sergey Khorev)
author | Bram Moolenaar <bram@zimbu.org> |
---|---|
date | Wed, 17 Feb 2010 16:31:32 +0100 |
parents | d3571ca62cd6 |
children | 8c6a66e2b3cc |
comparison
equal
deleted
inserted
replaced
2077:d8983769c9dd | 2078:d7ce3adb8dda |
---|---|
1327 const char szVimWndClass[] = VIM_CLASS; | 1327 const char szVimWndClass[] = VIM_CLASS; |
1328 const char szTextAreaClass[] = "VimTextArea"; | 1328 const char szTextAreaClass[] = "VimTextArea"; |
1329 WNDCLASS wndclass; | 1329 WNDCLASS wndclass; |
1330 #ifdef FEAT_MBYTE | 1330 #ifdef FEAT_MBYTE |
1331 const WCHAR szVimWndClassW[] = VIM_CLASSW; | 1331 const WCHAR szVimWndClassW[] = VIM_CLASSW; |
1332 const WCHAR szTextAreaClassW[] = L"VimTextArea"; | |
1332 WNDCLASSW wndclassw; | 1333 WNDCLASSW wndclassw; |
1333 #endif | 1334 #endif |
1334 #ifdef GLOBAL_IME | 1335 #ifdef GLOBAL_IME |
1335 ATOM atom; | 1336 ATOM atom; |
1336 #endif | 1337 #endif |
1477 #if defined(FEAT_MBYTE_IME) && defined(DYNAMIC_IME) | 1478 #if defined(FEAT_MBYTE_IME) && defined(DYNAMIC_IME) |
1478 dyn_imm_load(); | 1479 dyn_imm_load(); |
1479 #endif | 1480 #endif |
1480 | 1481 |
1481 /* Create the text area window */ | 1482 /* Create the text area window */ |
1483 #ifdef FEAT_MBYTE | |
1484 if (wide_WindowProc) | |
1485 { | |
1486 if (GetClassInfoW(s_hinst, szTextAreaClassW, &wndclassw) == 0) | |
1487 { | |
1488 wndclassw.style = CS_OWNDC; | |
1489 wndclassw.lpfnWndProc = _TextAreaWndProc; | |
1490 wndclassw.cbClsExtra = 0; | |
1491 wndclassw.cbWndExtra = 0; | |
1492 wndclassw.hInstance = s_hinst; | |
1493 wndclassw.hIcon = NULL; | |
1494 wndclassw.hCursor = LoadCursor(NULL, IDC_ARROW); | |
1495 wndclassw.hbrBackground = NULL; | |
1496 wndclassw.lpszMenuName = NULL; | |
1497 wndclassw.lpszClassName = szTextAreaClassW; | |
1498 | |
1499 if (RegisterClassW(&wndclassw) == 0) | |
1500 return FAIL; | |
1501 } | |
1502 } | |
1503 else | |
1504 #endif | |
1482 if (GetClassInfo(s_hinst, szTextAreaClass, &wndclass) == 0) | 1505 if (GetClassInfo(s_hinst, szTextAreaClass, &wndclass) == 0) |
1483 { | 1506 { |
1484 wndclass.style = CS_OWNDC; | 1507 wndclass.style = CS_OWNDC; |
1485 wndclass.lpfnWndProc = _TextAreaWndProc; | 1508 wndclass.lpfnWndProc = _TextAreaWndProc; |
1486 wndclass.cbClsExtra = 0; | 1509 wndclass.cbClsExtra = 0; |