Merged DDBitmap and physBitmap into the generic bitmap structure
[wine] / include / datetime.h
1 /*
2  * Date and time picker class extra info
3  *
4  * Copyright 1998 Eric Kohl
5  * Copyright 1999 Alex Priem
6  */
7
8 #ifndef __WINE_DATETIME_H
9 #define __WINE_DATETIME_H
10
11 #include "windef.h"
12 #include "winbase.h"
13
14 typedef struct tagDATETIME_INFO
15 {
16         HWND hMonthCal;
17         HWND hUpdown;
18         SYSTEMTIME date;
19         BOOL dateValid;
20         HWND hwndCheckbut;
21         RECT rect;
22         RECT checkbox;
23         RECT calbutton;
24         int  select;
25         HFONT hFont;
26         int nrFieldsAllocated;
27         int nrFields;
28         int haveFocus;
29         int *fieldspec;
30         RECT *fieldRect;
31         int  *buflen;           
32         char textbuf[256];
33 } DATETIME_INFO, *LPDATETIME_INFO;
34
35 extern VOID DATETIME_Register (VOID);
36 extern VOID DATETIME_Unregister (VOID);
37
38
39
40 /* this list of defines is closely related to `allowedformatchars' defined
41  * in datetime.c; the high nibble indicates the `base type' of the format
42  * specifier. 
43  * Do not change without first reading DATETIME_UseFormat.
44  * 
45  */
46
47 #define DT_END_FORMAT      0 
48 #define ONEDIGITDAY     0x01
49 #define TWODIGITDAY     0x02
50 #define THREECHARDAY    0x03
51 #define FULLDAY         0x04
52 #define ONEDIGIT12HOUR  0x11
53 #define TWODIGIT12HOUR  0x12
54 #define ONEDIGIT24HOUR  0x21
55 #define TWODIGIT24HOUR  0x22
56 #define ONEDIGITMINUTE  0x31
57 #define TWODIGITMINUTE  0x32
58 #define ONEDIGITMONTH   0x41
59 #define TWODIGITMONTH   0x42
60 #define THREECHARMONTH  0x43
61 #define FULLMONTH       0x44
62 #define ONEDIGITSECOND  0x51
63 #define TWODIGITSECOND  0x52
64 #define ONELETTERAMPM   0x61
65 #define TWOLETTERAMPM   0x62
66 #define ONEDIGITYEAR    0x71
67 #define TWODIGITYEAR    0x72
68 #define FULLYEAR        0x73
69 #define FORMATCALLBACK  0x81      /* -> maximum of 0x80 callbacks possible */
70 #define FORMATCALLMASK  0x80
71 #define DT_STRING       0x0100
72
73 #define DTHT_DATEFIELD  0xff      /* for hit-testing */
74
75 #define DTHT_NONE     0
76 #define DTHT_CHECKBOX 0x200     /* these should end at '00' , to make */
77 #define DTHT_MCPOPUP  0x300     /* & DTHT_DATEFIELD 0 when DATETIME_KeyDown */
78 #define DTHT_GOTFOCUS 0x400     /* tests for date-fields */
79
80 #endif  /* __WINE_DATETIME_H */