/* * Window classes definitions * * Copyright 1993 Alexandre Julliard */ #ifndef __WINE_CLASS_H #define __WINE_CLASS_H #include "windef.h" #include "winproc.h" #define CLASS_MAGIC ('C' | ('L' << 8) | ('A' << 16) | ('S' << 24)) struct tagDCE; typedef struct tagCLASS { struct tagCLASS *next; /* Next class */ UINT magic; /* Magic number */ UINT cWindows; /* Count of existing windows */ UINT style; /* Class style */ HWINDOWPROC winproc; /* Window procedure */ INT cbClsExtra; /* Class extra bytes */ INT cbWndExtra; /* Window extra bytes */ LPSTR menuNameA; /* Default menu name (ASCII string) */ LPWSTR menuNameW; /* Default menu name (Unicode) */ struct tagDCE *dce; /* Class DCE (if CS_CLASSDC) */ HINSTANCE hInstance; /* Module that created the task */ HICON16 hIcon; /* Default icon */ HICON16 hIconSm; /* Default small icon */ HCURSOR16 hCursor; /* Default cursor */ HBRUSH16 hbrBackground; /* Default background */ ATOM atomName; /* Name of the class */ LPSTR classNameA; /* Class name (ASCII string) */ LPWSTR classNameW; /* Class name (Unicode) */ LONG wExtra[1]; /* Class extra bytes */ } CLASS; extern void CLASS_DumpClass( CLASS *class ); extern void CLASS_WalkClasses(void); extern void CLASS_FreeModuleClasses( HMODULE16 hModule ); extern CLASS *CLASS_FindClassByAtom( ATOM atom, HINSTANCE hinstance ); #endif /* __WINE_CLASS_H */