comctl32: Introduce Edit control.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
486bec2d86
commit
662f727a79
|
@ -1,7 +1,7 @@
|
|||
EXTRADEFS = -D_COMCTL32_
|
||||
MODULE = comctl32.dll
|
||||
IMPORTLIB = comctl32
|
||||
IMPORTS = uuid user32 gdi32 advapi32
|
||||
IMPORTS = uuid user32 gdi32 advapi32 usp10 imm32
|
||||
DELAYIMPORTS = winmm uxtheme
|
||||
|
||||
C_SRCS = \
|
||||
|
@ -13,6 +13,7 @@ C_SRCS = \
|
|||
dpa.c \
|
||||
draglist.c \
|
||||
dsa.c \
|
||||
edit.c \
|
||||
flatsb.c \
|
||||
header.c \
|
||||
hotkey.c \
|
||||
|
|
|
@ -179,6 +179,7 @@ extern void COMBOEX_Register(void) DECLSPEC_HIDDEN;
|
|||
extern void COMBOEX_Unregister(void) DECLSPEC_HIDDEN;
|
||||
extern void DATETIME_Register(void) DECLSPEC_HIDDEN;
|
||||
extern void DATETIME_Unregister(void) DECLSPEC_HIDDEN;
|
||||
extern void EDIT_Register(void) DECLSPEC_HIDDEN;
|
||||
extern void FLATSB_Register(void) DECLSPEC_HIDDEN;
|
||||
extern void FLATSB_Unregister(void) DECLSPEC_HIDDEN;
|
||||
extern void HEADER_Register(void) DECLSPEC_HIDDEN;
|
||||
|
|
|
@ -93,6 +93,20 @@ static const WCHAR strCC32SubclassInfo[] = {
|
|||
'C','C','3','2','S','u','b','c','l','a','s','s','I','n','f','o',0
|
||||
};
|
||||
|
||||
static void unregister_versioned_classes(void)
|
||||
{
|
||||
#define VERSION "6.0.2600.2982!"
|
||||
static const char *classes[] =
|
||||
{
|
||||
VERSION WC_EDITA,
|
||||
};
|
||||
int i;
|
||||
|
||||
for (i = 0; i < sizeof(classes)/sizeof(classes[0]); i++)
|
||||
UnregisterClassA(classes[i], NULL);
|
||||
|
||||
#undef VERSION
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* DllMain [Internal]
|
||||
|
@ -153,6 +167,8 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
|
|||
TREEVIEW_Register ();
|
||||
UPDOWN_Register ();
|
||||
|
||||
EDIT_Register ();
|
||||
|
||||
/* subclass user32 controls */
|
||||
THEMING_Initialize ();
|
||||
break;
|
||||
|
@ -185,6 +201,8 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
|
|||
TREEVIEW_Unregister ();
|
||||
UPDOWN_Unregister ();
|
||||
|
||||
unregister_versioned_classes ();
|
||||
|
||||
/* delete local pattern brush */
|
||||
DeleteObject (COMCTL32_hPattern55AABrush);
|
||||
DeleteObject (COMCTL32_hPattern55AABitmap);
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -2755,7 +2755,6 @@ static void test_EM_GETHANDLE(void)
|
|||
buffer = LocalLock(hmem);
|
||||
ok(buffer != NULL, "got %p (expected != NULL)\n", buffer);
|
||||
len = lstrlenW(buffer);
|
||||
todo_wine
|
||||
ok(len == lstrlenW(str1W) && !lstrcmpW(buffer, str1W), "Unexpected buffer contents %s, length %d.\n",
|
||||
wine_dbgstr_w(buffer), len);
|
||||
LocalUnlock(hmem);
|
||||
|
@ -2780,7 +2779,6 @@ todo_wine
|
|||
|
||||
lstrcpyA(current, str0);
|
||||
r = SendMessageA(hEdit, WM_GETTEXT, sizeof(current), (LPARAM)current);
|
||||
todo_wine
|
||||
ok(r == lstrlenA(str1_1) && !lstrcmpA(current, str1_1),
|
||||
"Unexpected retval %d and text \"%s\" (expected %d and \"%s\")\n", r, current, lstrlenA(str1_1), str1_1);
|
||||
|
||||
|
@ -2789,7 +2787,6 @@ todo_wine
|
|||
ok(r, "Failed to set text.\n");
|
||||
|
||||
buffer = LocalLock(hmem);
|
||||
todo_wine
|
||||
ok(buffer != NULL && buffer[0] == '1', "Unexpected buffer contents\n");
|
||||
LocalUnlock(hmem);
|
||||
|
||||
|
@ -2797,7 +2794,6 @@ todo_wine
|
|||
ok(r, "Failed to replace selection.\n");
|
||||
|
||||
buffer = LocalLock(hmem);
|
||||
todo_wine
|
||||
ok(buffer != NULL && buffer[0] == '2', "Unexpected buffer contents\n");
|
||||
LocalUnlock(hmem);
|
||||
|
||||
|
@ -2819,12 +2815,10 @@ todo_wine
|
|||
SendMessageA(hEdit, EM_SETHANDLE, (WPARAM)halloc, 0);
|
||||
|
||||
len = SendMessageA(hEdit, WM_GETTEXTLENGTH, 0, 0);
|
||||
todo_wine
|
||||
ok(len == lstrlenA(str2), "got %d (expected %d)\n", len, lstrlenA(str2));
|
||||
|
||||
lstrcpyA(current, str0);
|
||||
r = SendMessageA(hEdit, WM_GETTEXT, sizeof(current), (LPARAM)current);
|
||||
todo_wine
|
||||
ok(r == lstrlenA(str2) && !lstrcmpA(current, str2),
|
||||
"got %d and \"%s\" (expected %d and \"%s\")\n", r, current, lstrlenA(str2), str2);
|
||||
|
||||
|
@ -2949,7 +2943,6 @@ static void test_EM_GETLINE(void)
|
|||
char buff[16];
|
||||
int r;
|
||||
|
||||
todo_wine_if(i == 0)
|
||||
ok(IsWindowUnicode(hwnd[i]), "Expected unicode window.\n");
|
||||
|
||||
SendMessageA(hwnd[i], WM_SETTEXT, 0, (LPARAM)str);
|
||||
|
|
|
@ -168,7 +168,6 @@ static BOOL is_builtin_class( const WCHAR *name )
|
|||
{'B','u','t','t','o','n',0},
|
||||
{'C','o','m','b','o','B','o','x',0},
|
||||
{'C','o','m','b','o','L','B','o','x',0},
|
||||
{'E','d','i','t',0},
|
||||
{'I','M','E',0},
|
||||
{'L','i','s','t','B','o','x',0},
|
||||
{'M','D','I','C','l','i','e','n','t',0},
|
||||
|
|
Loading…
Reference in New Issue