The static control only needs to invalidate its rect when we SetText.
[wine] / include / sqltypes.h
1 /*
2  * sqltypes.h
3  */
4 #ifndef __SQLTYPES_H
5 #define __SQLTYPES_H
6
7 #ifndef ODBCVER
8 #define ODBCVER 0x0351
9 #endif
10
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
14
15 #ifndef _WINDOWS
16 #define FAR
17 #define CALLBACK
18 #define SQL_API
19 #define BOOL                            int
20 typedef void*                           HWND;
21 typedef char*                           GUID;
22 #define GUID_DEFINED
23 typedef char                            CHAR;
24 typedef void                            VOID;
25 typedef unsigned short          WORD;
26 typedef unsigned long           DWORD;
27 typedef unsigned char           BYTE;
28 typedef unsigned short          WCHAR;
29 typedef WCHAR*                  LPWSTR;
30 typedef const char*         LPCSTR;
31 typedef char*               LPSTR;
32 typedef DWORD*                  LPDWORD;
33 #endif
34
35 typedef unsigned char   SQLCHAR;
36
37 #if (ODBCVER >= 0x0300)
38 typedef unsigned char   SQLDATE;
39 typedef unsigned char   SQLDECIMAL;
40 typedef double          SQLDOUBLE;
41 typedef double          SQLFLOAT;
42 #endif
43
44 typedef long            SQLINTEGER;
45
46 #if (ODBCVER >= 0x0300)
47 typedef unsigned char   SQLNUMERIC;
48 #endif
49
50 typedef void *          SQLPOINTER;
51
52 #if (ODBCVER >= 0x0300)
53 typedef float           SQLREAL;
54 #endif
55
56 typedef signed short int   SQLSMALLINT;
57 typedef unsigned short  SQLUSMALLINT;
58
59 #if (ODBCVER >= 0x0300)
60 typedef unsigned char   SQLTIME;
61 typedef unsigned char   SQLTIMESTAMP;
62 typedef unsigned char   SQLVARCHAR;
63 #endif
64
65 typedef SQLSMALLINT     SQLRETURN;
66
67 /* typedef void *                       SQLHANDLE; */
68
69 typedef SQLINTEGER              SQLHANDLE;
70 #if (ODBCVER >= 0x0300)
71
72 typedef SQLHANDLE               SQLHENV;
73 typedef SQLHANDLE               SQLHDBC;
74 typedef SQLHANDLE               SQLHSTMT;
75 typedef SQLHANDLE               SQLHDESC;
76
77 #else
78 typedef SQLINTEGER              SQLHENV;
79 typedef SQLINTEGER              SQLHDBC;
80 typedef SQLINTEGER              SQLHSTMT;
81 #endif
82
83 typedef signed char             SCHAR;
84 typedef SCHAR                   SQLSCHAR;
85 typedef long int                SDWORD;
86 typedef signed short int        SWORD;
87 typedef unsigned long int       UDWORD;
88 typedef unsigned short int      UWORD;
89 typedef UDWORD                  SQLUINTEGER;
90 typedef signed long             SLONG;
91 typedef signed short            SSHORT;
92 typedef double                  SDOUBLE;
93 typedef double                          LDOUBLE;
94 typedef float                   SFLOAT;
95 typedef void*                           PTR;
96 typedef signed short            RETCODE;
97 typedef void*                   SQLHWND;
98
99 typedef SQLHANDLE                       HENV;
100 typedef SQLHANDLE                       HDBC;
101 typedef SQLHANDLE                       HSTMT;
102
103 #ifndef __SQLDATE
104 #define __SQLDATE
105 typedef struct tagDATE_STRUCT
106 {
107         SQLSMALLINT    year;
108         SQLUSMALLINT   month;
109         SQLUSMALLINT   day;
110 } DATE_STRUCT;
111
112 #if (ODBCVER >= 0x0300)
113 typedef DATE_STRUCT     SQL_DATE_STRUCT;
114 #endif
115
116 typedef struct tagTIME_STRUCT
117 {
118         SQLUSMALLINT   hour;
119         SQLUSMALLINT   minute;
120         SQLUSMALLINT   second;
121 } TIME_STRUCT;
122
123 #if (ODBCVER >= 0x0300)
124 typedef TIME_STRUCT     SQL_TIME_STRUCT;
125 #endif
126
127 typedef struct tagTIMESTAMP_STRUCT
128 {
129         SQLSMALLINT    year;
130         SQLUSMALLINT   month;
131         SQLUSMALLINT   day;
132         SQLUSMALLINT   hour;
133         SQLUSMALLINT   minute;
134         SQLUSMALLINT   second;
135         SQLUINTEGER    fraction;
136 } TIMESTAMP_STRUCT;
137
138 #if (ODBCVER >= 0x0300)
139 typedef TIMESTAMP_STRUCT        SQL_TIMESTAMP_STRUCT;
140 #endif
141
142
143 #if (ODBCVER >= 0x0300)
144 typedef enum
145 {
146         SQL_IS_YEAR                                             = 1,
147         SQL_IS_MONTH                                    = 2,
148         SQL_IS_DAY                                              = 3,
149         SQL_IS_HOUR                                             = 4,
150         SQL_IS_MINUTE                                   = 5,
151         SQL_IS_SECOND                                   = 6,
152         SQL_IS_YEAR_TO_MONTH                    = 7,
153         SQL_IS_DAY_TO_HOUR                              = 8,
154         SQL_IS_DAY_TO_MINUTE                    = 9,
155         SQL_IS_DAY_TO_SECOND                    = 10,
156         SQL_IS_HOUR_TO_MINUTE                   = 11,
157         SQL_IS_HOUR_TO_SECOND                   = 12,
158         SQL_IS_MINUTE_TO_SECOND                 = 13
159 } SQLINTERVAL;
160
161 #endif
162
163 #if (ODBCVER >= 0x0300)
164 typedef struct tagSQL_YEAR_MONTH
165 {
166                 SQLUINTEGER             year;
167                 SQLUINTEGER             month;
168 } SQL_YEAR_MONTH_STRUCT;
169
170 typedef struct tagSQL_DAY_SECOND
171 {
172                 SQLUINTEGER             day;
173                 SQLUINTEGER             hour;
174                 SQLUINTEGER             minute;
175                 SQLUINTEGER             second;
176                 SQLUINTEGER             fraction;
177 } SQL_DAY_SECOND_STRUCT;
178
179 typedef struct tagSQL_INTERVAL_STRUCT
180 {
181         SQLINTERVAL             interval_type;
182         SQLSMALLINT             interval_sign;
183         union {
184                 SQL_YEAR_MONTH_STRUCT           year_month;
185                 SQL_DAY_SECOND_STRUCT           day_second;
186         } intval;
187
188 } SQL_INTERVAL_STRUCT;
189
190 #endif
191
192 #endif
193
194 #if (ODBCVER >= 0x0300)
195 #define ODBCINT64       long
196 #ifdef ODBCINT64
197 typedef ODBCINT64       SQLBIGINT;
198 typedef unsigned ODBCINT64      SQLUBIGINT;
199 #endif
200 #endif
201
202 #if (ODBCVER >= 0x0300)
203 #define SQL_MAX_NUMERIC_LEN             16
204 typedef struct tagSQL_NUMERIC_STRUCT
205 {
206         SQLCHAR         precision;
207         SQLSCHAR        scale;
208         SQLCHAR         sign;   /* 1=pos 0=neg */
209         SQLCHAR         val[SQL_MAX_NUMERIC_LEN];
210 } SQL_NUMERIC_STRUCT;
211 #endif
212
213 #if (ODBCVER >= 0x0350)
214 #ifdef GUID_DEFINED
215 typedef GUID    SQLGUID;
216 #else
217 typedef struct  tagSQLGUID
218 {
219     DWORD Data1;
220     WORD Data2;
221     WORD Data3;
222     BYTE Data4[ 8 ];
223 } SQLGUID;
224 #endif
225 #endif
226
227
228 typedef unsigned long int       BOOKMARK;
229
230 #define SQL_WCHAR             (-8)
231 #define SQL_C_WCHAR            SQL_WCHAR
232
233 #ifdef __cplusplus
234 }
235 #endif
236
237 #endif