Added global subclassing atom, used by tooltips and updown (not yet).

This commit is contained in:
Eric Kohl 1998-11-22 18:02:24 +00:00 committed by Alexandre Julliard
parent 44443b6ddd
commit 8d1a2ff12c
2 changed files with 628 additions and 96 deletions

View File

@ -35,10 +35,11 @@
HANDLE32 COMCTL32_hHeap = (HANDLE32)NULL; HANDLE32 COMCTL32_hHeap = (HANDLE32)NULL;
DWORD COMCTL32_dwProcessesAttached = 0; DWORD COMCTL32_dwProcessesAttached = 0;
LPSTR COMCTL32_aSubclass = (LPSTR)NULL;
/*********************************************************************** /***********************************************************************
* ComCtl32LibMain [Internal] Initializes the internal 'COMCTL32.DLL'. * COMCTL32_LibMain [Internal] Initializes the internal 'COMCTL32.DLL'.
* *
* PARAMS * PARAMS
* hinstDLL [I] handle to the 'dlls' instance * hinstDLL [I] handle to the 'dlls' instance
@ -51,7 +52,7 @@ DWORD COMCTL32_dwProcessesAttached = 0;
*/ */
BOOL32 WINAPI BOOL32 WINAPI
ComCtl32LibMain (HINSTANCE32 hinstDLL, DWORD fdwReason, LPVOID lpvReserved) COMCTL32_LibMain (HINSTANCE32 hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
{ {
TRACE (commctrl, "%x,%lx,%p\n", hinstDLL, fdwReason, lpvReserved); TRACE (commctrl, "%x,%lx,%p\n", hinstDLL, fdwReason, lpvReserved);
@ -62,6 +63,11 @@ ComCtl32LibMain (HINSTANCE32 hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
COMCTL32_hHeap = HeapCreate (0, 0x10000, 0); COMCTL32_hHeap = HeapCreate (0, 0x10000, 0);
TRACE (commctrl, "Heap created: 0x%x\n", COMCTL32_hHeap); TRACE (commctrl, "Heap created: 0x%x\n", COMCTL32_hHeap);
/* add global subclassing atom (used by 'tooltip' and 'updown') */
COMCTL32_aSubclass = (LPSTR)(DWORD)GlobalAddAtom32A ("CC32SubclassInfo");
TRACE (commctrl, "Subclassing atom added: %p\n",
COMCTL32_aSubclass);
/* register all Win95 common control classes */ /* register all Win95 common control classes */
ANIMATE_Register (); ANIMATE_Register ();
HEADER_Register (); HEADER_Register ();
@ -103,6 +109,12 @@ ComCtl32LibMain (HINSTANCE32 hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
TREEVIEW_Unregister (); TREEVIEW_Unregister ();
UPDOWN_Unregister (); UPDOWN_Unregister ();
/* delete global subclassing atom */
GlobalDeleteAtom (LOWORD(COMCTL32_aSubclass));
TRACE (commctrl, "Subclassing atom deleted: %p\n",
COMCTL32_aSubclass);
COMCTL32_aSubclass = (LPSTR)NULL;
/* destroy private heap */ /* destroy private heap */
HeapDestroy (COMCTL32_hHeap); HeapDestroy (COMCTL32_hHeap);
TRACE (commctrl, "Heap destroyed: 0x%x\n", COMCTL32_hHeap); TRACE (commctrl, "Heap destroyed: 0x%x\n", COMCTL32_hHeap);
@ -845,3 +857,4 @@ COMCTL32_DllGetVersion (DLLVERSIONINFO *pdvi)
return S_OK; return S_OK;
} }

File diff suppressed because it is too large Load Diff