Release 960928
[wine/multimedia.git] / include / class.h
blobe02bec715fc43837379996702fda6c2c42f6fb4e
1 /*
2 * Window classes definitions
4 * Copyright 1993 Alexandre Julliard
5 */
7 #ifndef CLASS_H
8 #define CLASS_H
10 #include "windows.h"
11 #include "winproc.h"
13 #define CLASS_MAGIC ('C' | ('L' << 8) | ('A' << 16) | ('S' << 24))
15 struct tagDCE;
17 typedef struct tagCLASS
19 struct tagCLASS *next; /* Next class */
20 UINT32 magic; /* Magic number */
21 UINT32 cWindows; /* Count of existing windows */
22 UINT32 style; /* Class style */
23 HWINDOWPROC winproc; /* Window procedure */
24 INT32 cbClsExtra; /* Class extra bytes */
25 INT32 cbWndExtra; /* Window extra bytes */
26 LPSTR menuNameA; /* Default menu name (ASCII string) */
27 LPWSTR menuNameW; /* Default menu name (Unicode) */
28 struct tagDCE *dce; /* Class DCE (if CS_CLASSDC) */
29 HINSTANCE32 hInstance; /* Module that created the task */
30 HICON16 hIcon; /* Default icon */
31 HICON16 hIconSm; /* Default small icon */
32 HCURSOR16 hCursor; /* Default cursor */
33 HBRUSH16 hbrBackground; /* Default background */
34 ATOM atomName; /* Name of the class */
35 LONG wExtra[1]; /* Class extra bytes */
36 } CLASS;
38 extern void CLASS_DumpClass( CLASS *class );
39 extern void CLASS_WalkClasses(void);
40 extern void CLASS_FreeModuleClasses( HMODULE16 hModule );
41 extern CLASS *CLASS_FindClassByAtom( ATOM atom, HINSTANCE16 hinstance );
43 #endif /* CLASS_H */