Release 960728
[wine/multimedia.git] / include / class.h
blob418f72371b2ce2800db8093767acc4f86f73ea7b
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 typedef struct tagCLASS
17 struct tagCLASS *next; /* Next class */
18 UINT32 magic; /* Magic number */
19 UINT32 cWindows; /* Count of existing windows */
20 UINT32 style; /* Class style */
21 HWINDOWPROC winproc; /* Window procedure */
22 INT32 cbClsExtra; /* Class extra bytes */
23 INT32 cbWndExtra; /* Window extra bytes */
24 LPSTR menuNameA; /* Default menu name (ASCII string) */
25 LPWSTR menuNameW; /* Default menu name (Unicode) */
26 HINSTANCE32 hInstance; /* Module that created the task */
27 HICON16 hIcon; /* Default icon */
28 HICON16 hIconSm; /* Default small icon */
29 HCURSOR16 hCursor; /* Default cursor */
30 HBRUSH16 hbrBackground; /* Default background */
31 ATOM atomName; /* Name of the class */
32 HANDLE16 hdce; /* Class DCE (if CS_CLASSDC) */
33 LONG wExtra[1]; /* Class extra bytes */
34 } CLASS;
36 extern void CLASS_DumpClass( CLASS *class );
37 extern void CLASS_WalkClasses(void);
38 extern void CLASS_FreeModuleClasses( HMODULE16 hModule );
39 extern CLASS *CLASS_FindClassByAtom( ATOM atom, HINSTANCE16 hinstance );
41 #endif /* CLASS_H */