Release 941017
[wine] / include / dialog.h
1 /*
2  * Dialog definitions
3  *
4  * Copyright 1993 Alexandre Julliard
5  */
6
7 #ifndef DIALOG_H
8 #define DIALOG_H
9
10 #include "windows.h"
11
12
13   /* Dialog info structure.
14    * This structure is stored into the window extra bytes (cbWndExtra).
15    * sizeof(DIALOGINFO) must be <= DLGWINDOWEXTRA (=30).
16    */
17 typedef struct
18 {
19     LONG      msgResult;   /* Result of EndDialog() / Default button id */
20     WNDPROC   dlgProc;     /* Dialog procedure */
21     LONG      userInfo;    /* User information (for DWL_USER) */
22     HWND      hwndFocus;   /* Current control with focus */
23     HFONT     hUserFont;   /* Dialog font */
24     HMENU     hMenu;       /* Dialog menu */
25     WORD      xBaseUnit;   /* Dialog units (depends on the font) */
26     WORD      yBaseUnit;
27     WORD      fEnd;        /* EndDialog() called for this dialog */
28     HANDLE    hDialogHeap;
29 } DIALOGINFO;
30
31
32   /* Dialog template header */
33 typedef struct
34 {
35     DWORD     style;    
36     BYTE      nbItems WINE_PACKED;
37     WORD      x WINE_PACKED;
38     WORD      y WINE_PACKED;
39     WORD      cx WINE_PACKED;
40     WORD      cy WINE_PACKED;
41 } DLGTEMPLATEHEADER;
42
43
44   /* Dialog control header */
45 typedef struct
46 {
47     WORD       x;
48     WORD       y;
49     WORD       cx;
50     WORD       cy;
51     WORD       id;
52     DWORD      style WINE_PACKED;
53 } DLGCONTROLHEADER;
54
55
56   /* Dialog template */
57 typedef struct
58 {
59     DLGTEMPLATEHEADER * header;
60     unsigned char *     menuName;
61     LPSTR               className;
62     LPSTR               caption;
63     WORD                pointSize;
64     LPSTR               faceName;
65 } DLGTEMPLATE;
66
67
68 #endif  /* DIALOG_H */