#include "precomp.h"
Go to the source code of this file.
Defines | |
#define | INDEX_OFFSET GCLP_HICONSM |
Functions | |
ATOM | xxxRegisterClassEx (LPWNDCLASSEX cczpwc, PCLSMENUNAME pcmn, WORD fnid, DWORD dwFlags, LPDWORD pdwWOW) |
PVOID | ClassAlloc (PDESKTOP pdesk, DWORD cbAlloc) |
VOID | ClassFree (PDESKTOP pdesk, PVOID pvfree) |
BOOL | ValidateAndLockCursor (PCURSOR *ppcursor, BOOL fIs40Compat) |
PCLS | InternalRegisterClassEx (LPWNDCLASSEX cczlpwndcls, WORD fnid, DWORD CSF_flags) |
BOOL | _UnregisterClass (LPCWSTR ccxlpszClassName, HANDLE hModule, PCLSMENUNAME pcmn) |
PCLS | _GetWOWClass (HANDLE hModule, LPCWSTR ccxlpszClassName) |
ATOM | _GetClassInfoEx (HANDLE hModule, LPCWSTR ccxlpszClassName, LPWNDCLASSEX pwc, LPWSTR *ppszMenuName, BOOL bAnsi) |
WORD | _SetClassWord (PWND pwnd, int index, WORD value) |
ULONG_PTR | xxxSetClassLongPtr (PWND pwnd, int index, ULONG_PTR value, BOOL bAnsi) |
PPCLS | _InnerGetClassPtr (ATOM atom, PPCLS ppcls, HANDLE hModule) |
PPCLS | GetClassPtr (ATOM atom, PPROCESSINFO ppi, HANDLE hModule) |
VOID | UnlockAndFreeCPDs (PCALLPROCDATA *ppCPD) |
void | DestroyClassBrush (PCLS pcls) |
void | DestroyClass (PPCLS ppcls) |
PCURSOR | GetClassIcoCur (PWND pwnd, int index) |
ULONG_PTR | SetClassCursor (PWND pwnd, PCLS pcls, DWORD index, ULONG_PTR dwData) |
ULONG_PTR | xxxSetClassData (PWND pwnd, int index, ULONG_PTR dwData, BOOL bAnsi) |
BOOL | ReferenceClass (PCLS pcls, PWND pwnd) |
VOID | DereferenceClass (PWND pwnd) |
VOID | DestroyProcessesClasses (PPROCESSINFO ppi) |
Variables | |
CONST BYTE | afClassDWord [] |
CONST BYTE | aiClassOffset [] |
|
|
|
Definition at line 678 of file class.c. References tagCLS::atomClassName, CheckCritIn, CPD_ANSI_TO_UNICODE, CPD_CLASS, CPD_UNICODE_TO_ANSI, CSF_ANSIPROC, tagCLS::CSF_flags, CSF_SERVERSIDEPROC, CURSORF_SECRET, tagTHREADINFO::dwExpWinVer, DWORD, FindClassAtom, tagCLS::fnid, GetClassPtr(), GetCPD(), hModClient, hModuleWin, tagCLS::lpszClientAnsiMenuName, tagCLS::lpszClientUnicodeMenuName, MapClientNeuterToClientPfn(), MapServerToClientPfn(), NULL, tagTHREADINFO::ppi, PtiCurrent, PtoH, TIF_16BIT, tagTHREADINFO::TIF_flags, and VER40. Referenced by NtUserGetClassInfo().
|
|
Definition at line 616 of file class.c. References CheckCritInShared, GetClassPtr(), NULL, tagCLS::pclsClone, tagCLS::pclsNext, tagTHREADINFO::ppi, PtiCurrentShared, tagTHREADINFO::rpdesk, tagCLS::rpdeskParent, and UserFindAtom(). Referenced by NtUserGetWOWClass().
|
|
Definition at line 997 of file class.c. References CSF_WOWDEFERDESTROY, and NULL. Referenced by _UnregisterClass(), GetClassPtr(), and InternalRegisterClassEx().
|
|
Definition at line 863 of file class.c. References BYTE, CheckCritIn, GETPTI, NULL, tagWND::pcls, tagCLS::pclsBase, tagCLS::pclsClone, tagCLS::pclsNext, and PpiCurrent. Referenced by NtUserSetClassWord().
|
|
Definition at line 555 of file class.c. References _InnerGetClassPtr(), BOOL, CheckCritIn, DestroyClass(), DWORD, FALSE, FindClassAtom, NULL, tagPROCESSINFO::pclsPrivateList, tagPROCESSINFO::pclsPublicList, tagTHREADINFO::ppi, tagCLSMENUNAME::pszClientAnsiMenuName, PtiCurrent, tagCLSMENUNAME::pusMenuName, tagCLSMENUNAME::pwszClientUnicodeMenuName, and TRUE. Referenced by NtUserUnregisterClass().
|
|
Definition at line 169 of file class.c. References DesktopAllocAlways, and DTAG_CLASS. Referenced by InternalRegisterClassEx(), and ReferenceClass().
|
|
Definition at line 193 of file class.c. References DesktopFree, NULL, and VOID(). Referenced by DestroyClass(), InternalRegisterClassEx(), and ReferenceClass().
|
|
Definition at line 1735 of file class.c. References tagCLS::cWndReferenceCount, DestroyClass(), tagWND::pcls, tagCLS::pclsBase, tagCLS::pclsClone, tagCLS::pclsNext, and VOID(). Referenced by HMChangeOwnerThread(), and xxxFreeWindow().
|
|
Definition at line 1207 of file class.c. References tagCLS::atomClassName, ClassFree(), tagCLS::cWndReferenceCount, DestroyCacheDC(), DestroyClassBrush(), DestroyClassSmIcon(), tagDCE::hdc, IS_PTR, LockDesktop, NULL, tagCLS::pclsBase, tagCLS::pclsClone, tagCLS::pclsNext, tagCLS::pdce, PtiCurrent, tagCLS::rpdeskParent, tagCLS::spcpdFirst, Unlock, UnlockAndFreeCPDs(), UnlockDesktop, and UserDeleteAtom(). Referenced by _UnregisterClass(), _WOWCleanup(), _WOWModuleUnload(), CleanupResources(), DereferenceClass(), DestroyProcessesClasses(), and FinalUserInit().
|
|
Definition at line 1128 of file class.c. References BOOL, gpclsList, tagCLS::pclsNext, tagPROCESSINFO::pclsPrivateList, tagPROCESSINFO::pclsPublicList, PpiCurrent, and SYSHBRUSH. Referenced by DestroyClass().
|
|
Definition at line 1768 of file class.c. References DestroyClass(), NULL, tagPROCESSINFO::pclsPrivateList, tagPROCESSINFO::pclsPublicList, and VOID(). Referenced by xxxDestroyThreadInfo().
|
|
Definition at line 1297 of file class.c. References NULL, and tagWND::pcls.
|
|
Definition at line 1036 of file class.c. References _InnerGetClassPtr(), gpclsList, hModClient, NULL, tagPROCESSINFO::pclsPrivateList, and tagPROCESSINFO::pclsPublicList. Referenced by _GetClassInfoEx(), _GetWOWClass(), HMChangeOwnerThread(), xxxCreateWindowEx(), and xxxFreeWindow().
|
|
Definition at line 244 of file class.c. References _InnerGetClassPtr(), AllocateUnicodeString(), BOOL, CBFNID, CheckCritIn, _CLIENTINFO::CI_flags, CI_REGISTERCLASSES, ClassAlloc(), ClassFree(), COMMON_WNDCLASS, CSF_ANSIPROC, CSF_SERVERSIDEPROC, CSF_SYSTEMCLASS, CSF_WIN40COMPAT, CSF_WOWCLASS, tagTHREADINFO::dwExpWinVer, DWORD, FALSE, FindClassAtom, gpclsList, hModuleWin, IS_PTR, L, LockDesktop, MapClientToServerPfn(), NULL, tagTHREADINFO::pClientInfo, tagCLS::pclsNext, tagPROCESSINFO::pclsPrivateList, tagPROCESSINFO::pclsPublicList, tagTHREADINFO::ppi, PtiCurrent, PTR_TO_ID, tagTHREADINFO::rpdesk, tagCLS::rpdeskParent, RtlInitUnicodeString(), RtlIntegerToChar(), RtlUnicodeStringToAnsiString(), tagTHREADINFO::TIF_flags, TIF_SYSTEMTHREAD, Unlock, UnlockDesktop, UserAddAtom(), UserDeleteAtom(), USHORT, ValidateAndLockCursor(), VER40, WND, and WNDPROC_PWND. Referenced by LW_RegisterWindows(), and xxxRegisterClassEx().
|
|
Definition at line 1645 of file class.c. References BOOL, ClassAlloc(), ClassFree(), CLS, tagCLS::CSF_flags, CSF_WOWCLASS, tagCLS::cWndReferenceCount, DWORD, FALSE, tagWND::head, Lock, LockDesktop, NULL, tagWND::pcls, tagCLS::pclsClone, tagCLS::pclsNext, tagCLS::rpdeskParent, strlen(), and TRUE. Referenced by xxxCreateWindowEx().
|
|
Definition at line 1329 of file class.c. References CheckLock, HMValidateHandle(), Lock, NULL, tagCLS::pclsBase, tagCLS::pclsClone, tagCLS::pclsNext, PtoH, TYPE_CURSOR, and xxxSetClassIcon(). Referenced by xxxSetClassData().
|
|
Definition at line 1092 of file class.c. References HMIsMarkDestroy, HMMarkObjectDestroy(), NULL, _CALLPROCDATA::spcpdNext, Unlock, and VOID(). Referenced by DestroyClass().
|
|
Definition at line 211 of file class.c. References BOOL, FALSE, HMValidateHandleNoSecure(), Lock, NULL, TRUE, and TYPE_CURSOR. Referenced by InternalRegisterClassEx().
|
|
Definition at line 101 of file class.c. References tagCLS::atomClassName, CSF_WOWCLASS, dwFlags, HMValidateHandleNoRip(), tagCLS::hTaskWow, tagTDB::hTaskWow, InternalRegisterClassEx(), ISCPDTAG, tagCLS::lpszClientAnsiMenuName, tagCLS::lpszClientUnicodeMenuName, NULL, PCALLPROCDATA, PCLSMENUNAME, _CALLPROCDATA::pfnClientPrevious, tagCLSMENUNAME::pszClientAnsiMenuName, tagTHREADINFO::ptdb, PtiCurrent, PWCFromPCLS, tagCLSMENUNAME::pwszClientUnicodeMenuName, TIF_16BIT, tagTHREADINFO::TIF_flags, and TYPE_CALLPROC. Referenced by NtUserRegisterClassExWOW().
|
|
Definition at line 1399 of file class.c. References afClassDWord, aiClassOffset, AllocateUnicodeString(), BYTE, CheckLock, CPD_ANSI_TO_UNICODE, CPD_CLASS, CPD_UNICODE_TO_ANSI, CSF_ANSIPROC, tagCLS::CSF_flags, CSF_SERVERSIDEPROC, CSF_WOWCLASS, CSF_WOWEXTRA, DWORD, FALSE, GetCPD(), HMValidateHandleNoRip(), INDEX_OFFSET, IS_PTR, ISCPDTAG, tagCLS::lpszClientAnsiMenuName, tagCLS::lpszClientUnicodeMenuName, MapClientNeuterToClientPfn(), MapClientToServerPfn(), MapServerToClientPfn(), NULL, tagWND::pcls, tagCLS::pclsBase, tagCLS::pclsClone, tagCLS::pclsNext, _CALLPROCDATA::pfnClientPrevious, tagCLSMENUNAME::pszClientAnsiMenuName, tagCLSMENUNAME::pusMenuName, PWCFromPCLS, tagCLSMENUNAME::pwszClientUnicodeMenuName, RtlInitUnicodeString(), SetClassCursor(), TRUE, TYPE_CALLPROC, WNDPROC_PWND, and xxxClientWOWGetProcModule(). Referenced by xxxSetClassLongPtr().
|
|
Definition at line 909 of file class.c. References BYTE, CheckCritIn, CheckLock, GETPTI, NULL, tagWND::pcls, tagCLS::pclsBase, tagCLS::pclsClone, tagCLS::pclsNext, PpiCurrent, and xxxSetClassData().
|
|
Initial value:
|
|
Initial value:
|