Release 950319
[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 extern BOOL DIALOG_Init(void);
13 extern HWND DIALOG_GetFirstTabItem( HWND hwndDlg );
14 extern int DialogBoxIndirectPtr( HINSTANCE hInst, LPCSTR dlgTemplate,
15                           HWND owner, WNDPROC dlgProc);
16
17 #ifndef WINELIB
18 #pragma pack(1)
19 #endif
20
21   /* Dialog info structure.
22    * This structure is stored into the window extra bytes (cbWndExtra).
23    * sizeof(DIALOGINFO) must be <= DLGWINDOWEXTRA (=30).
24    */
25 typedef struct
26 {
27     LONG      msgResult;   /* Result of EndDialog() / Default button id */
28     WNDPROC   dlgProc;     /* Dialog procedure */
29     LONG      userInfo;    /* User information (for DWL_USER) */
30     HWND      hwndFocus;   /* Current control with focus */
31     HFONT     hUserFont;   /* Dialog font */
32     HMENU     hMenu;       /* Dialog menu */
33     WORD      xBaseUnit;   /* Dialog units (depends on the font) */
34     WORD      yBaseUnit;
35     WORD      fEnd;        /* EndDialog() called for this dialog */
36     HANDLE    hDialogHeap;
37 } DIALOGINFO;
38
39
40   /* Dialog template header */
41 typedef struct
42 {
43     DWORD     style;    
44     BYTE      nbItems WINE_PACKED;
45     WORD      x WINE_PACKED;
46     WORD      y WINE_PACKED;
47     WORD      cx WINE_PACKED;
48     WORD      cy WINE_PACKED;
49 } DLGTEMPLATEHEADER;
50
51
52   /* Dialog control header */
53 typedef struct
54 {
55     WORD       x;
56     WORD       y;
57     WORD       cx;
58     WORD       cy;
59     WORD       id;
60     DWORD      style WINE_PACKED;
61 } DLGCONTROLHEADER;
62
63
64   /* Dialog template */
65 typedef struct
66 {
67     DLGTEMPLATEHEADER * header;
68     unsigned char *     menuName;
69     LPSTR               className;
70     LPSTR               caption;
71     WORD                pointSize;
72     LPSTR               faceName;
73 } DLGTEMPLATE;
74
75 #ifndef WINELIB
76 #pragma pack(4)
77 #endif
78
79 #endif  /* DIALOG_H */