Mercurial > hg > xemacs-beta
comparison src/intl-auto-encap-win32.c @ 3728:6765f2581182
[xemacs-hg @ 2006-12-08 02:21:53 by vins]
Added Benson Margulies's patch to avoid the dreaded: "File not found and
directory write-protected" message under Windows.
author | vins |
---|---|
date | Fri, 08 Dec 2006 02:22:02 +0000 |
parents | 3d8143fc88e1 |
children | 50861fea97f6 |
comparison
equal
deleted
inserted
replaced
3727:3246cf3e564d | 3728:6765f2581182 |
---|---|
8 | 8 |
9 #include <config.h> | 9 #include <config.h> |
10 #include "lisp.h" | 10 #include "lisp.h" |
11 | 11 |
12 #include "syswindows.h" | 12 #include "syswindows.h" |
13 | |
14 | |
15 /*----------------------------------------------------------------------*/ | |
16 /* Processing file SHELLAPI.H */ | |
17 /*----------------------------------------------------------------------*/ | |
18 | |
19 UINT | |
20 qxeDragQueryFile (HDROP arg1, UINT arg2, Extbyte * arg3, UINT arg4) | |
21 { | |
22 if (XEUNICODE_P) | |
23 return DragQueryFileW (arg1, arg2, (LPWSTR) arg3, arg4); | |
24 else | |
25 return DragQueryFileA (arg1, arg2, (LPSTR) arg3, arg4); | |
26 } | |
27 | |
28 HINSTANCE | |
29 qxeShellExecute (HWND hwnd, const Extbyte * lpOperation, const Extbyte * lpFile, const Extbyte * lpParameters, const Extbyte * lpDirectory, INT nShowCmd) | |
30 { | |
31 if (XEUNICODE_P) | |
32 return ShellExecuteW (hwnd, (LPCWSTR) lpOperation, (LPCWSTR) lpFile, (LPCWSTR) lpParameters, (LPCWSTR) lpDirectory, nShowCmd); | |
33 else | |
34 return ShellExecuteA (hwnd, (LPCSTR) lpOperation, (LPCSTR) lpFile, (LPCSTR) lpParameters, (LPCSTR) lpDirectory, nShowCmd); | |
35 } | |
36 | |
37 HINSTANCE | |
38 qxeFindExecutable (const Extbyte * lpFile, const Extbyte * lpDirectory, Extbyte * lpResult) | |
39 { | |
40 if (XEUNICODE_P) | |
41 return FindExecutableW ((LPCWSTR) lpFile, (LPCWSTR) lpDirectory, (LPWSTR) lpResult); | |
42 else | |
43 return FindExecutableA ((LPCSTR) lpFile, (LPCSTR) lpDirectory, (LPSTR) lpResult); | |
44 } | |
45 | |
46 /* Error if CommandLineToArgv used: Unicode-only */ | |
47 | |
48 INT | |
49 qxeShellAbout (HWND hWnd, const Extbyte * szApp, const Extbyte * szOtherStuff, HICON hIcon) | |
50 { | |
51 if (XEUNICODE_P) | |
52 return ShellAboutW (hWnd, (LPCWSTR) szApp, (LPCWSTR) szOtherStuff, hIcon); | |
53 else | |
54 return ShellAboutA (hWnd, (LPCSTR) szApp, (LPCSTR) szOtherStuff, hIcon); | |
55 } | |
56 | |
57 HICON | |
58 qxeExtractAssociatedIcon (HINSTANCE hInst, Extbyte * lpIconPath, LPWORD lpiIcon) | |
59 { | |
60 if (XEUNICODE_P) | |
61 return ExtractAssociatedIconW (hInst, (LPWSTR) lpIconPath, lpiIcon); | |
62 else | |
63 return ExtractAssociatedIconA (hInst, (LPSTR) lpIconPath, lpiIcon); | |
64 } | |
65 | |
66 HICON | |
67 qxeExtractIcon (HINSTANCE hInst, const Extbyte * lpszExeFileName, UINT nIconIndex) | |
68 { | |
69 if (XEUNICODE_P) | |
70 return ExtractIconW (hInst, (LPCWSTR) lpszExeFileName, nIconIndex); | |
71 else | |
72 return ExtractIconA (hInst, (LPCSTR) lpszExeFileName, nIconIndex); | |
73 } | |
74 | |
75 #if !defined (CYGWIN_HEADERS) | |
76 | |
77 /* NOTE: NT 4.0+ only */ | |
78 DWORD | |
79 qxeDoEnvironmentSubst (Extbyte * szString, UINT cbString) | |
80 { | |
81 if (XEUNICODE_P) | |
82 return DoEnvironmentSubstW ((LPWSTR) szString, cbString); | |
83 else | |
84 return DoEnvironmentSubstA ((LPSTR) szString, cbString); | |
85 } | |
86 | |
87 #endif /* !defined (CYGWIN_HEADERS) */ | |
88 | |
89 /* Error if FindEnvironmentString used: causes link error; NT 4.0+ only */ | |
90 | |
91 /* Skipping ExtractIconEx because NT 4.0+ only, error in Cygwin prototype */ | |
92 | |
93 /* NOTE: NT 4.0+ only */ | |
94 int | |
95 qxeSHFileOperation (LPSHFILEOPSTRUCTW lpFileOp) | |
96 { | |
97 if (XEUNICODE_P) | |
98 return SHFileOperationW (lpFileOp); | |
99 else | |
100 return SHFileOperationA ((LPSHFILEOPSTRUCTA) lpFileOp); | |
101 } | |
102 | |
103 /* NOTE: NT 4.0+ only */ | |
104 BOOL | |
105 qxeShellExecuteEx (LPSHELLEXECUTEINFOW lpExecInfo) | |
106 { | |
107 if (XEUNICODE_P) | |
108 return ShellExecuteExW (lpExecInfo); | |
109 else | |
110 return ShellExecuteExA ((LPSHELLEXECUTEINFOA) lpExecInfo); | |
111 } | |
112 | |
113 /* Error if WinExecError used: causes link error; NT 4.0+ only */ | |
114 | |
115 #if !defined (CYGWIN_HEADERS) | |
116 | |
117 /* NOTE: NT 4.0+ only */ | |
118 HRESULT | |
119 qxeSHQueryRecycleBin (const Extbyte * pszRootPath, LPSHQUERYRBINFO pSHQueryRBInfo) | |
120 { | |
121 if (XEUNICODE_P) | |
122 return SHQueryRecycleBinW ((LPCWSTR) pszRootPath, pSHQueryRBInfo); | |
123 else | |
124 return SHQueryRecycleBinA ((LPCSTR) pszRootPath, pSHQueryRBInfo); | |
125 } | |
126 | |
127 #endif /* !defined (CYGWIN_HEADERS) */ | |
128 | |
129 #if !defined (CYGWIN_HEADERS) | |
130 | |
131 /* NOTE: NT 4.0+ only */ | |
132 HRESULT | |
133 qxeSHEmptyRecycleBin (HWND hwnd, const Extbyte * pszRootPath, DWORD dwFlags) | |
134 { | |
135 if (XEUNICODE_P) | |
136 return SHEmptyRecycleBinW (hwnd, (LPCWSTR) pszRootPath, dwFlags); | |
137 else | |
138 return SHEmptyRecycleBinA (hwnd, (LPCSTR) pszRootPath, dwFlags); | |
139 } | |
140 | |
141 #endif /* !defined (CYGWIN_HEADERS) */ | |
142 | |
143 /* Error if Shell_NotifyIcon used: split-sized NOTIFYICONDATA, NT 4.0+ only */ | |
144 | |
145 /* Skipping SHGetFileInfo because split-sized SHFILEINFO, NT 4.0+ only */ | |
146 | |
147 /* Error if SHGetDiskFreeSpace used: causes link error; NT 4.0+ only */ | |
148 | |
149 #if !defined (CYGWIN_HEADERS) | |
150 | |
151 /* NOTE: NT 4.0+ only */ | |
152 BOOL | |
153 qxeSHGetNewLinkInfo (const Extbyte * pszLinkTo, const Extbyte * pszDir, Extbyte * pszName, BOOL * pfMustCopy, UINT uFlags) | |
154 { | |
155 if (XEUNICODE_P) | |
156 return SHGetNewLinkInfoW ((LPCWSTR) pszLinkTo, (LPCWSTR) pszDir, (LPWSTR) pszName, pfMustCopy, uFlags); | |
157 else | |
158 return SHGetNewLinkInfoA ((LPCSTR) pszLinkTo, (LPCSTR) pszDir, (LPSTR) pszName, pfMustCopy, uFlags); | |
159 } | |
160 | |
161 #endif /* !defined (CYGWIN_HEADERS) */ | |
162 | |
163 #if !defined (CYGWIN_HEADERS) | |
164 | |
165 /* NOTE: NT 4.0+ only */ | |
166 BOOL | |
167 qxeSHInvokePrinterCommand (HWND hwnd, UINT uAction, const Extbyte * lpBuf1, const Extbyte * lpBuf2, BOOL fModal) | |
168 { | |
169 if (XEUNICODE_P) | |
170 return SHInvokePrinterCommandW (hwnd, uAction, (LPCWSTR) lpBuf1, (LPCWSTR) lpBuf2, fModal); | |
171 else | |
172 return SHInvokePrinterCommandA (hwnd, uAction, (LPCSTR) lpBuf1, (LPCSTR) lpBuf2, fModal); | |
173 } | |
174 | |
175 #endif /* !defined (CYGWIN_HEADERS) */ | |
176 | |
177 | |
178 /*----------------------------------------------------------------------*/ | |
179 /* Processing file WINSPOOL.H */ | |
180 /*----------------------------------------------------------------------*/ | |
181 | |
182 #if defined (HAVE_MS_WINDOWS) | |
183 | |
184 /* NOTE: #### problems with DEVMODE pointer in PRINTER_INFO_2 */ | |
185 BOOL | |
186 qxeEnumPrinters (DWORD Flags, Extbyte * Name, DWORD Level, LPBYTE pPrinterEnum, DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned) | |
187 { | |
188 if (XEUNICODE_P) | |
189 return EnumPrintersW (Flags, (LPWSTR) Name, Level, pPrinterEnum, cbBuf, pcbNeeded, pcReturned); | |
190 else | |
191 return EnumPrintersA (Flags, (LPSTR) Name, Level, pPrinterEnum, cbBuf, pcbNeeded, pcReturned); | |
192 } | |
193 | |
194 #endif /* defined (HAVE_MS_WINDOWS) */ | |
195 | |
196 #if defined (HAVE_MS_WINDOWS) | |
197 | |
198 /* Skipping OpenPrinter because split-sized DEVMODE pointer in split PRINTER_DEFAULTS */ | |
199 | |
200 #endif /* defined (HAVE_MS_WINDOWS) */ | |
201 | |
202 #if defined (HAVE_MS_WINDOWS) | |
203 | |
204 /* Error if ResetPrinter used: split-sized DEVMODE pointer in split PRINTER_DEFAULTS */ | |
205 | |
206 #endif /* defined (HAVE_MS_WINDOWS) */ | |
207 | |
208 #if defined (HAVE_MS_WINDOWS) | |
209 | |
210 /* Error if SetJob used: split-sized DEVMODE pointer in split JOB_INFO_2 */ | |
211 | |
212 #endif /* defined (HAVE_MS_WINDOWS) */ | |
213 | |
214 #if defined (HAVE_MS_WINDOWS) | |
215 | |
216 /* Error if GetJob used: split-sized DEVMODE pointer in split JOB_INFO_2 */ | |
217 | |
218 #endif /* defined (HAVE_MS_WINDOWS) */ | |
219 | |
220 #if defined (HAVE_MS_WINDOWS) | |
221 | |
222 /* Error if EnumJobs used: split-sized DEVMODE pointer in split JOB_INFO_2 */ | |
223 | |
224 #endif /* defined (HAVE_MS_WINDOWS) */ | |
225 | |
226 #if defined (HAVE_MS_WINDOWS) | |
227 | |
228 /* Error if AddPrinter used: split-sized DEVMODE pointer in split PRINTER_INFO_2 */ | |
229 | |
230 #endif /* defined (HAVE_MS_WINDOWS) */ | |
231 | |
232 #if defined (HAVE_MS_WINDOWS) | |
233 | |
234 /* Error if SetPrinter used: split-sized DEVMODE pointer in split PRINTER_INFO_2 */ | |
235 | |
236 #endif /* defined (HAVE_MS_WINDOWS) */ | |
237 | |
238 #if defined (HAVE_MS_WINDOWS) | |
239 | |
240 /* Error if GetPrinter used: split-sized DEVMODE pointer in split PRINTER_INFO_2 */ | |
241 | |
242 #endif /* defined (HAVE_MS_WINDOWS) */ | |
243 | |
244 #if defined (HAVE_MS_WINDOWS) | |
245 | |
246 /* Error if AddPrinterDriver used: not used, complicated interface with split structures */ | |
247 | |
248 #endif /* defined (HAVE_MS_WINDOWS) */ | |
249 | |
250 #if defined (HAVE_MS_WINDOWS) | |
251 | |
252 /* Error if AddPrinterDriverEx used: not used, complicated interface with split structures */ | |
253 | |
254 #endif /* defined (HAVE_MS_WINDOWS) */ | |
255 | |
256 #if defined (HAVE_MS_WINDOWS) | |
257 | |
258 /* Error if EnumPrinterDrivers used: not used, complicated interface with split structures */ | |
259 | |
260 #endif /* defined (HAVE_MS_WINDOWS) */ | |
261 | |
262 #if defined (HAVE_MS_WINDOWS) | |
263 | |
264 /* Error if GetPrinterDriver used: not used, complicated interface with split structures */ | |
265 | |
266 #endif /* defined (HAVE_MS_WINDOWS) */ | |
267 | |
268 #if defined (HAVE_MS_WINDOWS) | |
269 | |
270 /* Error if GetPrinterDriverDirectory used: not used, complicated interface with split structures */ | |
271 | |
272 #endif /* defined (HAVE_MS_WINDOWS) */ | |
273 | |
274 #if defined (HAVE_MS_WINDOWS) | |
275 | |
276 /* Error if DeletePrinterDriver used: not used, complicated interface with split structures */ | |
277 | |
278 #endif /* defined (HAVE_MS_WINDOWS) */ | |
279 | |
280 #if defined (HAVE_MS_WINDOWS) | |
281 | |
282 /* Error if DeletePrinterDriverEx used: not used, complicated interface with split structures */ | |
283 | |
284 #endif /* defined (HAVE_MS_WINDOWS) */ | |
285 | |
286 #if defined (HAVE_MS_WINDOWS) | |
287 | |
288 /* Error if AddPerMachineConnection used: not used, complicated interface with split structures */ | |
289 | |
290 #endif /* defined (HAVE_MS_WINDOWS) */ | |
291 | |
292 #if defined (HAVE_MS_WINDOWS) | |
293 | |
294 /* Error if DeletePerMachineConnection used: not used, complicated interface with split structures */ | |
295 | |
296 #endif /* defined (HAVE_MS_WINDOWS) */ | |
297 | |
298 #if defined (HAVE_MS_WINDOWS) | |
299 | |
300 /* Error if EnumPerMachineConnections used: not used, complicated interface with split structures */ | |
301 | |
302 #endif /* defined (HAVE_MS_WINDOWS) */ | |
303 | |
304 #if defined (HAVE_MS_WINDOWS) | |
305 | |
306 /* Error if AddPrintProcessor used: not used, complicated interface with split structures */ | |
307 | |
308 #endif /* defined (HAVE_MS_WINDOWS) */ | |
309 | |
310 #if defined (HAVE_MS_WINDOWS) | |
311 | |
312 /* Error if EnumPrintProcessors used: not used, complicated interface with split structures */ | |
313 | |
314 #endif /* defined (HAVE_MS_WINDOWS) */ | |
315 | |
316 #if defined (HAVE_MS_WINDOWS) | |
317 | |
318 /* Error if GetPrintProcessorDirectory used: not used, complicated interface with split structures */ | |
319 | |
320 #endif /* defined (HAVE_MS_WINDOWS) */ | |
321 | |
322 #if defined (HAVE_MS_WINDOWS) | |
323 | |
324 /* Error if EnumPrintProcessorDatatypes used: not used, complicated interface with split structures */ | |
325 | |
326 #endif /* defined (HAVE_MS_WINDOWS) */ | |
327 | |
328 #if defined (HAVE_MS_WINDOWS) | |
329 | |
330 /* Error if DeletePrintProcessor used: not used, complicated interface with split structures */ | |
331 | |
332 #endif /* defined (HAVE_MS_WINDOWS) */ | |
333 | |
334 #if defined (HAVE_MS_WINDOWS) | |
335 | |
336 /* Error if StartDocPrinter used: not used, complicated interface with split structures */ | |
337 | |
338 #endif /* defined (HAVE_MS_WINDOWS) */ | |
339 | |
340 #if defined (HAVE_MS_WINDOWS) | |
341 | |
342 /* Error if AddJob used: not used, complicated interface with split structures */ | |
343 | |
344 #endif /* defined (HAVE_MS_WINDOWS) */ | |
345 | |
346 #if defined (HAVE_MS_WINDOWS) | |
347 | |
348 /* Skipping DocumentProperties because split-sized DEVMODE, error in Cygwin prototype */ | |
349 | |
350 #endif /* defined (HAVE_MS_WINDOWS) */ | |
351 | |
352 #if defined (HAVE_MS_WINDOWS) | |
353 | |
354 /* Error if AdvancedDocumentProperties used: not used, complicated interface with split structures */ | |
355 | |
356 #endif /* defined (HAVE_MS_WINDOWS) */ | |
357 | |
358 #if defined (HAVE_MS_WINDOWS) | |
359 | |
360 /* Error if GetPrinterData used: not used, complicated interface with split structures */ | |
361 | |
362 #endif /* defined (HAVE_MS_WINDOWS) */ | |
363 | |
364 #if defined (HAVE_MS_WINDOWS) | |
365 | |
366 /* Error if GetPrinterDataEx used: not used, complicated interface with split structures */ | |
367 | |
368 #endif /* defined (HAVE_MS_WINDOWS) */ | |
369 | |
370 #if defined (HAVE_MS_WINDOWS) | |
371 | |
372 /* Error if EnumPrinterData used: not used, complicated interface with split structures */ | |
373 | |
374 #endif /* defined (HAVE_MS_WINDOWS) */ | |
375 | |
376 #if defined (HAVE_MS_WINDOWS) | |
377 | |
378 /* Error if EnumPrinterDataEx used: not used, complicated interface with split structures */ | |
379 | |
380 #endif /* defined (HAVE_MS_WINDOWS) */ | |
381 | |
382 #if defined (HAVE_MS_WINDOWS) | |
383 | |
384 /* Error if EnumPrinterKey used: not used, complicated interface with split structures */ | |
385 | |
386 #endif /* defined (HAVE_MS_WINDOWS) */ | |
387 | |
388 #if defined (HAVE_MS_WINDOWS) | |
389 | |
390 /* Error if SetPrinterData used: not used, complicated interface with split structures */ | |
391 | |
392 #endif /* defined (HAVE_MS_WINDOWS) */ | |
393 | |
394 #if defined (HAVE_MS_WINDOWS) | |
395 | |
396 /* Error if SetPrinterDataEx used: not used, complicated interface with split structures */ | |
397 | |
398 #endif /* defined (HAVE_MS_WINDOWS) */ | |
399 | |
400 #if defined (HAVE_MS_WINDOWS) | |
401 | |
402 /* Error if DeletePrinterData used: not used, complicated interface with split structures */ | |
403 | |
404 #endif /* defined (HAVE_MS_WINDOWS) */ | |
405 | |
406 #if defined (HAVE_MS_WINDOWS) | |
407 | |
408 /* Error if DeletePrinterDataEx used: not used, complicated interface with split structures */ | |
409 | |
410 #endif /* defined (HAVE_MS_WINDOWS) */ | |
411 | |
412 #if defined (HAVE_MS_WINDOWS) | |
413 | |
414 /* Error if DeletePrinterKey used: not used, complicated interface with split structures */ | |
415 | |
416 #endif /* defined (HAVE_MS_WINDOWS) */ | |
417 | |
418 #if defined (HAVE_MS_WINDOWS) | |
419 | |
420 /* Error if PrinterMessageBox used: not used, complicated interface with split structures */ | |
421 | |
422 #endif /* defined (HAVE_MS_WINDOWS) */ | |
423 | |
424 #if defined (HAVE_MS_WINDOWS) | |
425 | |
426 /* Error if AddForm used: not used, complicated interface with split structures */ | |
427 | |
428 #endif /* defined (HAVE_MS_WINDOWS) */ | |
429 | |
430 #if defined (HAVE_MS_WINDOWS) | |
431 | |
432 /* Error if DeleteForm used: not used, complicated interface with split structures */ | |
433 | |
434 #endif /* defined (HAVE_MS_WINDOWS) */ | |
435 | |
436 #if defined (HAVE_MS_WINDOWS) | |
437 | |
438 /* Error if GetForm used: not used, complicated interface with split structures */ | |
439 | |
440 #endif /* defined (HAVE_MS_WINDOWS) */ | |
441 | |
442 #if defined (HAVE_MS_WINDOWS) | |
443 | |
444 /* Error if SetForm used: not used, complicated interface with split structures */ | |
445 | |
446 #endif /* defined (HAVE_MS_WINDOWS) */ | |
447 | |
448 #if defined (HAVE_MS_WINDOWS) | |
449 | |
450 /* Error if EnumForms used: not used, complicated interface with split structures */ | |
451 | |
452 #endif /* defined (HAVE_MS_WINDOWS) */ | |
453 | |
454 #if defined (HAVE_MS_WINDOWS) | |
455 | |
456 /* Error if EnumMonitors used: not used, complicated interface with split structures */ | |
457 | |
458 #endif /* defined (HAVE_MS_WINDOWS) */ | |
459 | |
460 #if defined (HAVE_MS_WINDOWS) | |
461 | |
462 /* Error if AddMonitor used: not used, complicated interface with split structures */ | |
463 | |
464 #endif /* defined (HAVE_MS_WINDOWS) */ | |
465 | |
466 #if defined (HAVE_MS_WINDOWS) | |
467 | |
468 /* Error if DeleteMonitor used: not used, complicated interface with split structures */ | |
469 | |
470 #endif /* defined (HAVE_MS_WINDOWS) */ | |
471 | |
472 #if defined (HAVE_MS_WINDOWS) | |
473 | |
474 /* Error if EnumPorts used: not used, complicated interface with split structures */ | |
475 | |
476 #endif /* defined (HAVE_MS_WINDOWS) */ | |
477 | |
478 #if defined (HAVE_MS_WINDOWS) | |
479 | |
480 /* Error if AddPort used: not used, complicated interface with split structures */ | |
481 | |
482 #endif /* defined (HAVE_MS_WINDOWS) */ | |
483 | |
484 #if defined (HAVE_MS_WINDOWS) | |
485 | |
486 /* Error if ConfigurePort used: not used, complicated interface with split structures */ | |
487 | |
488 #endif /* defined (HAVE_MS_WINDOWS) */ | |
489 | |
490 #if defined (HAVE_MS_WINDOWS) | |
491 | |
492 /* Error if DeletePort used: not used, complicated interface with split structures */ | |
493 | |
494 #endif /* defined (HAVE_MS_WINDOWS) */ | |
495 | |
496 #if defined (HAVE_MS_WINDOWS) | |
497 | |
498 /* Error if XcvData used: not used, complicated interface with split structures */ | |
499 | |
500 #endif /* defined (HAVE_MS_WINDOWS) */ | |
501 | |
502 #if defined (HAVE_MS_WINDOWS) | |
503 | |
504 /* Error if SetPort used: not used, complicated interface with split structures */ | |
505 | |
506 #endif /* defined (HAVE_MS_WINDOWS) */ | |
507 | |
508 #if defined (HAVE_MS_WINDOWS) | |
509 | |
510 /* Error if AddPrinterConnection used: not used, complicated interface with split structures */ | |
511 | |
512 #endif /* defined (HAVE_MS_WINDOWS) */ | |
513 | |
514 #if defined (HAVE_MS_WINDOWS) | |
515 | |
516 /* Error if DeletePrinterConnection used: not used, complicated interface with split structures */ | |
517 | |
518 #endif /* defined (HAVE_MS_WINDOWS) */ | |
519 | |
520 #if defined (HAVE_MS_WINDOWS) | |
521 | |
522 /* Error if AddPrintProvidor used: not used, complicated interface with split structures */ | |
523 | |
524 #endif /* defined (HAVE_MS_WINDOWS) */ | |
525 | |
526 #if defined (HAVE_MS_WINDOWS) | |
527 | |
528 /* Error if DeletePrintProvidor used: not used, complicated interface with split structures */ | |
529 | |
530 #endif /* defined (HAVE_MS_WINDOWS) */ | |
531 | |
532 #if defined (HAVE_MS_WINDOWS) | |
533 | |
534 /* Error if SetPrinterHTMLView used: not used, complicated interface with split structures */ | |
535 | |
536 #endif /* defined (HAVE_MS_WINDOWS) */ | |
537 | |
538 #if defined (HAVE_MS_WINDOWS) | |
539 | |
540 /* Error if GetPrinterHTMLView used: not used, complicated interface with split structures */ | |
541 | |
542 #endif /* defined (HAVE_MS_WINDOWS) */ | |
543 | |
544 | |
545 /*----------------------------------------------------------------------*/ | |
546 /* Processing file WINUSER.H */ | |
547 /*----------------------------------------------------------------------*/ | |
548 | |
549 int | |
550 qxewvsprintf (Extbyte * arg1, const Extbyte * arg2, va_list arglist) | |
551 { | |
552 if (XEUNICODE_P) | |
553 return wvsprintfW ((LPWSTR) arg1, (LPCWSTR) arg2, arglist); | |
554 else | |
555 return wvsprintfA ((LPSTR) arg1, (LPCSTR) arg2, arglist); | |
556 } | |
557 | |
558 HKL | |
559 qxeLoadKeyboardLayout (const Extbyte * pwszKLID, UINT Flags) | |
560 { | |
561 if (XEUNICODE_P) | |
562 return LoadKeyboardLayoutW ((LPCWSTR) pwszKLID, Flags); | |
563 else | |
564 return LoadKeyboardLayoutA ((LPCSTR) pwszKLID, Flags); | |
565 } | |
566 | |
567 BOOL | |
568 qxeGetKeyboardLayoutName (Extbyte * pwszKLID) | |
569 { | |
570 if (XEUNICODE_P) | |
571 return GetKeyboardLayoutNameW ((LPWSTR) pwszKLID); | |
572 else | |
573 return GetKeyboardLayoutNameA ((LPSTR) pwszKLID); | |
574 } | |
575 | |
576 /* Error if CreateDesktop used: split-sized LPDEVMODE */ | |
577 | |
578 HDESK | |
579 qxeOpenDesktop (Extbyte * lpszDesktop, DWORD dwFlags, BOOL fInherit, ACCESS_MASK dwDesiredAccess) | |
580 { | |
581 if (XEUNICODE_P) | |
582 return OpenDesktopW ((LPWSTR) lpszDesktop, dwFlags, fInherit, dwDesiredAccess); | |
583 else | |
584 return OpenDesktopA ((LPSTR) lpszDesktop, dwFlags, fInherit, dwDesiredAccess); | |
585 } | |
586 | |
587 /* NOTE: // callback fun differs only in string pointer type */ | |
588 BOOL | |
589 qxeEnumDesktops (HWINSTA hwinsta, DESKTOPENUMPROCW lpEnumFunc, LPARAM lParam) | |
590 { | |
591 if (XEUNICODE_P) | |
592 return EnumDesktopsW (hwinsta, lpEnumFunc, lParam); | |
593 else | |
594 return EnumDesktopsA (hwinsta, (DESKTOPENUMPROCA) lpEnumFunc, lParam); | |
595 } | |
596 | |
597 HWINSTA | |
598 qxeCreateWindowStation (Extbyte * lpwinsta, DWORD dwReserved, ACCESS_MASK dwDesiredAccess, LPSECURITY_ATTRIBUTES lpsa) | |
599 { | |
600 if (XEUNICODE_P) | |
601 return CreateWindowStationW ((LPWSTR) lpwinsta, dwReserved, dwDesiredAccess, lpsa); | |
602 else | |
603 return CreateWindowStationA ((LPSTR) lpwinsta, dwReserved, dwDesiredAccess, lpsa); | |
604 } | |
605 | |
606 HWINSTA | |
607 qxeOpenWindowStation (Extbyte * lpszWinSta, BOOL fInherit, ACCESS_MASK dwDesiredAccess) | |
608 { | |
609 if (XEUNICODE_P) | |
610 return OpenWindowStationW ((LPWSTR) lpszWinSta, fInherit, dwDesiredAccess); | |
611 else | |
612 return OpenWindowStationA ((LPSTR) lpszWinSta, fInherit, dwDesiredAccess); | |
613 } | |
614 | |
615 /* NOTE: // callback fun differs only in string pointer type */ | |
616 BOOL | |
617 qxeEnumWindowStations (WINSTAENUMPROCW lpEnumFunc, LPARAM lParam) | |
618 { | |
619 if (XEUNICODE_P) | |
620 return EnumWindowStationsW (lpEnumFunc, lParam); | |
621 else | |
622 return EnumWindowStationsA ((WINSTAENUMPROCA) lpEnumFunc, lParam); | |
623 } | |
624 | |
625 BOOL | |
626 qxeGetUserObjectInformation (HANDLE hObj, int nIndex, PVOID pvInfo, DWORD nLength, LPDWORD lpnLengthNeeded) | |
627 { | |
628 if (XEUNICODE_P) | |
629 return GetUserObjectInformationW (hObj, nIndex, pvInfo, nLength, lpnLengthNeeded); | |
630 else | |
631 return GetUserObjectInformationA (hObj, nIndex, pvInfo, nLength, lpnLengthNeeded); | |
632 } | |
633 | |
634 BOOL | |
635 qxeSetUserObjectInformation (HANDLE hObj, int nIndex, PVOID pvInfo, DWORD nLength) | |
636 { | |
637 if (XEUNICODE_P) | |
638 return SetUserObjectInformationW (hObj, nIndex, pvInfo, nLength); | |
639 else | |
640 return SetUserObjectInformationA (hObj, nIndex, pvInfo, nLength); | |
641 } | |
642 | |
643 UINT | |
644 qxeRegisterWindowMessage (const Extbyte * lpString) | |
645 { | |
646 if (XEUNICODE_P) | |
647 return RegisterWindowMessageW ((LPCWSTR) lpString); | |
648 else | |
649 return RegisterWindowMessageA ((LPCSTR) lpString); | |
650 } | |
651 | |
652 BOOL | |
653 qxeGetMessage (LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax) | |
654 { | |
655 if (XEUNICODE_P) | |
656 return GetMessageW (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax); | |
657 else | |
658 return GetMessageA (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax); | |
659 } | |
660 | |
661 LONG | |
662 qxeDispatchMessage (CONST MSG * lpMsg) | |
663 { | |
664 if (XEUNICODE_P) | |
665 return DispatchMessageW (lpMsg); | |
666 else | |
667 return DispatchMessageA (lpMsg); | |
668 } | |
669 | |
670 BOOL | |
671 qxePeekMessage (LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg) | |
672 { | |
673 if (XEUNICODE_P) | |
674 return PeekMessageW (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax, wRemoveMsg); | |
675 else | |
676 return PeekMessageA (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax, wRemoveMsg); | |
677 } | |
678 | |
679 /* Skipping SendMessage because split messages and structures */ | |
680 | |
681 LRESULT | |
682 qxeSendMessageTimeout (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, UINT fuFlags, UINT uTimeout, LPDWORD lpdwResult) | |
683 { | |
684 if (XEUNICODE_P) | |
685 return SendMessageTimeoutW (hWnd, Msg, wParam, lParam, fuFlags, uTimeout, lpdwResult); | |
686 else | |
687 return SendMessageTimeoutA (hWnd, Msg, wParam, lParam, fuFlags, uTimeout, lpdwResult); | |
688 } | |
689 | |
690 BOOL | |
691 qxeSendNotifyMessage (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam) | |
692 { | |
693 if (XEUNICODE_P) | |
694 return SendNotifyMessageW (hWnd, Msg, wParam, lParam); | |
695 else | |
696 return SendNotifyMessageA (hWnd, Msg, wParam, lParam); | |
697 } | |
698 | |
699 BOOL | |
700 qxeSendMessageCallback (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, SENDASYNCPROC lpResultCallBack, DWORD dwData) | |
701 { | |
702 if (XEUNICODE_P) | |
703 return SendMessageCallbackW (hWnd, Msg, wParam, lParam, lpResultCallBack, dwData); | |
704 else | |
705 return SendMessageCallbackA (hWnd, Msg, wParam, lParam, lpResultCallBack, dwData); | |
706 } | |
707 | |
708 /* Error if BroadcastSystemMessage used: win95 version not split; NT 4.0+ only */ | |
709 | |
710 /* Error if RegisterDeviceNotification used: NT 5.0+ only */ | |
711 | |
712 BOOL | |
713 qxePostMessage (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam) | |
714 { | |
715 if (XEUNICODE_P) | |
716 return PostMessageW (hWnd, Msg, wParam, lParam); | |
717 else | |
718 return PostMessageA (hWnd, Msg, wParam, lParam); | |
719 } | |
720 | |
721 BOOL | |
722 qxePostThreadMessage (DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam) | |
723 { | |
724 if (XEUNICODE_P) | |
725 return PostThreadMessageW (idThread, Msg, wParam, lParam); | |
726 else | |
727 return PostThreadMessageA (idThread, Msg, wParam, lParam); | |
728 } | |
729 | |
730 /* Skipping DefWindowProc because return value is conditionalized on _MAC, messes up parser */ | |
731 | |
732 /* Error if CallWindowProc used: two versions, STRICT and non-STRICT */ | |
733 | |
734 /* Error if CallWindowProc used: two versions, STRICT and non-STRICT */ | |
735 | |
736 /* Skipping RegisterClass because need to intercept so we can provide our own window procedure and handle split notify messages; split-simple WNDCLASS */ | |
737 | |
738 /* Skipping UnregisterClass because need to intercept for reasons related to RegisterClass */ | |
739 | |
740 BOOL | |
741 qxeGetClassInfo (HINSTANCE hInstance, const Extbyte * lpClassName, LPWNDCLASSW lpWndClass) | |
742 { | |
743 if (XEUNICODE_P) | |
744 return GetClassInfoW (hInstance, (LPCWSTR) lpClassName, lpWndClass); | |
745 else | |
746 return GetClassInfoA (hInstance, (LPCSTR) lpClassName, (LPWNDCLASSA) lpWndClass); | |
747 } | |
748 | |
749 /* Skipping RegisterClassEx because need to intercept so we can provide our own window procedure and handle split notify messages; split-simple WNDCLASSEX; NT 4.0+ only */ | |
750 | |
751 /* NOTE: NT 4.0+ only */ | |
752 BOOL | |
753 qxeGetClassInfoEx (HINSTANCE arg1, const Extbyte * arg2, LPWNDCLASSEXW arg3) | |
754 { | |
755 if (XEUNICODE_P) | |
756 return GetClassInfoExW (arg1, (LPCWSTR) arg2, arg3); | |
757 else | |
758 return GetClassInfoExA (arg1, (LPCSTR) arg2, (LPWNDCLASSEXA) arg3); | |
759 } | |
760 | |
761 HWND | |
762 qxeCreateWindowEx (DWORD dwExStyle, const Extbyte * lpClassName, const Extbyte * lpWindowName, DWORD dwStyle, int X, int Y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam) | |
763 { | |
764 if (XEUNICODE_P) | |
765 return CreateWindowExW (dwExStyle, (LPCWSTR) lpClassName, (LPCWSTR) lpWindowName, dwStyle, X, Y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam); | |
766 else | |
767 return CreateWindowExA (dwExStyle, (LPCSTR) lpClassName, (LPCSTR) lpWindowName, dwStyle, X, Y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam); | |
768 } | |
769 | |
770 HWND | |
771 qxeCreateDialogParam (HINSTANCE hInstance, const Extbyte * lpTemplateName, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam) | |
772 { | |
773 if (XEUNICODE_P) | |
774 return CreateDialogParamW (hInstance, (LPCWSTR) lpTemplateName, hWndParent, lpDialogFunc, dwInitParam); | |
775 else | |
776 return CreateDialogParamA (hInstance, (LPCSTR) lpTemplateName, hWndParent, lpDialogFunc, dwInitParam); | |
777 } | |
778 | |
779 /* NOTE: error in Cygwin prototype (no split) but fixable with typedef */ | |
780 HWND | |
781 qxeCreateDialogIndirectParam (HINSTANCE hInstance, LPCDLGTEMPLATEW lpTemplate, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam) | |
782 { | |
783 if (XEUNICODE_P) | |
784 return CreateDialogIndirectParamW (hInstance, lpTemplate, hWndParent, lpDialogFunc, dwInitParam); | |
785 else | |
786 return CreateDialogIndirectParamA (hInstance, (LPCDLGTEMPLATEA) lpTemplate, hWndParent, lpDialogFunc, dwInitParam); | |
787 } | |
788 | |
789 int | |
790 qxeDialogBoxParam (HINSTANCE hInstance, const Extbyte * lpTemplateName, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam) | |
791 { | |
792 if (XEUNICODE_P) | |
793 return DialogBoxParamW (hInstance, (LPCWSTR) lpTemplateName, hWndParent, lpDialogFunc, dwInitParam); | |
794 else | |
795 return DialogBoxParamA (hInstance, (LPCSTR) lpTemplateName, hWndParent, lpDialogFunc, dwInitParam); | |
796 } | |
797 | |
798 /* NOTE: error in Cygwin prototype (no split) but fixable with typedef */ | |
799 int | |
800 qxeDialogBoxIndirectParam (HINSTANCE hInstance, LPCDLGTEMPLATEW hDialogTemplate, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam) | |
801 { | |
802 if (XEUNICODE_P) | |
803 return DialogBoxIndirectParamW (hInstance, hDialogTemplate, hWndParent, lpDialogFunc, dwInitParam); | |
804 else | |
805 return DialogBoxIndirectParamA (hInstance, (LPCDLGTEMPLATEA) hDialogTemplate, hWndParent, lpDialogFunc, dwInitParam); | |
806 } | |
807 | |
808 BOOL | |
809 qxeSetDlgItemText (HWND hDlg, int nIDDlgItem, const Extbyte * lpString) | |
810 { | |
811 if (XEUNICODE_P) | |
812 return SetDlgItemTextW (hDlg, nIDDlgItem, (LPCWSTR) lpString); | |
813 else | |
814 return SetDlgItemTextA (hDlg, nIDDlgItem, (LPCSTR) lpString); | |
815 } | |
816 | |
817 UINT | |
818 qxeGetDlgItemText (HWND hDlg, int nIDDlgItem, Extbyte * lpString, int nMaxCount) | |
819 { | |
820 if (XEUNICODE_P) | |
821 return GetDlgItemTextW (hDlg, nIDDlgItem, (LPWSTR) lpString, nMaxCount); | |
822 else | |
823 return GetDlgItemTextA (hDlg, nIDDlgItem, (LPSTR) lpString, nMaxCount); | |
824 } | |
825 | |
826 LONG | |
827 qxeSendDlgItemMessage (HWND hDlg, int nIDDlgItem, UINT Msg, WPARAM wParam, LPARAM lParam) | |
828 { | |
829 if (XEUNICODE_P) | |
830 return SendDlgItemMessageW (hDlg, nIDDlgItem, Msg, wParam, lParam); | |
831 else | |
832 return SendDlgItemMessageA (hDlg, nIDDlgItem, Msg, wParam, lParam); | |
833 } | |
834 | |
835 /* Error if DefDlgProc used: return value is conditionalized on _MAC, messes up parser */ | |
836 | |
837 #if !defined (CYGWIN_HEADERS) | |
838 | |
839 BOOL | |
840 qxeCallMsgFilter (LPMSG lpMsg, int nCode) | |
841 { | |
842 if (XEUNICODE_P) | |
843 return CallMsgFilterW (lpMsg, nCode); | |
844 else | |
845 return CallMsgFilterA (lpMsg, nCode); | |
846 } | |
847 | |
848 #endif /* !defined (CYGWIN_HEADERS) */ | |
849 | |
850 UINT | |
851 qxeRegisterClipboardFormat (const Extbyte * lpszFormat) | |
852 { | |
853 if (XEUNICODE_P) | |
854 return RegisterClipboardFormatW ((LPCWSTR) lpszFormat); | |
855 else | |
856 return RegisterClipboardFormatA ((LPCSTR) lpszFormat); | |
857 } | |
858 | |
859 int | |
860 qxeGetClipboardFormatName (UINT format, Extbyte * lpszFormatName, int cchMaxCount) | |
861 { | |
862 if (XEUNICODE_P) | |
863 return GetClipboardFormatNameW (format, (LPWSTR) lpszFormatName, cchMaxCount); | |
864 else | |
865 return GetClipboardFormatNameA (format, (LPSTR) lpszFormatName, cchMaxCount); | |
866 } | |
867 | |
868 BOOL | |
869 qxeCharToOem (const Extbyte * lpszSrc, LPSTR lpszDst) | |
870 { | |
871 if (XEUNICODE_P) | |
872 return CharToOemW ((LPCWSTR) lpszSrc, lpszDst); | |
873 else | |
874 return CharToOemA ((LPCSTR) lpszSrc, lpszDst); | |
875 } | |
876 | |
877 BOOL | |
878 qxeOemToChar (LPCSTR lpszSrc, Extbyte * lpszDst) | |
879 { | |
880 if (XEUNICODE_P) | |
881 return OemToCharW (lpszSrc, (LPWSTR) lpszDst); | |
882 else | |
883 return OemToCharA (lpszSrc, (LPSTR) lpszDst); | |
884 } | |
885 | |
886 BOOL | |
887 qxeCharToOemBuff (const Extbyte * lpszSrc, LPSTR lpszDst, DWORD cchDstLength) | |
888 { | |
889 if (XEUNICODE_P) | |
890 return CharToOemBuffW ((LPCWSTR) lpszSrc, lpszDst, cchDstLength); | |
891 else | |
892 return CharToOemBuffA ((LPCSTR) lpszSrc, lpszDst, cchDstLength); | |
893 } | |
894 | |
895 BOOL | |
896 qxeOemToCharBuff (LPCSTR lpszSrc, Extbyte * lpszDst, DWORD cchDstLength) | |
897 { | |
898 if (XEUNICODE_P) | |
899 return OemToCharBuffW (lpszSrc, (LPWSTR) lpszDst, cchDstLength); | |
900 else | |
901 return OemToCharBuffA (lpszSrc, (LPSTR) lpszDst, cchDstLength); | |
902 } | |
903 | |
904 Extbyte * | |
905 qxeCharUpper (Extbyte * lpsz) | |
906 { | |
907 if (XEUNICODE_P) | |
908 return (Extbyte *) CharUpperW ((LPWSTR) lpsz); | |
909 else | |
910 return (Extbyte *) CharUpperA ((LPSTR) lpsz); | |
911 } | |
912 | |
913 DWORD | |
914 qxeCharUpperBuff (Extbyte * lpsz, DWORD cchLength) | |
915 { | |
916 if (XEUNICODE_P) | |
917 return CharUpperBuffW ((LPWSTR) lpsz, cchLength); | |
918 else | |
919 return CharUpperBuffA ((LPSTR) lpsz, cchLength); | |
920 } | |
921 | |
922 Extbyte * | |
923 qxeCharLower (Extbyte * lpsz) | |
924 { | |
925 if (XEUNICODE_P) | |
926 return (Extbyte *) CharLowerW ((LPWSTR) lpsz); | |
927 else | |
928 return (Extbyte *) CharLowerA ((LPSTR) lpsz); | |
929 } | |
930 | |
931 DWORD | |
932 qxeCharLowerBuff (Extbyte * lpsz, DWORD cchLength) | |
933 { | |
934 if (XEUNICODE_P) | |
935 return CharLowerBuffW ((LPWSTR) lpsz, cchLength); | |
936 else | |
937 return CharLowerBuffA ((LPSTR) lpsz, cchLength); | |
938 } | |
939 | |
940 Extbyte * | |
941 qxeCharNext (const Extbyte * lpsz) | |
942 { | |
943 if (XEUNICODE_P) | |
944 return (Extbyte *) CharNextW ((LPCWSTR) lpsz); | |
945 else | |
946 return (Extbyte *) CharNextA ((LPCSTR) lpsz); | |
947 } | |
948 | |
949 Extbyte * | |
950 qxeCharPrev (const Extbyte * lpszStart, const Extbyte * lpszCurrent) | |
951 { | |
952 if (XEUNICODE_P) | |
953 return (Extbyte *) CharPrevW ((LPCWSTR) lpszStart, (LPCWSTR) lpszCurrent); | |
954 else | |
955 return (Extbyte *) CharPrevA ((LPCSTR) lpszStart, (LPCSTR) lpszCurrent); | |
956 } | |
957 | |
958 /* Error if IsCharAlpha used: split CHAR */ | |
959 | |
960 /* Error if IsCharAlphaNumeric used: split CHAR */ | |
961 | |
962 /* Error if IsCharUpper used: split CHAR */ | |
963 | |
964 /* Error if IsCharLower used: split CHAR */ | |
965 | |
966 int | |
967 qxeGetKeyNameText (LONG lParam, Extbyte * lpString, int nSize) | |
968 { | |
969 if (XEUNICODE_P) | |
970 return GetKeyNameTextW (lParam, (LPWSTR) lpString, nSize); | |
971 else | |
972 return GetKeyNameTextA (lParam, (LPSTR) lpString, nSize); | |
973 } | |
974 | |
975 /* Skipping VkKeyScan because split CHAR */ | |
976 | |
977 /* Error if VkKeyScanEx used: split CHAR; NT 4.0+ only */ | |
978 | |
979 UINT | |
980 qxeMapVirtualKey (UINT uCode, UINT uMapType) | |
981 { | |
982 if (XEUNICODE_P) | |
983 return MapVirtualKeyW (uCode, uMapType); | |
984 else | |
985 return MapVirtualKeyA (uCode, uMapType); | |
986 } | |
987 | |
988 /* NOTE: NT 4.0+ only */ | |
989 UINT | |
990 qxeMapVirtualKeyEx (UINT uCode, UINT uMapType, HKL dwhkl) | |
991 { | |
992 if (XEUNICODE_P) | |
993 return MapVirtualKeyExW (uCode, uMapType, dwhkl); | |
994 else | |
995 return MapVirtualKeyExA (uCode, uMapType, dwhkl); | |
996 } | |
997 | |
998 HACCEL | |
999 qxeLoadAccelerators (HINSTANCE hInstance, const Extbyte * lpTableName) | |
1000 { | |
1001 if (XEUNICODE_P) | |
1002 return LoadAcceleratorsW (hInstance, (LPCWSTR) lpTableName); | |
1003 else | |
1004 return LoadAcceleratorsA (hInstance, (LPCSTR) lpTableName); | |
1005 } | |
1006 | |
1007 HACCEL | |
1008 qxeCreateAcceleratorTable (LPACCEL arg1, int arg2) | |
1009 { | |
1010 if (XEUNICODE_P) | |
1011 return CreateAcceleratorTableW (arg1, arg2); | |
1012 else | |
1013 return CreateAcceleratorTableA (arg1, arg2); | |
1014 } | |
1015 | |
1016 int | |
1017 qxeCopyAcceleratorTable (HACCEL hAccelSrc, LPACCEL lpAccelDst, int cAccelEntries) | |
1018 { | |
1019 if (XEUNICODE_P) | |
1020 return CopyAcceleratorTableW (hAccelSrc, lpAccelDst, cAccelEntries); | |
1021 else | |
1022 return CopyAcceleratorTableA (hAccelSrc, lpAccelDst, cAccelEntries); | |
1023 } | |
1024 | |
1025 int | |
1026 qxeTranslateAccelerator (HWND hWnd, HACCEL hAccTable, LPMSG lpMsg) | |
1027 { | |
1028 if (XEUNICODE_P) | |
1029 return TranslateAcceleratorW (hWnd, hAccTable, lpMsg); | |
1030 else | |
1031 return TranslateAcceleratorA (hWnd, hAccTable, lpMsg); | |
1032 } | |
1033 | |
1034 HMENU | |
1035 qxeLoadMenu (HINSTANCE hInstance, const Extbyte * lpMenuName) | |
1036 { | |
1037 if (XEUNICODE_P) | |
1038 return LoadMenuW (hInstance, (LPCWSTR) lpMenuName); | |
1039 else | |
1040 return LoadMenuA (hInstance, (LPCSTR) lpMenuName); | |
1041 } | |
1042 | |
1043 HMENU | |
1044 qxeLoadMenuIndirect (CONST MENUTEMPLATEW * lpMenuTemplate) | |
1045 { | |
1046 if (XEUNICODE_P) | |
1047 return LoadMenuIndirectW (lpMenuTemplate); | |
1048 else | |
1049 return LoadMenuIndirectA ((CONST MENUTEMPLATEA *) lpMenuTemplate); | |
1050 } | |
1051 | |
1052 BOOL | |
1053 qxeChangeMenu (HMENU hMenu, UINT cmd, const Extbyte * lpszNewItem, UINT cmdInsert, UINT flags) | |
1054 { | |
1055 if (XEUNICODE_P) | |
1056 return ChangeMenuW (hMenu, cmd, (LPCWSTR) lpszNewItem, cmdInsert, flags); | |
1057 else | |
1058 return ChangeMenuA (hMenu, cmd, (LPCSTR) lpszNewItem, cmdInsert, flags); | |
1059 } | |
1060 | |
1061 int | |
1062 qxeGetMenuString (HMENU hMenu, UINT uIDItem, Extbyte * lpString, int nMaxCount, UINT uFlag) | |
1063 { | |
1064 if (XEUNICODE_P) | |
1065 return GetMenuStringW (hMenu, uIDItem, (LPWSTR) lpString, nMaxCount, uFlag); | |
1066 else | |
1067 return GetMenuStringA (hMenu, uIDItem, (LPSTR) lpString, nMaxCount, uFlag); | |
1068 } | |
1069 | |
1070 BOOL | |
1071 qxeInsertMenu (HMENU hMenu, UINT uPosition, UINT uFlags, UINT uIDNewItem, const Extbyte * lpNewItem) | |
1072 { | |
1073 if (XEUNICODE_P) | |
1074 return InsertMenuW (hMenu, uPosition, uFlags, uIDNewItem, (LPCWSTR) lpNewItem); | |
1075 else | |
1076 return InsertMenuA (hMenu, uPosition, uFlags, uIDNewItem, (LPCSTR) lpNewItem); | |
1077 } | |
1078 | |
1079 BOOL | |
1080 qxeAppendMenu (HMENU hMenu, UINT uFlags, UINT uIDNewItem, const Extbyte * lpNewItem) | |
1081 { | |
1082 if (XEUNICODE_P) | |
1083 return AppendMenuW (hMenu, uFlags, uIDNewItem, (LPCWSTR) lpNewItem); | |
1084 else | |
1085 return AppendMenuA (hMenu, uFlags, uIDNewItem, (LPCSTR) lpNewItem); | |
1086 } | |
1087 | |
1088 BOOL | |
1089 qxeModifyMenu (HMENU hMnu, UINT uPosition, UINT uFlags, UINT uIDNewItem, const Extbyte * lpNewItem) | |
1090 { | |
1091 if (XEUNICODE_P) | |
1092 return ModifyMenuW (hMnu, uPosition, uFlags, uIDNewItem, (LPCWSTR) lpNewItem); | |
1093 else | |
1094 return ModifyMenuA (hMnu, uPosition, uFlags, uIDNewItem, (LPCSTR) lpNewItem); | |
1095 } | |
1096 | |
1097 /* NOTE: NT 4.0+ only */ | |
1098 BOOL | |
1099 qxeInsertMenuItem (HMENU arg1, UINT arg2, BOOL arg3, LPCMENUITEMINFOW arg4) | |
1100 { | |
1101 if (XEUNICODE_P) | |
1102 return InsertMenuItemW (arg1, arg2, arg3, arg4); | |
1103 else | |
1104 return InsertMenuItemA (arg1, arg2, arg3, (LPCMENUITEMINFOA) arg4); | |
1105 } | |
1106 | |
1107 /* NOTE: NT 4.0+ only */ | |
1108 BOOL | |
1109 qxeGetMenuItemInfo (HMENU arg1, UINT arg2, BOOL arg3, LPMENUITEMINFOW arg4) | |
1110 { | |
1111 if (XEUNICODE_P) | |
1112 return GetMenuItemInfoW (arg1, arg2, arg3, arg4); | |
1113 else | |
1114 return GetMenuItemInfoA (arg1, arg2, arg3, (LPMENUITEMINFOA) arg4); | |
1115 } | |
1116 | |
1117 /* NOTE: NT 4.0+ only */ | |
1118 BOOL | |
1119 qxeSetMenuItemInfo (HMENU arg1, UINT arg2, BOOL arg3, LPCMENUITEMINFOW arg4) | |
1120 { | |
1121 if (XEUNICODE_P) | |
1122 return SetMenuItemInfoW (arg1, arg2, arg3, arg4); | |
1123 else | |
1124 return SetMenuItemInfoA (arg1, arg2, arg3, (LPCMENUITEMINFOA) arg4); | |
1125 } | |
1126 | |
1127 int | |
1128 qxeDrawText (HDC hDC, const Extbyte * lpString, int nCount, LPRECT lpRect, UINT uFormat) | |
1129 { | |
1130 if (XEUNICODE_P) | |
1131 return DrawTextW (hDC, (LPCWSTR) lpString, nCount, lpRect, uFormat); | |
1132 else | |
1133 return DrawTextA (hDC, (LPCSTR) lpString, nCount, lpRect, uFormat); | |
1134 } | |
1135 | |
1136 /* NOTE: NT 4.0+ only */ | |
1137 int | |
1138 qxeDrawTextEx (HDC arg1, Extbyte * arg2, int arg3, LPRECT arg4, UINT arg5, LPDRAWTEXTPARAMS arg6) | |
1139 { | |
1140 if (XEUNICODE_P) | |
1141 return DrawTextExW (arg1, (LPWSTR) arg2, arg3, arg4, arg5, arg6); | |
1142 else | |
1143 return DrawTextExA (arg1, (LPSTR) arg2, arg3, arg4, arg5, arg6); | |
1144 } | |
1145 | |
1146 BOOL | |
1147 qxeGrayString (HDC hDC, HBRUSH hBrush, GRAYSTRINGPROC lpOutputFunc, LPARAM lpData, int nCount, int X, int Y, int nWidth, int nHeight) | |
1148 { | |
1149 if (XEUNICODE_P) | |
1150 return GrayStringW (hDC, hBrush, lpOutputFunc, lpData, nCount, X, Y, nWidth, nHeight); | |
1151 else | |
1152 return GrayStringA (hDC, hBrush, lpOutputFunc, lpData, nCount, X, Y, nWidth, nHeight); | |
1153 } | |
1154 | |
1155 /* NOTE: NT 4.0+ only */ | |
1156 BOOL | |
1157 qxeDrawState (HDC arg1, HBRUSH arg2, DRAWSTATEPROC arg3, LPARAM arg4, WPARAM arg5, int arg6, int arg7, int arg8, int arg9, UINT arg10) | |
1158 { | |
1159 if (XEUNICODE_P) | |
1160 return DrawStateW (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10); | |
1161 else | |
1162 return DrawStateA (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10); | |
1163 } | |
1164 | |
1165 LONG | |
1166 qxeTabbedTextOut (HDC hDC, int X, int Y, const Extbyte * lpString, int nCount, int nTabPositions, LPINT lpnTabStopPositions, int nTabOrigin) | |
1167 { | |
1168 if (XEUNICODE_P) | |
1169 return TabbedTextOutW (hDC, X, Y, (LPCWSTR) lpString, nCount, nTabPositions, lpnTabStopPositions, nTabOrigin); | |
1170 else | |
1171 return TabbedTextOutA (hDC, X, Y, (LPCSTR) lpString, nCount, nTabPositions, lpnTabStopPositions, nTabOrigin); | |
1172 } | |
1173 | |
1174 DWORD | |
1175 qxeGetTabbedTextExtent (HDC hDC, const Extbyte * lpString, int nCount, int nTabPositions, LPINT lpnTabStopPositions) | |
1176 { | |
1177 if (XEUNICODE_P) | |
1178 return GetTabbedTextExtentW (hDC, (LPCWSTR) lpString, nCount, nTabPositions, lpnTabStopPositions); | |
1179 else | |
1180 return GetTabbedTextExtentA (hDC, (LPCSTR) lpString, nCount, nTabPositions, lpnTabStopPositions); | |
1181 } | |
1182 | |
1183 BOOL | |
1184 qxeSetProp (HWND hWnd, const Extbyte * lpString, HANDLE hData) | |
1185 { | |
1186 if (XEUNICODE_P) | |
1187 return SetPropW (hWnd, (LPCWSTR) lpString, hData); | |
1188 else | |
1189 return SetPropA (hWnd, (LPCSTR) lpString, hData); | |
1190 } | |
1191 | |
1192 HANDLE | |
1193 qxeGetProp (HWND hWnd, const Extbyte * lpString) | |
1194 { | |
1195 if (XEUNICODE_P) | |
1196 return GetPropW (hWnd, (LPCWSTR) lpString); | |
1197 else | |
1198 return GetPropA (hWnd, (LPCSTR) lpString); | |
1199 } | |
1200 | |
1201 HANDLE | |
1202 qxeRemoveProp (HWND hWnd, const Extbyte * lpString) | |
1203 { | |
1204 if (XEUNICODE_P) | |
1205 return RemovePropW (hWnd, (LPCWSTR) lpString); | |
1206 else | |
1207 return RemovePropA (hWnd, (LPCSTR) lpString); | |
1208 } | |
1209 | |
1210 /* NOTE: // callback fun differs only in string pointer type */ | |
1211 int | |
1212 qxeEnumPropsEx (HWND hWnd, PROPENUMPROCEXW lpEnumFunc, LPARAM lParam) | |
1213 { | |
1214 if (XEUNICODE_P) | |
1215 return EnumPropsExW (hWnd, lpEnumFunc, lParam); | |
1216 else | |
1217 return EnumPropsExA (hWnd, (PROPENUMPROCEXA) lpEnumFunc, lParam); | |
1218 } | |
1219 | |
1220 /* NOTE: // callback fun differs only in string pointer type */ | |
1221 int | |
1222 qxeEnumProps (HWND hWnd, PROPENUMPROCW lpEnumFunc) | |
1223 { | |
1224 if (XEUNICODE_P) | |
1225 return EnumPropsW (hWnd, lpEnumFunc); | |
1226 else | |
1227 return EnumPropsA (hWnd, (PROPENUMPROCA) lpEnumFunc); | |
1228 } | |
1229 | |
1230 BOOL | |
1231 qxeSetWindowText (HWND hWnd, const Extbyte * lpString) | |
1232 { | |
1233 if (XEUNICODE_P) | |
1234 return SetWindowTextW (hWnd, (LPCWSTR) lpString); | |
1235 else | |
1236 return SetWindowTextA (hWnd, (LPCSTR) lpString); | |
1237 } | |
1238 | |
1239 int | |
1240 qxeGetWindowText (HWND hWnd, Extbyte * lpString, int nMaxCount) | |
1241 { | |
1242 if (XEUNICODE_P) | |
1243 return GetWindowTextW (hWnd, (LPWSTR) lpString, nMaxCount); | |
1244 else | |
1245 return GetWindowTextA (hWnd, (LPSTR) lpString, nMaxCount); | |
1246 } | |
1247 | |
1248 int | |
1249 qxeGetWindowTextLength (HWND hWnd) | |
1250 { | |
1251 if (XEUNICODE_P) | |
1252 return GetWindowTextLengthW (hWnd); | |
1253 else | |
1254 return GetWindowTextLengthA (hWnd); | |
1255 } | |
1256 | |
1257 int | |
1258 qxeMessageBox (HWND hWnd, const Extbyte * lpText, const Extbyte * lpCaption, UINT uType) | |
1259 { | |
1260 if (XEUNICODE_P) | |
1261 return MessageBoxW (hWnd, (LPCWSTR) lpText, (LPCWSTR) lpCaption, uType); | |
1262 else | |
1263 return MessageBoxA (hWnd, (LPCSTR) lpText, (LPCSTR) lpCaption, uType); | |
1264 } | |
1265 | |
1266 int | |
1267 qxeMessageBoxEx (HWND hWnd, const Extbyte * lpText, const Extbyte * lpCaption, UINT uType, WORD wLanguageId) | |
1268 { | |
1269 if (XEUNICODE_P) | |
1270 return MessageBoxExW (hWnd, (LPCWSTR) lpText, (LPCWSTR) lpCaption, uType, wLanguageId); | |
1271 else | |
1272 return MessageBoxExA (hWnd, (LPCSTR) lpText, (LPCSTR) lpCaption, uType, wLanguageId); | |
1273 } | |
1274 | |
1275 /* NOTE: NT 4.0+ only */ | |
1276 int | |
1277 qxeMessageBoxIndirect (LPMSGBOXPARAMSW arg1) | |
1278 { | |
1279 if (XEUNICODE_P) | |
1280 return MessageBoxIndirectW (arg1); | |
1281 else | |
1282 return MessageBoxIndirectA ((LPMSGBOXPARAMSA) arg1); | |
1283 } | |
1284 | |
1285 LONG | |
1286 qxeGetWindowLong (HWND hWnd, int nIndex) | |
1287 { | |
1288 if (XEUNICODE_P) | |
1289 return GetWindowLongW (hWnd, nIndex); | |
1290 else | |
1291 return GetWindowLongA (hWnd, nIndex); | |
1292 } | |
1293 | |
1294 LONG | |
1295 qxeSetWindowLong (HWND hWnd, int nIndex, LONG dwNewLong) | |
1296 { | |
1297 if (XEUNICODE_P) | |
1298 return SetWindowLongW (hWnd, nIndex, dwNewLong); | |
1299 else | |
1300 return SetWindowLongA (hWnd, nIndex, dwNewLong); | |
1301 } | |
1302 | |
1303 DWORD | |
1304 qxeGetClassLong (HWND hWnd, int nIndex) | |
1305 { | |
1306 if (XEUNICODE_P) | |
1307 return GetClassLongW (hWnd, nIndex); | |
1308 else | |
1309 return GetClassLongA (hWnd, nIndex); | |
1310 } | |
1311 | |
1312 DWORD | |
1313 qxeSetClassLong (HWND hWnd, int nIndex, LONG dwNewLong) | |
1314 { | |
1315 if (XEUNICODE_P) | |
1316 return SetClassLongW (hWnd, nIndex, dwNewLong); | |
1317 else | |
1318 return SetClassLongA (hWnd, nIndex, dwNewLong); | |
1319 } | |
1320 | |
1321 HWND | |
1322 qxeFindWindow (const Extbyte * lpClassName, const Extbyte * lpWindowName) | |
1323 { | |
1324 if (XEUNICODE_P) | |
1325 return FindWindowW ((LPCWSTR) lpClassName, (LPCWSTR) lpWindowName); | |
1326 else | |
1327 return FindWindowA ((LPCSTR) lpClassName, (LPCSTR) lpWindowName); | |
1328 } | |
1329 | |
1330 /* NOTE: NT 4.0+ only */ | |
1331 HWND | |
1332 qxeFindWindowEx (HWND arg1, HWND arg2, const Extbyte * arg3, const Extbyte * arg4) | |
1333 { | |
1334 if (XEUNICODE_P) | |
1335 return FindWindowExW (arg1, arg2, (LPCWSTR) arg3, (LPCWSTR) arg4); | |
1336 else | |
1337 return FindWindowExA (arg1, arg2, (LPCSTR) arg3, (LPCSTR) arg4); | |
1338 } | |
1339 | |
1340 int | |
1341 qxeGetClassName (HWND hWnd, Extbyte * lpClassName, int nMaxCount) | |
1342 { | |
1343 if (XEUNICODE_P) | |
1344 return GetClassNameW (hWnd, (LPWSTR) lpClassName, nMaxCount); | |
1345 else | |
1346 return GetClassNameA (hWnd, (LPSTR) lpClassName, nMaxCount); | |
1347 } | |
1348 | |
1349 /* Error if SetWindowsHook used: obsolete; two versions, STRICT and non-STRICT */ | |
1350 | |
1351 /* Error if SetWindowsHook used: obsolete; two versions, STRICT and non-STRICT */ | |
1352 | |
1353 HHOOK | |
1354 qxeSetWindowsHookEx (int idHook, HOOKPROC lpfn, HINSTANCE hmod, DWORD dwThreadId) | |
1355 { | |
1356 if (XEUNICODE_P) | |
1357 return SetWindowsHookExW (idHook, lpfn, hmod, dwThreadId); | |
1358 else | |
1359 return SetWindowsHookExA (idHook, lpfn, hmod, dwThreadId); | |
1360 } | |
1361 | |
1362 HBITMAP | |
1363 qxeLoadBitmap (HINSTANCE hInstance, const Extbyte * lpBitmapName) | |
1364 { | |
1365 if (XEUNICODE_P) | |
1366 return LoadBitmapW (hInstance, (LPCWSTR) lpBitmapName); | |
1367 else | |
1368 return LoadBitmapA (hInstance, (LPCSTR) lpBitmapName); | |
1369 } | |
1370 | |
1371 HCURSOR | |
1372 qxeLoadCursor (HINSTANCE hInstance, const Extbyte * lpCursorName) | |
1373 { | |
1374 if (XEUNICODE_P) | |
1375 return LoadCursorW (hInstance, (LPCWSTR) lpCursorName); | |
1376 else | |
1377 return LoadCursorA (hInstance, (LPCSTR) lpCursorName); | |
1378 } | |
1379 | |
1380 HCURSOR | |
1381 qxeLoadCursorFromFile (const Extbyte * lpFileName) | |
1382 { | |
1383 if (XEUNICODE_P) | |
1384 return LoadCursorFromFileW ((LPCWSTR) lpFileName); | |
1385 else | |
1386 return LoadCursorFromFileA ((LPCSTR) lpFileName); | |
1387 } | |
1388 | |
1389 HICON | |
1390 qxeLoadIcon (HINSTANCE hInstance, const Extbyte * lpIconName) | |
1391 { | |
1392 if (XEUNICODE_P) | |
1393 return LoadIconW (hInstance, (LPCWSTR) lpIconName); | |
1394 else | |
1395 return LoadIconA (hInstance, (LPCSTR) lpIconName); | |
1396 } | |
1397 | |
1398 /* NOTE: NT 4.0+ only */ | |
1399 HANDLE | |
1400 qxeLoadImage (HINSTANCE arg1, const Extbyte * arg2, UINT arg3, int arg4, int arg5, UINT arg6) | |
1401 { | |
1402 if (XEUNICODE_P) | |
1403 return LoadImageW (arg1, (LPCWSTR) arg2, arg3, arg4, arg5, arg6); | |
1404 else | |
1405 return LoadImageA (arg1, (LPCSTR) arg2, arg3, arg4, arg5, arg6); | |
1406 } | |
1407 | |
1408 int | |
1409 qxeLoadString (HINSTANCE hInstance, UINT uID, Extbyte * lpBuffer, int nBufferMax) | |
1410 { | |
1411 if (XEUNICODE_P) | |
1412 return LoadStringW (hInstance, uID, (LPWSTR) lpBuffer, nBufferMax); | |
1413 else | |
1414 return LoadStringA (hInstance, uID, (LPSTR) lpBuffer, nBufferMax); | |
1415 } | |
1416 | |
1417 BOOL | |
1418 qxeIsDialogMessage (HWND hDlg, LPMSG lpMsg) | |
1419 { | |
1420 if (XEUNICODE_P) | |
1421 return IsDialogMessageW (hDlg, lpMsg); | |
1422 else | |
1423 return IsDialogMessageA (hDlg, lpMsg); | |
1424 } | |
1425 | |
1426 int | |
1427 qxeDlgDirList (HWND hDlg, Extbyte * lpPathSpec, int nIDListBox, int nIDStaticPath, UINT uFileType) | |
1428 { | |
1429 if (XEUNICODE_P) | |
1430 return DlgDirListW (hDlg, (LPWSTR) lpPathSpec, nIDListBox, nIDStaticPath, uFileType); | |
1431 else | |
1432 return DlgDirListA (hDlg, (LPSTR) lpPathSpec, nIDListBox, nIDStaticPath, uFileType); | |
1433 } | |
1434 | |
1435 BOOL | |
1436 qxeDlgDirSelectEx (HWND hDlg, Extbyte * lpString, int nCount, int nIDListBox) | |
1437 { | |
1438 if (XEUNICODE_P) | |
1439 return DlgDirSelectExW (hDlg, (LPWSTR) lpString, nCount, nIDListBox); | |
1440 else | |
1441 return DlgDirSelectExA (hDlg, (LPSTR) lpString, nCount, nIDListBox); | |
1442 } | |
1443 | |
1444 int | |
1445 qxeDlgDirListComboBox (HWND hDlg, Extbyte * lpPathSpec, int nIDComboBox, int nIDStaticPath, UINT uFiletype) | |
1446 { | |
1447 if (XEUNICODE_P) | |
1448 return DlgDirListComboBoxW (hDlg, (LPWSTR) lpPathSpec, nIDComboBox, nIDStaticPath, uFiletype); | |
1449 else | |
1450 return DlgDirListComboBoxA (hDlg, (LPSTR) lpPathSpec, nIDComboBox, nIDStaticPath, uFiletype); | |
1451 } | |
1452 | |
1453 BOOL | |
1454 qxeDlgDirSelectComboBoxEx (HWND hDlg, Extbyte * lpString, int nCount, int nIDComboBox) | |
1455 { | |
1456 if (XEUNICODE_P) | |
1457 return DlgDirSelectComboBoxExW (hDlg, (LPWSTR) lpString, nCount, nIDComboBox); | |
1458 else | |
1459 return DlgDirSelectComboBoxExA (hDlg, (LPSTR) lpString, nCount, nIDComboBox); | |
1460 } | |
1461 | |
1462 LRESULT | |
1463 qxeDefFrameProc (HWND hWnd, HWND hWndMDIClient, UINT uMsg, WPARAM wParam, LPARAM lParam) | |
1464 { | |
1465 if (XEUNICODE_P) | |
1466 return DefFrameProcW (hWnd, hWndMDIClient, uMsg, wParam, lParam); | |
1467 else | |
1468 return DefFrameProcA (hWnd, hWndMDIClient, uMsg, wParam, lParam); | |
1469 } | |
1470 | |
1471 /* Error if DefMDIChildProc used: return value is conditionalized on _MAC, messes up parser */ | |
1472 | |
1473 HWND | |
1474 qxeCreateMDIWindow (Extbyte * lpClassName, Extbyte * lpWindowName, DWORD dwStyle, int X, int Y, int nWidth, int nHeight, HWND hWndParent, HINSTANCE hInstance, LPARAM lParam) | |
1475 { | |
1476 if (XEUNICODE_P) | |
1477 return CreateMDIWindowW ((LPWSTR) lpClassName, (LPWSTR) lpWindowName, dwStyle, X, Y, nWidth, nHeight, hWndParent, hInstance, lParam); | |
1478 else | |
1479 return CreateMDIWindowA ((LPSTR) lpClassName, (LPSTR) lpWindowName, dwStyle, X, Y, nWidth, nHeight, hWndParent, hInstance, lParam); | |
1480 } | |
1481 | |
1482 BOOL | |
1483 qxeWinHelp (HWND hWndMain, const Extbyte * lpszHelp, UINT uCommand, DWORD dwData) | |
1484 { | |
1485 if (XEUNICODE_P) | |
1486 return WinHelpW (hWndMain, (LPCWSTR) lpszHelp, uCommand, dwData); | |
1487 else | |
1488 return WinHelpA (hWndMain, (LPCSTR) lpszHelp, uCommand, dwData); | |
1489 } | |
1490 | |
1491 /* Error if ChangeDisplaySettings used: split-sized LPDEVMODE */ | |
1492 | |
1493 /* Error if ChangeDisplaySettingsEx used: split-sized LPDEVMODE; NT 5.0/Win98+ only */ | |
1494 | |
1495 /* Error if EnumDisplaySettings used: split-sized LPDEVMODE */ | |
1496 | |
1497 /* Error if EnumDisplayDevices used: split-sized PDISPLAY_DEVICE; NT 5.0+ only, no Win98 */ | |
1498 | |
1499 /* NOTE: probs w/ICONMETRICS, NONCLIENTMETRICS */ | |
1500 BOOL | |
1501 qxeSystemParametersInfo (UINT uiAction, UINT uiParam, PVOID pvParam, UINT fWinIni) | |
1502 { | |
1503 if (XEUNICODE_P) | |
1504 return SystemParametersInfoW (uiAction, uiParam, pvParam, fWinIni); | |
1505 else | |
1506 return SystemParametersInfoA (uiAction, uiParam, pvParam, fWinIni); | |
1507 } | |
1508 | |
1509 /* Error if GetMonitorInfo used: NT 5.0/Win98+ only */ | |
1510 | |
1511 /* Error if GetWindowModuleFileName used: NT 5.0+ only */ | |
1512 | |
1513 /* Error if RealGetWindowClass used: NT 5.0+ only */ | |
1514 | |
1515 /* Error if GetAltTabInfo used: NT 5.0+ only */ | |
1516 | |
1517 | |
1518 /*----------------------------------------------------------------------*/ | |
1519 /* Processing file IME.H */ | |
1520 /*----------------------------------------------------------------------*/ | |
1521 | |
1522 /* Error if SendIMEMessageEx used: obsolete, no docs available */ | |
1523 | |
1524 | |
1525 /*----------------------------------------------------------------------*/ | |
1526 /* Processing file IMM.H */ | |
1527 /*----------------------------------------------------------------------*/ | |
1528 | |
1529 #if defined (HAVE_MS_WINDOWS) | |
1530 | |
1531 HKL | |
1532 qxeImmInstallIME (const Extbyte * lpszIMEFileName, const Extbyte * lpszLayoutText) | |
1533 { | |
1534 if (XEUNICODE_P) | |
1535 return ImmInstallIMEW ((LPCWSTR) lpszIMEFileName, (LPCWSTR) lpszLayoutText); | |
1536 else | |
1537 return ImmInstallIMEA ((LPCSTR) lpszIMEFileName, (LPCSTR) lpszLayoutText); | |
1538 } | |
1539 | |
1540 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1541 | |
1542 #if defined (HAVE_MS_WINDOWS) | |
1543 | |
1544 UINT | |
1545 qxeImmGetDescription (HKL arg1, Extbyte * arg2, UINT uBufLen) | |
1546 { | |
1547 if (XEUNICODE_P) | |
1548 return ImmGetDescriptionW (arg1, (LPWSTR) arg2, uBufLen); | |
1549 else | |
1550 return ImmGetDescriptionA (arg1, (LPSTR) arg2, uBufLen); | |
1551 } | |
1552 | |
1553 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1554 | |
1555 #if defined (HAVE_MS_WINDOWS) | |
1556 | |
1557 UINT | |
1558 qxeImmGetIMEFileName (HKL arg1, Extbyte * arg2, UINT uBufLen) | |
1559 { | |
1560 if (XEUNICODE_P) | |
1561 return ImmGetIMEFileNameW (arg1, (LPWSTR) arg2, uBufLen); | |
1562 else | |
1563 return ImmGetIMEFileNameA (arg1, (LPSTR) arg2, uBufLen); | |
1564 } | |
1565 | |
1566 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1567 | |
1568 #if defined (HAVE_MS_WINDOWS) | |
1569 | |
1570 LONG | |
1571 qxeImmGetCompositionString (HIMC arg1, DWORD arg2, LPVOID arg3, DWORD arg4) | |
1572 { | |
1573 if (XEUNICODE_P) | |
1574 return ImmGetCompositionStringW (arg1, arg2, arg3, arg4); | |
1575 else | |
1576 return ImmGetCompositionStringA (arg1, arg2, arg3, arg4); | |
1577 } | |
1578 | |
1579 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1580 | |
1581 #if defined (HAVE_MS_WINDOWS) | |
1582 | |
1583 /* Skipping ImmSetCompositionString because different prototypes in VC6 and VC7 */ | |
1584 | |
1585 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1586 | |
1587 #if defined (HAVE_MS_WINDOWS) | |
1588 | |
1589 DWORD | |
1590 qxeImmGetCandidateListCount (HIMC arg1, LPDWORD lpdwListCount) | |
1591 { | |
1592 if (XEUNICODE_P) | |
1593 return ImmGetCandidateListCountW (arg1, lpdwListCount); | |
1594 else | |
1595 return ImmGetCandidateListCountA (arg1, lpdwListCount); | |
1596 } | |
1597 | |
1598 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1599 | |
1600 #if defined (HAVE_MS_WINDOWS) | |
1601 | |
1602 DWORD | |
1603 qxeImmGetCandidateList (HIMC arg1, DWORD deIndex, LPCANDIDATELIST arg3, DWORD dwBufLen) | |
1604 { | |
1605 if (XEUNICODE_P) | |
1606 return ImmGetCandidateListW (arg1, deIndex, arg3, dwBufLen); | |
1607 else | |
1608 return ImmGetCandidateListA (arg1, deIndex, arg3, dwBufLen); | |
1609 } | |
1610 | |
1611 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1612 | |
1613 #if defined (HAVE_MS_WINDOWS) | |
1614 | |
1615 DWORD | |
1616 qxeImmGetGuideLine (HIMC arg1, DWORD dwIndex, Extbyte * arg3, DWORD dwBufLen) | |
1617 { | |
1618 if (XEUNICODE_P) | |
1619 return ImmGetGuideLineW (arg1, dwIndex, (LPWSTR) arg3, dwBufLen); | |
1620 else | |
1621 return ImmGetGuideLineA (arg1, dwIndex, (LPSTR) arg3, dwBufLen); | |
1622 } | |
1623 | |
1624 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1625 | |
1626 #if defined (HAVE_MS_WINDOWS) | |
1627 | |
1628 /* Skipping ImmGetCompositionFont because split-sized LOGFONT */ | |
1629 | |
1630 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1631 | |
1632 #if defined (HAVE_MS_WINDOWS) | |
1633 | |
1634 /* Skipping ImmSetCompositionFont because split-sized LOGFONT */ | |
1635 | |
1636 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1637 | |
1638 #if defined (HAVE_MS_WINDOWS) | |
1639 | |
1640 /* NOTE: // split-simple REGISTERWORD */ | |
1641 BOOL | |
1642 qxeImmConfigureIME (HKL arg1, HWND arg2, DWORD arg3, LPVOID arg4) | |
1643 { | |
1644 if (XEUNICODE_P) | |
1645 return ImmConfigureIMEW (arg1, arg2, arg3, arg4); | |
1646 else | |
1647 return ImmConfigureIMEA (arg1, arg2, arg3, arg4); | |
1648 } | |
1649 | |
1650 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1651 | |
1652 #if defined (HAVE_MS_WINDOWS) | |
1653 | |
1654 /* NOTE: // strings of various sorts */ | |
1655 LRESULT | |
1656 qxeImmEscape (HKL arg1, HIMC arg2, UINT arg3, LPVOID arg4) | |
1657 { | |
1658 if (XEUNICODE_P) | |
1659 return ImmEscapeW (arg1, arg2, arg3, arg4); | |
1660 else | |
1661 return ImmEscapeA (arg1, arg2, arg3, arg4); | |
1662 } | |
1663 | |
1664 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1665 | |
1666 #if defined (HAVE_MS_WINDOWS) | |
1667 | |
1668 DWORD | |
1669 qxeImmGetConversionList (HKL arg1, HIMC arg2, const Extbyte * arg3, LPCANDIDATELIST arg4, DWORD dwBufLen, UINT uFlag) | |
1670 { | |
1671 if (XEUNICODE_P) | |
1672 return ImmGetConversionListW (arg1, arg2, (LPCWSTR) arg3, arg4, dwBufLen, uFlag); | |
1673 else | |
1674 return ImmGetConversionListA (arg1, arg2, (LPCSTR) arg3, arg4, dwBufLen, uFlag); | |
1675 } | |
1676 | |
1677 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1678 | |
1679 #if defined (HAVE_MS_WINDOWS) | |
1680 | |
1681 BOOL | |
1682 qxeImmIsUIMessage (HWND arg1, UINT arg2, WPARAM arg3, LPARAM arg4) | |
1683 { | |
1684 if (XEUNICODE_P) | |
1685 return ImmIsUIMessageW (arg1, arg2, arg3, arg4); | |
1686 else | |
1687 return ImmIsUIMessageA (arg1, arg2, arg3, arg4); | |
1688 } | |
1689 | |
1690 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1691 | |
1692 #if defined (HAVE_MS_WINDOWS) | |
1693 | |
1694 BOOL | |
1695 qxeImmRegisterWord (HKL arg1, const Extbyte * lpszReading, DWORD arg3, const Extbyte * lpszRegister) | |
1696 { | |
1697 if (XEUNICODE_P) | |
1698 return ImmRegisterWordW (arg1, (LPCWSTR) lpszReading, arg3, (LPCWSTR) lpszRegister); | |
1699 else | |
1700 return ImmRegisterWordA (arg1, (LPCSTR) lpszReading, arg3, (LPCSTR) lpszRegister); | |
1701 } | |
1702 | |
1703 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1704 | |
1705 #if defined (HAVE_MS_WINDOWS) | |
1706 | |
1707 BOOL | |
1708 qxeImmUnregisterWord (HKL arg1, const Extbyte * lpszReading, DWORD arg3, const Extbyte * lpszUnregister) | |
1709 { | |
1710 if (XEUNICODE_P) | |
1711 return ImmUnregisterWordW (arg1, (LPCWSTR) lpszReading, arg3, (LPCWSTR) lpszUnregister); | |
1712 else | |
1713 return ImmUnregisterWordA (arg1, (LPCSTR) lpszReading, arg3, (LPCSTR) lpszUnregister); | |
1714 } | |
1715 | |
1716 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1717 | |
1718 #if defined (HAVE_MS_WINDOWS) | |
1719 | |
1720 /* Error if ImmGetRegisterWordStyle used: split-sized STYLEBUF */ | |
1721 | |
1722 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1723 | |
1724 #if defined (HAVE_MS_WINDOWS) | |
1725 | |
1726 UINT | |
1727 qxeImmEnumRegisterWord (HKL arg1, REGISTERWORDENUMPROCW arg2, const Extbyte * lpszReading, DWORD arg4, const Extbyte * lpszRegister, LPVOID arg6) | |
1728 { | |
1729 if (XEUNICODE_P) | |
1730 return ImmEnumRegisterWordW (arg1, arg2, (LPCWSTR) lpszReading, arg4, (LPCWSTR) lpszRegister, arg6); | |
1731 else | |
1732 return ImmEnumRegisterWordA (arg1, (REGISTERWORDENUMPROCA) arg2, (LPCSTR) lpszReading, arg4, (LPCSTR) lpszRegister, arg6); | |
1733 } | |
1734 | |
1735 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1736 | |
1737 #if defined (HAVE_MS_WINDOWS) | |
1738 | |
1739 /* Error if ImmGetImeMenuItems used: split-sized IMEMENUITEMINFO */ | |
1740 | |
1741 #endif /* defined (HAVE_MS_WINDOWS) */ | |
1742 | |
1743 | |
1744 /*----------------------------------------------------------------------*/ | |
1745 /* Processing file MMSYSTEM.H */ | |
1746 /*----------------------------------------------------------------------*/ | |
1747 | |
1748 BOOL | |
1749 qxesndPlaySound (const Extbyte * pszSound, UINT fuSound) | |
1750 { | |
1751 if (XEUNICODE_P) | |
1752 return sndPlaySoundW ((LPCWSTR) pszSound, fuSound); | |
1753 else | |
1754 return sndPlaySoundA ((LPCSTR) pszSound, fuSound); | |
1755 } | |
1756 | |
1757 BOOL | |
1758 qxePlaySound (const Extbyte * pszSound, HMODULE hmod, DWORD fdwSound) | |
1759 { | |
1760 if (XEUNICODE_P) | |
1761 return PlaySoundW ((LPCWSTR) pszSound, hmod, fdwSound); | |
1762 else | |
1763 return PlaySoundA ((LPCSTR) pszSound, hmod, fdwSound); | |
1764 } | |
1765 | |
1766 /* Error if waveOutGetDevCaps used: split-sized LPWAVEOUTCAPS */ | |
1767 | |
1768 MMRESULT | |
1769 qxewaveOutGetErrorText (MMRESULT mmrError, Extbyte * pszText, UINT cchText) | |
1770 { | |
1771 if (XEUNICODE_P) | |
1772 return waveOutGetErrorTextW (mmrError, (LPWSTR) pszText, cchText); | |
1773 else | |
1774 return waveOutGetErrorTextA (mmrError, (LPSTR) pszText, cchText); | |
1775 } | |
1776 | |
1777 /* Error if waveInGetDevCaps used: split-sized LPWAVEINCAPS */ | |
1778 | |
1779 MMRESULT | |
1780 qxewaveInGetErrorText (MMRESULT mmrError, Extbyte * pszText, UINT cchText) | |
1781 { | |
1782 if (XEUNICODE_P) | |
1783 return waveInGetErrorTextW (mmrError, (LPWSTR) pszText, cchText); | |
1784 else | |
1785 return waveInGetErrorTextA (mmrError, (LPSTR) pszText, cchText); | |
1786 } | |
1787 | |
1788 /* Error if midiOutGetDevCaps used: split-sized LPMIDIOUTCAPS */ | |
1789 | |
1790 MMRESULT | |
1791 qxemidiOutGetErrorText (MMRESULT mmrError, Extbyte * pszText, UINT cchText) | |
1792 { | |
1793 if (XEUNICODE_P) | |
1794 return midiOutGetErrorTextW (mmrError, (LPWSTR) pszText, cchText); | |
1795 else | |
1796 return midiOutGetErrorTextA (mmrError, (LPSTR) pszText, cchText); | |
1797 } | |
1798 | |
1799 /* Error if midiInGetDevCaps used: split-sized LPMIDIOUTCAPS */ | |
1800 | |
1801 MMRESULT | |
1802 qxemidiInGetErrorText (MMRESULT mmrError, Extbyte * pszText, UINT cchText) | |
1803 { | |
1804 if (XEUNICODE_P) | |
1805 return midiInGetErrorTextW (mmrError, (LPWSTR) pszText, cchText); | |
1806 else | |
1807 return midiInGetErrorTextA (mmrError, (LPSTR) pszText, cchText); | |
1808 } | |
1809 | |
1810 /* Error if auxGetDevCaps used: split-sized LPAUXCAPS */ | |
1811 | |
1812 /* Error if mixerGetDevCaps used: split-sized LPMIXERCAPS */ | |
1813 | |
1814 /* Error if mixerGetLineInfo used: split-sized LPMIXERLINE */ | |
1815 | |
1816 /* Error if mixerGetLineControls used: split-sized LPMIXERCONTROL */ | |
1817 | |
1818 /* Error if mixerGetControlDetails used: split-sized LPMIXERCONTROL in LPMIXERLINECONTROLS in LPMIXERCONTROLDETAILS */ | |
1819 | |
1820 /* Error if joyGetDevCaps used: split-sized LPJOYCAPS */ | |
1821 | |
1822 FOURCC | |
1823 qxemmioStringToFOURCC (const Extbyte * sz, UINT uFlags) | |
1824 { | |
1825 if (XEUNICODE_P) | |
1826 return mmioStringToFOURCCW ((LPCWSTR) sz, uFlags); | |
1827 else | |
1828 return mmioStringToFOURCCA ((LPCSTR) sz, uFlags); | |
1829 } | |
1830 | |
1831 LPMMIOPROC | |
1832 qxemmioInstallIOProc (FOURCC fccIOProc, LPMMIOPROC pIOProc, DWORD dwFlags) | |
1833 { | |
1834 if (XEUNICODE_P) | |
1835 return mmioInstallIOProcW (fccIOProc, pIOProc, dwFlags); | |
1836 else | |
1837 return mmioInstallIOProcA (fccIOProc, pIOProc, dwFlags); | |
1838 } | |
1839 | |
1840 HMMIO | |
1841 qxemmioOpen (Extbyte * pszFileName, LPMMIOINFO pmmioinfo, DWORD fdwOpen) | |
1842 { | |
1843 if (XEUNICODE_P) | |
1844 return mmioOpenW ((LPWSTR) pszFileName, pmmioinfo, fdwOpen); | |
1845 else | |
1846 return mmioOpenA ((LPSTR) pszFileName, pmmioinfo, fdwOpen); | |
1847 } | |
1848 | |
1849 MMRESULT | |
1850 qxemmioRename (const Extbyte * pszFileName, const Extbyte * pszNewFileName, LPCMMIOINFO pmmioinfo, DWORD fdwRename) | |
1851 { | |
1852 if (XEUNICODE_P) | |
1853 return mmioRenameW ((LPCWSTR) pszFileName, (LPCWSTR) pszNewFileName, pmmioinfo, fdwRename); | |
1854 else | |
1855 return mmioRenameA ((LPCSTR) pszFileName, (LPCSTR) pszNewFileName, pmmioinfo, fdwRename); | |
1856 } | |
1857 | |
1858 MCIERROR | |
1859 qxemciSendCommand (MCIDEVICEID mciId, UINT uMsg, DWORD dwParam1, DWORD dwParam2) | |
1860 { | |
1861 if (XEUNICODE_P) | |
1862 return mciSendCommandW (mciId, uMsg, dwParam1, dwParam2); | |
1863 else | |
1864 return mciSendCommandA (mciId, uMsg, dwParam1, dwParam2); | |
1865 } | |
1866 | |
1867 MCIERROR | |
1868 qxemciSendString (const Extbyte * lpstrCommand, Extbyte * lpstrReturnString, UINT uReturnLength, HWND hwndCallback) | |
1869 { | |
1870 if (XEUNICODE_P) | |
1871 return mciSendStringW ((LPCWSTR) lpstrCommand, (LPWSTR) lpstrReturnString, uReturnLength, hwndCallback); | |
1872 else | |
1873 return mciSendStringA ((LPCSTR) lpstrCommand, (LPSTR) lpstrReturnString, uReturnLength, hwndCallback); | |
1874 } | |
1875 | |
1876 MCIDEVICEID | |
1877 qxemciGetDeviceID (const Extbyte * pszDevice) | |
1878 { | |
1879 if (XEUNICODE_P) | |
1880 return mciGetDeviceIDW ((LPCWSTR) pszDevice); | |
1881 else | |
1882 return mciGetDeviceIDA ((LPCSTR) pszDevice); | |
1883 } | |
1884 | |
1885 #if !defined (MINGW) | |
1886 | |
1887 /* Error if mciGetDeviceIDFromElementID used: missing from Win98se version of ADVAPI32.dll */ | |
1888 | |
1889 #endif /* !defined (MINGW) */ | |
1890 | |
1891 BOOL | |
1892 qxemciGetErrorString (MCIERROR mcierr, Extbyte * pszText, UINT cchText) | |
1893 { | |
1894 if (XEUNICODE_P) | |
1895 return mciGetErrorStringW (mcierr, (LPWSTR) pszText, cchText); | |
1896 else | |
1897 return mciGetErrorStringA (mcierr, (LPSTR) pszText, cchText); | |
1898 } | |
13 | 1899 |
14 | 1900 |
15 /*----------------------------------------------------------------------*/ | 1901 /*----------------------------------------------------------------------*/ |
16 /* Processing file WINCON.H */ | 1902 /* Processing file WINCON.H */ |
17 /*----------------------------------------------------------------------*/ | 1903 /*----------------------------------------------------------------------*/ |
126 return WriteConsoleA (hConsoleOutput, lpBuffer, nNumberOfCharsToWrite, lpNumberOfCharsWritten, lpReserved); | 2012 return WriteConsoleA (hConsoleOutput, lpBuffer, nNumberOfCharsToWrite, lpNumberOfCharsWritten, lpReserved); |
127 } | 2013 } |
128 | 2014 |
129 | 2015 |
130 /*----------------------------------------------------------------------*/ | 2016 /*----------------------------------------------------------------------*/ |
131 /* Processing file SHELLAPI.H */ | |
132 /*----------------------------------------------------------------------*/ | |
133 | |
134 UINT | |
135 qxeDragQueryFile (HDROP arg1, UINT arg2, Extbyte * arg3, UINT arg4) | |
136 { | |
137 if (XEUNICODE_P) | |
138 return DragQueryFileW (arg1, arg2, (LPWSTR) arg3, arg4); | |
139 else | |
140 return DragQueryFileA (arg1, arg2, (LPSTR) arg3, arg4); | |
141 } | |
142 | |
143 HINSTANCE | |
144 qxeShellExecute (HWND hwnd, const Extbyte * lpOperation, const Extbyte * lpFile, const Extbyte * lpParameters, const Extbyte * lpDirectory, INT nShowCmd) | |
145 { | |
146 if (XEUNICODE_P) | |
147 return ShellExecuteW (hwnd, (LPCWSTR) lpOperation, (LPCWSTR) lpFile, (LPCWSTR) lpParameters, (LPCWSTR) lpDirectory, nShowCmd); | |
148 else | |
149 return ShellExecuteA (hwnd, (LPCSTR) lpOperation, (LPCSTR) lpFile, (LPCSTR) lpParameters, (LPCSTR) lpDirectory, nShowCmd); | |
150 } | |
151 | |
152 HINSTANCE | |
153 qxeFindExecutable (const Extbyte * lpFile, const Extbyte * lpDirectory, Extbyte * lpResult) | |
154 { | |
155 if (XEUNICODE_P) | |
156 return FindExecutableW ((LPCWSTR) lpFile, (LPCWSTR) lpDirectory, (LPWSTR) lpResult); | |
157 else | |
158 return FindExecutableA ((LPCSTR) lpFile, (LPCSTR) lpDirectory, (LPSTR) lpResult); | |
159 } | |
160 | |
161 /* Error if CommandLineToArgv used: Unicode-only */ | |
162 | |
163 INT | |
164 qxeShellAbout (HWND hWnd, const Extbyte * szApp, const Extbyte * szOtherStuff, HICON hIcon) | |
165 { | |
166 if (XEUNICODE_P) | |
167 return ShellAboutW (hWnd, (LPCWSTR) szApp, (LPCWSTR) szOtherStuff, hIcon); | |
168 else | |
169 return ShellAboutA (hWnd, (LPCSTR) szApp, (LPCSTR) szOtherStuff, hIcon); | |
170 } | |
171 | |
172 HICON | |
173 qxeExtractAssociatedIcon (HINSTANCE hInst, Extbyte * lpIconPath, LPWORD lpiIcon) | |
174 { | |
175 if (XEUNICODE_P) | |
176 return ExtractAssociatedIconW (hInst, (LPWSTR) lpIconPath, lpiIcon); | |
177 else | |
178 return ExtractAssociatedIconA (hInst, (LPSTR) lpIconPath, lpiIcon); | |
179 } | |
180 | |
181 HICON | |
182 qxeExtractIcon (HINSTANCE hInst, const Extbyte * lpszExeFileName, UINT nIconIndex) | |
183 { | |
184 if (XEUNICODE_P) | |
185 return ExtractIconW (hInst, (LPCWSTR) lpszExeFileName, nIconIndex); | |
186 else | |
187 return ExtractIconA (hInst, (LPCSTR) lpszExeFileName, nIconIndex); | |
188 } | |
189 | |
190 #if !defined (CYGWIN_HEADERS) | |
191 | |
192 /* NOTE: NT 4.0+ only */ | |
193 DWORD | |
194 qxeDoEnvironmentSubst (Extbyte * szString, UINT cbString) | |
195 { | |
196 if (XEUNICODE_P) | |
197 return DoEnvironmentSubstW ((LPWSTR) szString, cbString); | |
198 else | |
199 return DoEnvironmentSubstA ((LPSTR) szString, cbString); | |
200 } | |
201 | |
202 #endif /* !defined (CYGWIN_HEADERS) */ | |
203 | |
204 /* Error if FindEnvironmentString used: causes link error; NT 4.0+ only */ | |
205 | |
206 /* Skipping ExtractIconEx because NT 4.0+ only, error in Cygwin prototype */ | |
207 | |
208 /* NOTE: NT 4.0+ only */ | |
209 int | |
210 qxeSHFileOperation (LPSHFILEOPSTRUCTW lpFileOp) | |
211 { | |
212 if (XEUNICODE_P) | |
213 return SHFileOperationW (lpFileOp); | |
214 else | |
215 return SHFileOperationA ((LPSHFILEOPSTRUCTA) lpFileOp); | |
216 } | |
217 | |
218 /* NOTE: NT 4.0+ only */ | |
219 BOOL | |
220 qxeShellExecuteEx (LPSHELLEXECUTEINFOW lpExecInfo) | |
221 { | |
222 if (XEUNICODE_P) | |
223 return ShellExecuteExW (lpExecInfo); | |
224 else | |
225 return ShellExecuteExA ((LPSHELLEXECUTEINFOA) lpExecInfo); | |
226 } | |
227 | |
228 /* Error if WinExecError used: causes link error; NT 4.0+ only */ | |
229 | |
230 #if !defined (CYGWIN_HEADERS) | |
231 | |
232 /* NOTE: NT 4.0+ only */ | |
233 HRESULT | |
234 qxeSHQueryRecycleBin (const Extbyte * pszRootPath, LPSHQUERYRBINFO pSHQueryRBInfo) | |
235 { | |
236 if (XEUNICODE_P) | |
237 return SHQueryRecycleBinW ((LPCWSTR) pszRootPath, pSHQueryRBInfo); | |
238 else | |
239 return SHQueryRecycleBinA ((LPCSTR) pszRootPath, pSHQueryRBInfo); | |
240 } | |
241 | |
242 #endif /* !defined (CYGWIN_HEADERS) */ | |
243 | |
244 #if !defined (CYGWIN_HEADERS) | |
245 | |
246 /* NOTE: NT 4.0+ only */ | |
247 HRESULT | |
248 qxeSHEmptyRecycleBin (HWND hwnd, const Extbyte * pszRootPath, DWORD dwFlags) | |
249 { | |
250 if (XEUNICODE_P) | |
251 return SHEmptyRecycleBinW (hwnd, (LPCWSTR) pszRootPath, dwFlags); | |
252 else | |
253 return SHEmptyRecycleBinA (hwnd, (LPCSTR) pszRootPath, dwFlags); | |
254 } | |
255 | |
256 #endif /* !defined (CYGWIN_HEADERS) */ | |
257 | |
258 /* Error if Shell_NotifyIcon used: split-sized NOTIFYICONDATA, NT 4.0+ only */ | |
259 | |
260 /* Skipping SHGetFileInfo because split-sized SHFILEINFO, NT 4.0+ only */ | |
261 | |
262 /* Error if SHGetDiskFreeSpace used: causes link error; NT 4.0+ only */ | |
263 | |
264 #if !defined (CYGWIN_HEADERS) | |
265 | |
266 /* NOTE: NT 4.0+ only */ | |
267 BOOL | |
268 qxeSHGetNewLinkInfo (const Extbyte * pszLinkTo, const Extbyte * pszDir, Extbyte * pszName, BOOL * pfMustCopy, UINT uFlags) | |
269 { | |
270 if (XEUNICODE_P) | |
271 return SHGetNewLinkInfoW ((LPCWSTR) pszLinkTo, (LPCWSTR) pszDir, (LPWSTR) pszName, pfMustCopy, uFlags); | |
272 else | |
273 return SHGetNewLinkInfoA ((LPCSTR) pszLinkTo, (LPCSTR) pszDir, (LPSTR) pszName, pfMustCopy, uFlags); | |
274 } | |
275 | |
276 #endif /* !defined (CYGWIN_HEADERS) */ | |
277 | |
278 #if !defined (CYGWIN_HEADERS) | |
279 | |
280 /* NOTE: NT 4.0+ only */ | |
281 BOOL | |
282 qxeSHInvokePrinterCommand (HWND hwnd, UINT uAction, const Extbyte * lpBuf1, const Extbyte * lpBuf2, BOOL fModal) | |
283 { | |
284 if (XEUNICODE_P) | |
285 return SHInvokePrinterCommandW (hwnd, uAction, (LPCWSTR) lpBuf1, (LPCWSTR) lpBuf2, fModal); | |
286 else | |
287 return SHInvokePrinterCommandA (hwnd, uAction, (LPCSTR) lpBuf1, (LPCSTR) lpBuf2, fModal); | |
288 } | |
289 | |
290 #endif /* !defined (CYGWIN_HEADERS) */ | |
291 | |
292 | |
293 /*----------------------------------------------------------------------*/ | |
294 /* Processing file WINSPOOL.H */ | |
295 /*----------------------------------------------------------------------*/ | |
296 | |
297 #if defined (HAVE_MS_WINDOWS) | |
298 | |
299 /* NOTE: #### problems with DEVMODE pointer in PRINTER_INFO_2 */ | |
300 BOOL | |
301 qxeEnumPrinters (DWORD Flags, Extbyte * Name, DWORD Level, LPBYTE pPrinterEnum, DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned) | |
302 { | |
303 if (XEUNICODE_P) | |
304 return EnumPrintersW (Flags, (LPWSTR) Name, Level, pPrinterEnum, cbBuf, pcbNeeded, pcReturned); | |
305 else | |
306 return EnumPrintersA (Flags, (LPSTR) Name, Level, pPrinterEnum, cbBuf, pcbNeeded, pcReturned); | |
307 } | |
308 | |
309 #endif /* defined (HAVE_MS_WINDOWS) */ | |
310 | |
311 #if defined (HAVE_MS_WINDOWS) | |
312 | |
313 /* Skipping OpenPrinter because split-sized DEVMODE pointer in split PRINTER_DEFAULTS */ | |
314 | |
315 #endif /* defined (HAVE_MS_WINDOWS) */ | |
316 | |
317 #if defined (HAVE_MS_WINDOWS) | |
318 | |
319 /* Error if ResetPrinter used: split-sized DEVMODE pointer in split PRINTER_DEFAULTS */ | |
320 | |
321 #endif /* defined (HAVE_MS_WINDOWS) */ | |
322 | |
323 #if defined (HAVE_MS_WINDOWS) | |
324 | |
325 /* Error if SetJob used: split-sized DEVMODE pointer in split JOB_INFO_2 */ | |
326 | |
327 #endif /* defined (HAVE_MS_WINDOWS) */ | |
328 | |
329 #if defined (HAVE_MS_WINDOWS) | |
330 | |
331 /* Error if GetJob used: split-sized DEVMODE pointer in split JOB_INFO_2 */ | |
332 | |
333 #endif /* defined (HAVE_MS_WINDOWS) */ | |
334 | |
335 #if defined (HAVE_MS_WINDOWS) | |
336 | |
337 /* Error if EnumJobs used: split-sized DEVMODE pointer in split JOB_INFO_2 */ | |
338 | |
339 #endif /* defined (HAVE_MS_WINDOWS) */ | |
340 | |
341 #if defined (HAVE_MS_WINDOWS) | |
342 | |
343 /* Error if AddPrinter used: split-sized DEVMODE pointer in split PRINTER_INFO_2 */ | |
344 | |
345 #endif /* defined (HAVE_MS_WINDOWS) */ | |
346 | |
347 #if defined (HAVE_MS_WINDOWS) | |
348 | |
349 /* Error if SetPrinter used: split-sized DEVMODE pointer in split PRINTER_INFO_2 */ | |
350 | |
351 #endif /* defined (HAVE_MS_WINDOWS) */ | |
352 | |
353 #if defined (HAVE_MS_WINDOWS) | |
354 | |
355 /* Error if GetPrinter used: split-sized DEVMODE pointer in split PRINTER_INFO_2 */ | |
356 | |
357 #endif /* defined (HAVE_MS_WINDOWS) */ | |
358 | |
359 #if defined (HAVE_MS_WINDOWS) | |
360 | |
361 /* Error if AddPrinterDriver used: not used, complicated interface with split structures */ | |
362 | |
363 #endif /* defined (HAVE_MS_WINDOWS) */ | |
364 | |
365 #if defined (HAVE_MS_WINDOWS) | |
366 | |
367 /* Error if AddPrinterDriverEx used: not used, complicated interface with split structures */ | |
368 | |
369 #endif /* defined (HAVE_MS_WINDOWS) */ | |
370 | |
371 #if defined (HAVE_MS_WINDOWS) | |
372 | |
373 /* Error if EnumPrinterDrivers used: not used, complicated interface with split structures */ | |
374 | |
375 #endif /* defined (HAVE_MS_WINDOWS) */ | |
376 | |
377 #if defined (HAVE_MS_WINDOWS) | |
378 | |
379 /* Error if GetPrinterDriver used: not used, complicated interface with split structures */ | |
380 | |
381 #endif /* defined (HAVE_MS_WINDOWS) */ | |
382 | |
383 #if defined (HAVE_MS_WINDOWS) | |
384 | |
385 /* Error if GetPrinterDriverDirectory used: not used, complicated interface with split structures */ | |
386 | |
387 #endif /* defined (HAVE_MS_WINDOWS) */ | |
388 | |
389 #if defined (HAVE_MS_WINDOWS) | |
390 | |
391 /* Error if DeletePrinterDriver used: not used, complicated interface with split structures */ | |
392 | |
393 #endif /* defined (HAVE_MS_WINDOWS) */ | |
394 | |
395 #if defined (HAVE_MS_WINDOWS) | |
396 | |
397 /* Error if DeletePrinterDriverEx used: not used, complicated interface with split structures */ | |
398 | |
399 #endif /* defined (HAVE_MS_WINDOWS) */ | |
400 | |
401 #if defined (HAVE_MS_WINDOWS) | |
402 | |
403 /* Error if AddPerMachineConnection used: not used, complicated interface with split structures */ | |
404 | |
405 #endif /* defined (HAVE_MS_WINDOWS) */ | |
406 | |
407 #if defined (HAVE_MS_WINDOWS) | |
408 | |
409 /* Error if DeletePerMachineConnection used: not used, complicated interface with split structures */ | |
410 | |
411 #endif /* defined (HAVE_MS_WINDOWS) */ | |
412 | |
413 #if defined (HAVE_MS_WINDOWS) | |
414 | |
415 /* Error if EnumPerMachineConnections used: not used, complicated interface with split structures */ | |
416 | |
417 #endif /* defined (HAVE_MS_WINDOWS) */ | |
418 | |
419 #if defined (HAVE_MS_WINDOWS) | |
420 | |
421 /* Error if AddPrintProcessor used: not used, complicated interface with split structures */ | |
422 | |
423 #endif /* defined (HAVE_MS_WINDOWS) */ | |
424 | |
425 #if defined (HAVE_MS_WINDOWS) | |
426 | |
427 /* Error if EnumPrintProcessors used: not used, complicated interface with split structures */ | |
428 | |
429 #endif /* defined (HAVE_MS_WINDOWS) */ | |
430 | |
431 #if defined (HAVE_MS_WINDOWS) | |
432 | |
433 /* Error if GetPrintProcessorDirectory used: not used, complicated interface with split structures */ | |
434 | |
435 #endif /* defined (HAVE_MS_WINDOWS) */ | |
436 | |
437 #if defined (HAVE_MS_WINDOWS) | |
438 | |
439 /* Error if EnumPrintProcessorDatatypes used: not used, complicated interface with split structures */ | |
440 | |
441 #endif /* defined (HAVE_MS_WINDOWS) */ | |
442 | |
443 #if defined (HAVE_MS_WINDOWS) | |
444 | |
445 /* Error if DeletePrintProcessor used: not used, complicated interface with split structures */ | |
446 | |
447 #endif /* defined (HAVE_MS_WINDOWS) */ | |
448 | |
449 #if defined (HAVE_MS_WINDOWS) | |
450 | |
451 /* Error if StartDocPrinter used: not used, complicated interface with split structures */ | |
452 | |
453 #endif /* defined (HAVE_MS_WINDOWS) */ | |
454 | |
455 #if defined (HAVE_MS_WINDOWS) | |
456 | |
457 /* Error if AddJob used: not used, complicated interface with split structures */ | |
458 | |
459 #endif /* defined (HAVE_MS_WINDOWS) */ | |
460 | |
461 #if defined (HAVE_MS_WINDOWS) | |
462 | |
463 /* Skipping DocumentProperties because split-sized DEVMODE, error in Cygwin prototype */ | |
464 | |
465 #endif /* defined (HAVE_MS_WINDOWS) */ | |
466 | |
467 #if defined (HAVE_MS_WINDOWS) | |
468 | |
469 /* Error if AdvancedDocumentProperties used: not used, complicated interface with split structures */ | |
470 | |
471 #endif /* defined (HAVE_MS_WINDOWS) */ | |
472 | |
473 #if defined (HAVE_MS_WINDOWS) | |
474 | |
475 /* Error if GetPrinterData used: not used, complicated interface with split structures */ | |
476 | |
477 #endif /* defined (HAVE_MS_WINDOWS) */ | |
478 | |
479 #if defined (HAVE_MS_WINDOWS) | |
480 | |
481 /* Error if GetPrinterDataEx used: not used, complicated interface with split structures */ | |
482 | |
483 #endif /* defined (HAVE_MS_WINDOWS) */ | |
484 | |
485 #if defined (HAVE_MS_WINDOWS) | |
486 | |
487 /* Error if EnumPrinterData used: not used, complicated interface with split structures */ | |
488 | |
489 #endif /* defined (HAVE_MS_WINDOWS) */ | |
490 | |
491 #if defined (HAVE_MS_WINDOWS) | |
492 | |
493 /* Error if EnumPrinterDataEx used: not used, complicated interface with split structures */ | |
494 | |
495 #endif /* defined (HAVE_MS_WINDOWS) */ | |
496 | |
497 #if defined (HAVE_MS_WINDOWS) | |
498 | |
499 /* Error if EnumPrinterKey used: not used, complicated interface with split structures */ | |
500 | |
501 #endif /* defined (HAVE_MS_WINDOWS) */ | |
502 | |
503 #if defined (HAVE_MS_WINDOWS) | |
504 | |
505 /* Error if SetPrinterData used: not used, complicated interface with split structures */ | |
506 | |
507 #endif /* defined (HAVE_MS_WINDOWS) */ | |
508 | |
509 #if defined (HAVE_MS_WINDOWS) | |
510 | |
511 /* Error if SetPrinterDataEx used: not used, complicated interface with split structures */ | |
512 | |
513 #endif /* defined (HAVE_MS_WINDOWS) */ | |
514 | |
515 #if defined (HAVE_MS_WINDOWS) | |
516 | |
517 /* Error if DeletePrinterData used: not used, complicated interface with split structures */ | |
518 | |
519 #endif /* defined (HAVE_MS_WINDOWS) */ | |
520 | |
521 #if defined (HAVE_MS_WINDOWS) | |
522 | |
523 /* Error if DeletePrinterDataEx used: not used, complicated interface with split structures */ | |
524 | |
525 #endif /* defined (HAVE_MS_WINDOWS) */ | |
526 | |
527 #if defined (HAVE_MS_WINDOWS) | |
528 | |
529 /* Error if DeletePrinterKey used: not used, complicated interface with split structures */ | |
530 | |
531 #endif /* defined (HAVE_MS_WINDOWS) */ | |
532 | |
533 #if defined (HAVE_MS_WINDOWS) | |
534 | |
535 /* Error if PrinterMessageBox used: not used, complicated interface with split structures */ | |
536 | |
537 #endif /* defined (HAVE_MS_WINDOWS) */ | |
538 | |
539 #if defined (HAVE_MS_WINDOWS) | |
540 | |
541 /* Error if AddForm used: not used, complicated interface with split structures */ | |
542 | |
543 #endif /* defined (HAVE_MS_WINDOWS) */ | |
544 | |
545 #if defined (HAVE_MS_WINDOWS) | |
546 | |
547 /* Error if DeleteForm used: not used, complicated interface with split structures */ | |
548 | |
549 #endif /* defined (HAVE_MS_WINDOWS) */ | |
550 | |
551 #if defined (HAVE_MS_WINDOWS) | |
552 | |
553 /* Error if GetForm used: not used, complicated interface with split structures */ | |
554 | |
555 #endif /* defined (HAVE_MS_WINDOWS) */ | |
556 | |
557 #if defined (HAVE_MS_WINDOWS) | |
558 | |
559 /* Error if SetForm used: not used, complicated interface with split structures */ | |
560 | |
561 #endif /* defined (HAVE_MS_WINDOWS) */ | |
562 | |
563 #if defined (HAVE_MS_WINDOWS) | |
564 | |
565 /* Error if EnumForms used: not used, complicated interface with split structures */ | |
566 | |
567 #endif /* defined (HAVE_MS_WINDOWS) */ | |
568 | |
569 #if defined (HAVE_MS_WINDOWS) | |
570 | |
571 /* Error if EnumMonitors used: not used, complicated interface with split structures */ | |
572 | |
573 #endif /* defined (HAVE_MS_WINDOWS) */ | |
574 | |
575 #if defined (HAVE_MS_WINDOWS) | |
576 | |
577 /* Error if AddMonitor used: not used, complicated interface with split structures */ | |
578 | |
579 #endif /* defined (HAVE_MS_WINDOWS) */ | |
580 | |
581 #if defined (HAVE_MS_WINDOWS) | |
582 | |
583 /* Error if DeleteMonitor used: not used, complicated interface with split structures */ | |
584 | |
585 #endif /* defined (HAVE_MS_WINDOWS) */ | |
586 | |
587 #if defined (HAVE_MS_WINDOWS) | |
588 | |
589 /* Error if EnumPorts used: not used, complicated interface with split structures */ | |
590 | |
591 #endif /* defined (HAVE_MS_WINDOWS) */ | |
592 | |
593 #if defined (HAVE_MS_WINDOWS) | |
594 | |
595 /* Error if AddPort used: not used, complicated interface with split structures */ | |
596 | |
597 #endif /* defined (HAVE_MS_WINDOWS) */ | |
598 | |
599 #if defined (HAVE_MS_WINDOWS) | |
600 | |
601 /* Error if ConfigurePort used: not used, complicated interface with split structures */ | |
602 | |
603 #endif /* defined (HAVE_MS_WINDOWS) */ | |
604 | |
605 #if defined (HAVE_MS_WINDOWS) | |
606 | |
607 /* Error if DeletePort used: not used, complicated interface with split structures */ | |
608 | |
609 #endif /* defined (HAVE_MS_WINDOWS) */ | |
610 | |
611 #if defined (HAVE_MS_WINDOWS) | |
612 | |
613 /* Error if XcvData used: not used, complicated interface with split structures */ | |
614 | |
615 #endif /* defined (HAVE_MS_WINDOWS) */ | |
616 | |
617 #if defined (HAVE_MS_WINDOWS) | |
618 | |
619 /* Error if SetPort used: not used, complicated interface with split structures */ | |
620 | |
621 #endif /* defined (HAVE_MS_WINDOWS) */ | |
622 | |
623 #if defined (HAVE_MS_WINDOWS) | |
624 | |
625 /* Error if AddPrinterConnection used: not used, complicated interface with split structures */ | |
626 | |
627 #endif /* defined (HAVE_MS_WINDOWS) */ | |
628 | |
629 #if defined (HAVE_MS_WINDOWS) | |
630 | |
631 /* Error if DeletePrinterConnection used: not used, complicated interface with split structures */ | |
632 | |
633 #endif /* defined (HAVE_MS_WINDOWS) */ | |
634 | |
635 #if defined (HAVE_MS_WINDOWS) | |
636 | |
637 /* Error if AddPrintProvidor used: not used, complicated interface with split structures */ | |
638 | |
639 #endif /* defined (HAVE_MS_WINDOWS) */ | |
640 | |
641 #if defined (HAVE_MS_WINDOWS) | |
642 | |
643 /* Error if DeletePrintProvidor used: not used, complicated interface with split structures */ | |
644 | |
645 #endif /* defined (HAVE_MS_WINDOWS) */ | |
646 | |
647 #if defined (HAVE_MS_WINDOWS) | |
648 | |
649 /* Error if SetPrinterHTMLView used: not used, complicated interface with split structures */ | |
650 | |
651 #endif /* defined (HAVE_MS_WINDOWS) */ | |
652 | |
653 #if defined (HAVE_MS_WINDOWS) | |
654 | |
655 /* Error if GetPrinterHTMLView used: not used, complicated interface with split structures */ | |
656 | |
657 #endif /* defined (HAVE_MS_WINDOWS) */ | |
658 | |
659 | |
660 /*----------------------------------------------------------------------*/ | |
661 /* Processing file WINNETWK.H */ | 2017 /* Processing file WINNETWK.H */ |
662 /*----------------------------------------------------------------------*/ | 2018 /*----------------------------------------------------------------------*/ |
663 | 2019 |
664 #if defined (HAVE_MS_WINDOWS) | 2020 #if defined (HAVE_MS_WINDOWS) |
665 | 2021 |
883 | 2239 |
884 #endif /* defined (HAVE_MS_WINDOWS) */ | 2240 #endif /* defined (HAVE_MS_WINDOWS) */ |
885 | 2241 |
886 | 2242 |
887 /*----------------------------------------------------------------------*/ | 2243 /*----------------------------------------------------------------------*/ |
888 /* Processing file WINUSER.H */ | 2244 /* Processing file DDEML.H */ |
889 /*----------------------------------------------------------------------*/ | 2245 /*----------------------------------------------------------------------*/ |
890 | 2246 |
2247 UINT | |
2248 qxeDdeInitialize (LPDWORD pidInst, PFNCALLBACK pfnCallback, DWORD afCmd, DWORD ulRes) | |
2249 { | |
2250 if (XEUNICODE_P) | |
2251 return DdeInitializeW (pidInst, pfnCallback, afCmd, ulRes); | |
2252 else | |
2253 return DdeInitializeA (pidInst, pfnCallback, afCmd, ulRes); | |
2254 } | |
2255 | |
2256 /* Skipping DdeCreateStringHandle because error in Cygwin prototype */ | |
2257 | |
2258 DWORD | |
2259 qxeDdeQueryString (DWORD idInst, HSZ hsz, Extbyte * psz, DWORD cchMax, int iCodePage) | |
2260 { | |
2261 if (XEUNICODE_P) | |
2262 return DdeQueryStringW (idInst, hsz, (LPWSTR) psz, cchMax, iCodePage); | |
2263 else | |
2264 return DdeQueryStringA (idInst, hsz, (LPSTR) psz, cchMax, iCodePage); | |
2265 } | |
2266 | |
2267 | |
2268 /*----------------------------------------------------------------------*/ | |
2269 /* Processing file WINGDI.H */ | |
2270 /*----------------------------------------------------------------------*/ | |
2271 | |
891 int | 2272 int |
892 qxewvsprintf (Extbyte * arg1, const Extbyte * arg2, va_list arglist) | 2273 qxeAddFontResource (const Extbyte * arg1) |
893 { | 2274 { |
894 if (XEUNICODE_P) | 2275 if (XEUNICODE_P) |
895 return wvsprintfW ((LPWSTR) arg1, (LPCWSTR) arg2, arglist); | 2276 return AddFontResourceW ((LPCWSTR) arg1); |
896 else | 2277 else |
897 return wvsprintfA ((LPSTR) arg1, (LPCSTR) arg2, arglist); | 2278 return AddFontResourceA ((LPCSTR) arg1); |
898 } | 2279 } |
899 | 2280 |
900 HKL | 2281 HMETAFILE |
901 qxeLoadKeyboardLayout (const Extbyte * pwszKLID, UINT Flags) | 2282 qxeCopyMetaFile (HMETAFILE arg1, const Extbyte * arg2) |
902 { | 2283 { |
903 if (XEUNICODE_P) | 2284 if (XEUNICODE_P) |
904 return LoadKeyboardLayoutW ((LPCWSTR) pwszKLID, Flags); | 2285 return CopyMetaFileW (arg1, (LPCWSTR) arg2); |
905 else | 2286 else |
906 return LoadKeyboardLayoutA ((LPCSTR) pwszKLID, Flags); | 2287 return CopyMetaFileA (arg1, (LPCSTR) arg2); |
907 } | 2288 } |
908 | 2289 |
909 BOOL | 2290 /* Skipping CreateDC because split-sized DEVMODE */ |
910 qxeGetKeyboardLayoutName (Extbyte * pwszKLID) | 2291 |
911 { | 2292 /* Skipping CreateFontIndirect because split-sized LOGFONT */ |
912 if (XEUNICODE_P) | 2293 |
913 return GetKeyboardLayoutNameW ((LPWSTR) pwszKLID); | 2294 HFONT |
914 else | 2295 qxeCreateFont (int arg1, int arg2, int arg3, int arg4, int arg5, DWORD arg6, DWORD arg7, DWORD arg8, DWORD arg9, DWORD arg10, DWORD arg11, DWORD arg12, DWORD arg13, const Extbyte * arg14) |
915 return GetKeyboardLayoutNameA ((LPSTR) pwszKLID); | 2296 { |
916 } | 2297 if (XEUNICODE_P) |
917 | 2298 return CreateFontW (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, (LPCWSTR) arg14); |
918 /* Error if CreateDesktop used: split-sized LPDEVMODE */ | 2299 else |
919 | 2300 return CreateFontA (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, (LPCSTR) arg14); |
920 HDESK | 2301 } |
921 qxeOpenDesktop (Extbyte * lpszDesktop, DWORD dwFlags, BOOL fInherit, ACCESS_MASK dwDesiredAccess) | 2302 |
922 { | 2303 /* Skipping CreateIC because split-sized DEVMODE */ |
923 if (XEUNICODE_P) | 2304 |
924 return OpenDesktopW ((LPWSTR) lpszDesktop, dwFlags, fInherit, dwDesiredAccess); | 2305 HDC |
925 else | 2306 qxeCreateMetaFile (const Extbyte * arg1) |
926 return OpenDesktopA ((LPSTR) lpszDesktop, dwFlags, fInherit, dwDesiredAccess); | 2307 { |
927 } | 2308 if (XEUNICODE_P) |
928 | 2309 return CreateMetaFileW ((LPCWSTR) arg1); |
929 /* NOTE: // callback fun differs only in string pointer type */ | 2310 else |
930 BOOL | 2311 return CreateMetaFileA ((LPCSTR) arg1); |
931 qxeEnumDesktops (HWINSTA hwinsta, DESKTOPENUMPROCW lpEnumFunc, LPARAM lParam) | 2312 } |
932 { | 2313 |
933 if (XEUNICODE_P) | 2314 BOOL |
934 return EnumDesktopsW (hwinsta, lpEnumFunc, lParam); | 2315 qxeCreateScalableFontResource (DWORD arg1, const Extbyte * arg2, const Extbyte * arg3, const Extbyte * arg4) |
935 else | 2316 { |
936 return EnumDesktopsA (hwinsta, (DESKTOPENUMPROCA) lpEnumFunc, lParam); | 2317 if (XEUNICODE_P) |
937 } | 2318 return CreateScalableFontResourceW (arg1, (LPCWSTR) arg2, (LPCWSTR) arg3, (LPCWSTR) arg4); |
938 | 2319 else |
939 HWINSTA | 2320 return CreateScalableFontResourceA (arg1, (LPCSTR) arg2, (LPCSTR) arg3, (LPCSTR) arg4); |
940 qxeCreateWindowStation (Extbyte * lpwinsta, DWORD dwReserved, ACCESS_MASK dwDesiredAccess, LPSECURITY_ATTRIBUTES lpsa) | 2321 } |
941 { | 2322 |
942 if (XEUNICODE_P) | 2323 /* Skipping DeviceCapabilities because split-sized DEVMODE */ |
943 return CreateWindowStationW ((LPWSTR) lpwinsta, dwReserved, dwDesiredAccess, lpsa); | 2324 |
944 else | 2325 /* Skipping EnumFontFamiliesEx because split-complex FONTENUMPROC; NT 4.0+ only */ |
945 return CreateWindowStationA ((LPSTR) lpwinsta, dwReserved, dwDesiredAccess, lpsa); | 2326 |
946 } | 2327 /* Error if EnumFontFamilies used: split-complex FONTENUMPROC */ |
947 | 2328 |
948 HWINSTA | 2329 /* Error if EnumFonts used: split-complex FONTENUMPROC */ |
949 qxeOpenWindowStation (Extbyte * lpszWinSta, BOOL fInherit, ACCESS_MASK dwDesiredAccess) | 2330 |
950 { | 2331 BOOL |
951 if (XEUNICODE_P) | 2332 qxeGetCharWidth (HDC arg1, UINT arg2, UINT arg3, LPINT arg4) |
952 return OpenWindowStationW ((LPWSTR) lpszWinSta, fInherit, dwDesiredAccess); | 2333 { |
953 else | 2334 if (XEUNICODE_P) |
954 return OpenWindowStationA ((LPSTR) lpszWinSta, fInherit, dwDesiredAccess); | 2335 return GetCharWidthW (arg1, arg2, arg3, arg4); |
955 } | 2336 else |
956 | 2337 return GetCharWidthA (arg1, arg2, arg3, arg4); |
957 /* NOTE: // callback fun differs only in string pointer type */ | 2338 } |
958 BOOL | 2339 |
959 qxeEnumWindowStations (WINSTAENUMPROCW lpEnumFunc, LPARAM lParam) | 2340 BOOL |
960 { | 2341 qxeGetCharWidth32 (HDC arg1, UINT arg2, UINT arg3, LPINT arg4) |
961 if (XEUNICODE_P) | 2342 { |
962 return EnumWindowStationsW (lpEnumFunc, lParam); | 2343 if (XEUNICODE_P) |
963 else | 2344 return GetCharWidth32W (arg1, arg2, arg3, arg4); |
964 return EnumWindowStationsA ((WINSTAENUMPROCA) lpEnumFunc, lParam); | 2345 else |
965 } | 2346 return GetCharWidth32A (arg1, arg2, arg3, arg4); |
966 | 2347 } |
967 BOOL | 2348 |
968 qxeGetUserObjectInformation (HANDLE hObj, int nIndex, PVOID pvInfo, DWORD nLength, LPDWORD lpnLengthNeeded) | 2349 BOOL |
969 { | 2350 qxeGetCharWidthFloat (HDC arg1, UINT arg2, UINT arg3, PFLOAT arg4) |
970 if (XEUNICODE_P) | 2351 { |
971 return GetUserObjectInformationW (hObj, nIndex, pvInfo, nLength, lpnLengthNeeded); | 2352 if (XEUNICODE_P) |
972 else | 2353 return GetCharWidthFloatW (arg1, arg2, arg3, arg4); |
973 return GetUserObjectInformationA (hObj, nIndex, pvInfo, nLength, lpnLengthNeeded); | 2354 else |
974 } | 2355 return GetCharWidthFloatA (arg1, arg2, arg3, arg4); |
975 | 2356 } |
976 BOOL | 2357 |
977 qxeSetUserObjectInformation (HANDLE hObj, int nIndex, PVOID pvInfo, DWORD nLength) | 2358 BOOL |
978 { | 2359 qxeGetCharABCWidths (HDC arg1, UINT arg2, UINT arg3, LPABC arg4) |
979 if (XEUNICODE_P) | 2360 { |
980 return SetUserObjectInformationW (hObj, nIndex, pvInfo, nLength); | 2361 if (XEUNICODE_P) |
981 else | 2362 return GetCharABCWidthsW (arg1, arg2, arg3, arg4); |
982 return SetUserObjectInformationA (hObj, nIndex, pvInfo, nLength); | 2363 else |
2364 return GetCharABCWidthsA (arg1, arg2, arg3, arg4); | |
2365 } | |
2366 | |
2367 BOOL | |
2368 qxeGetCharABCWidthsFloat (HDC arg1, UINT arg2, UINT arg3, LPABCFLOAT arg4) | |
2369 { | |
2370 if (XEUNICODE_P) | |
2371 return GetCharABCWidthsFloatW (arg1, arg2, arg3, arg4); | |
2372 else | |
2373 return GetCharABCWidthsFloatA (arg1, arg2, arg3, arg4); | |
2374 } | |
2375 | |
2376 DWORD | |
2377 qxeGetGlyphOutline (HDC arg1, UINT arg2, UINT arg3, LPGLYPHMETRICS arg4, DWORD arg5, LPVOID arg6, CONST MAT2 * arg7) | |
2378 { | |
2379 if (XEUNICODE_P) | |
2380 return GetGlyphOutlineW (arg1, arg2, arg3, arg4, arg5, arg6, arg7); | |
2381 else | |
2382 return GetGlyphOutlineA (arg1, arg2, arg3, arg4, arg5, arg6, arg7); | |
2383 } | |
2384 | |
2385 HMETAFILE | |
2386 qxeGetMetaFile (const Extbyte * arg1) | |
2387 { | |
2388 if (XEUNICODE_P) | |
2389 return GetMetaFileW ((LPCWSTR) arg1); | |
2390 else | |
2391 return GetMetaFileA ((LPCSTR) arg1); | |
2392 } | |
2393 | |
2394 /* Error if GetOutlineTextMetrics used: split-sized LPOUTLINETEXTMETRIC */ | |
2395 | |
2396 BOOL | |
2397 qxeGetTextExtentPoint (HDC arg1, const Extbyte * arg2, int arg3, LPSIZE arg4) | |
2398 { | |
2399 if (XEUNICODE_P) | |
2400 return GetTextExtentPointW (arg1, (LPCWSTR) arg2, arg3, arg4); | |
2401 else | |
2402 return GetTextExtentPointA (arg1, (LPCSTR) arg2, arg3, arg4); | |
2403 } | |
2404 | |
2405 BOOL | |
2406 qxeGetTextExtentPoint32 (HDC arg1, const Extbyte * arg2, int arg3, LPSIZE arg4) | |
2407 { | |
2408 if (XEUNICODE_P) | |
2409 return GetTextExtentPoint32W (arg1, (LPCWSTR) arg2, arg3, arg4); | |
2410 else | |
2411 return GetTextExtentPoint32A (arg1, (LPCSTR) arg2, arg3, arg4); | |
2412 } | |
2413 | |
2414 BOOL | |
2415 qxeGetTextExtentExPoint (HDC arg1, const Extbyte * arg2, int arg3, int arg4, LPINT arg5, LPINT arg6, LPSIZE arg7) | |
2416 { | |
2417 if (XEUNICODE_P) | |
2418 return GetTextExtentExPointW (arg1, (LPCWSTR) arg2, arg3, arg4, arg5, arg6, arg7); | |
2419 else | |
2420 return GetTextExtentExPointA (arg1, (LPCSTR) arg2, arg3, arg4, arg5, arg6, arg7); | |
2421 } | |
2422 | |
2423 /* NOTE: NT 4.0+ only */ | |
2424 DWORD | |
2425 qxeGetCharacterPlacement (HDC arg1, const Extbyte * arg2, int arg3, int arg4, LPGCP_RESULTSW arg5, DWORD arg6) | |
2426 { | |
2427 if (XEUNICODE_P) | |
2428 return GetCharacterPlacementW (arg1, (LPCWSTR) arg2, arg3, arg4, arg5, arg6); | |
2429 else | |
2430 return GetCharacterPlacementA (arg1, (LPCSTR) arg2, arg3, arg4, (LPGCP_RESULTSA) arg5, arg6); | |
2431 } | |
2432 | |
2433 /* Error if GetGlyphIndices used: NT 5.0+ only */ | |
2434 | |
2435 /* Error if AddFontResourceEx used: NT 5.0+ only */ | |
2436 | |
2437 /* Error if RemoveFontResourceEx used: NT 5.0+ only */ | |
2438 | |
2439 /* Error if CreateFontIndirectEx used: split-sized ENUMLOGFONTEXDV; NT 5.0+ only */ | |
2440 | |
2441 /* Skipping ResetDC because split-sized DEVMODE */ | |
2442 | |
2443 BOOL | |
2444 qxeRemoveFontResource (const Extbyte * arg1) | |
2445 { | |
2446 if (XEUNICODE_P) | |
2447 return RemoveFontResourceW ((LPCWSTR) arg1); | |
2448 else | |
2449 return RemoveFontResourceA ((LPCSTR) arg1); | |
2450 } | |
2451 | |
2452 HENHMETAFILE | |
2453 qxeCopyEnhMetaFile (HENHMETAFILE arg1, const Extbyte * arg2) | |
2454 { | |
2455 if (XEUNICODE_P) | |
2456 return CopyEnhMetaFileW (arg1, (LPCWSTR) arg2); | |
2457 else | |
2458 return CopyEnhMetaFileA (arg1, (LPCSTR) arg2); | |
2459 } | |
2460 | |
2461 HDC | |
2462 qxeCreateEnhMetaFile (HDC arg1, const Extbyte * arg2, CONST RECT * arg3, const Extbyte * arg4) | |
2463 { | |
2464 if (XEUNICODE_P) | |
2465 return CreateEnhMetaFileW (arg1, (LPCWSTR) arg2, arg3, (LPCWSTR) arg4); | |
2466 else | |
2467 return CreateEnhMetaFileA (arg1, (LPCSTR) arg2, arg3, (LPCSTR) arg4); | |
2468 } | |
2469 | |
2470 HENHMETAFILE | |
2471 qxeGetEnhMetaFile (const Extbyte * arg1) | |
2472 { | |
2473 if (XEUNICODE_P) | |
2474 return GetEnhMetaFileW ((LPCWSTR) arg1); | |
2475 else | |
2476 return GetEnhMetaFileA ((LPCSTR) arg1); | |
983 } | 2477 } |
984 | 2478 |
985 UINT | 2479 UINT |
986 qxeRegisterWindowMessage (const Extbyte * lpString) | 2480 qxeGetEnhMetaFileDescription (HENHMETAFILE arg1, UINT arg2, Extbyte * arg3) |
987 { | 2481 { |
988 if (XEUNICODE_P) | 2482 if (XEUNICODE_P) |
989 return RegisterWindowMessageW ((LPCWSTR) lpString); | 2483 return GetEnhMetaFileDescriptionW (arg1, arg2, (LPWSTR) arg3); |
990 else | 2484 else |
991 return RegisterWindowMessageA ((LPCSTR) lpString); | 2485 return GetEnhMetaFileDescriptionA (arg1, arg2, (LPSTR) arg3); |
992 } | 2486 } |
993 | 2487 |
994 BOOL | 2488 /* Skipping GetTextMetrics because split-sized LPTEXTMETRIC */ |
995 qxeGetMessage (LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax) | 2489 |
996 { | 2490 int |
997 if (XEUNICODE_P) | 2491 qxeStartDoc (HDC arg1, CONST DOCINFOW * arg2) |
998 return GetMessageW (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax); | 2492 { |
999 else | 2493 if (XEUNICODE_P) |
1000 return GetMessageA (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax); | 2494 return StartDocW (arg1, arg2); |
1001 } | 2495 else |
1002 | 2496 return StartDocA (arg1, (CONST DOCINFOA *) arg2); |
1003 LONG | 2497 } |
1004 qxeDispatchMessage (CONST MSG * lpMsg) | 2498 |
1005 { | 2499 /* Skipping GetObject because split-sized LOGFONT */ |
1006 if (XEUNICODE_P) | 2500 |
1007 return DispatchMessageW (lpMsg); | 2501 BOOL |
1008 else | 2502 qxeTextOut (HDC arg1, int arg2, int arg3, const Extbyte * arg4, int arg5) |
1009 return DispatchMessageA (lpMsg); | 2503 { |
1010 } | 2504 if (XEUNICODE_P) |
1011 | 2505 return TextOutW (arg1, arg2, arg3, (LPCWSTR) arg4, arg5); |
1012 BOOL | 2506 else |
1013 qxePeekMessage (LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg) | 2507 return TextOutA (arg1, arg2, arg3, (LPCSTR) arg4, arg5); |
1014 { | 2508 } |
1015 if (XEUNICODE_P) | 2509 |
1016 return PeekMessageW (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax, wRemoveMsg); | 2510 BOOL |
1017 else | 2511 qxeExtTextOut (HDC arg1, int arg2, int arg3, UINT arg4, CONST RECT * arg5, const Extbyte * arg6, UINT arg7, CONST INT * arg8) |
1018 return PeekMessageA (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax, wRemoveMsg); | 2512 { |
1019 } | 2513 if (XEUNICODE_P) |
1020 | 2514 return ExtTextOutW (arg1, arg2, arg3, arg4, arg5, (LPCWSTR) arg6, arg7, arg8); |
1021 /* Skipping SendMessage because split messages and structures */ | 2515 else |
1022 | 2516 return ExtTextOutA (arg1, arg2, arg3, arg4, arg5, (LPCSTR) arg6, arg7, arg8); |
1023 LRESULT | 2517 } |
1024 qxeSendMessageTimeout (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, UINT fuFlags, UINT uTimeout, LPDWORD lpdwResult) | 2518 |
1025 { | 2519 BOOL |
1026 if (XEUNICODE_P) | 2520 qxePolyTextOut (HDC arg1, CONST POLYTEXTW * arg2, int arg3) |
1027 return SendMessageTimeoutW (hWnd, Msg, wParam, lParam, fuFlags, uTimeout, lpdwResult); | 2521 { |
1028 else | 2522 if (XEUNICODE_P) |
1029 return SendMessageTimeoutA (hWnd, Msg, wParam, lParam, fuFlags, uTimeout, lpdwResult); | 2523 return PolyTextOutW (arg1, arg2, arg3); |
1030 } | 2524 else |
1031 | 2525 return PolyTextOutA (arg1, (CONST POLYTEXTA *) arg2, arg3); |
1032 BOOL | 2526 } |
1033 qxeSendNotifyMessage (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam) | 2527 |
1034 { | 2528 int |
1035 if (XEUNICODE_P) | 2529 qxeGetTextFace (HDC arg1, int arg2, Extbyte * arg3) |
1036 return SendNotifyMessageW (hWnd, Msg, wParam, lParam); | 2530 { |
1037 else | 2531 if (XEUNICODE_P) |
1038 return SendNotifyMessageA (hWnd, Msg, wParam, lParam); | 2532 return GetTextFaceW (arg1, arg2, (LPWSTR) arg3); |
1039 } | 2533 else |
1040 | 2534 return GetTextFaceA (arg1, arg2, (LPSTR) arg3); |
1041 BOOL | 2535 } |
1042 qxeSendMessageCallback (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, SENDASYNCPROC lpResultCallBack, DWORD dwData) | 2536 |
1043 { | 2537 DWORD |
1044 if (XEUNICODE_P) | 2538 qxeGetKerningPairs (HDC arg1, DWORD arg2, LPKERNINGPAIR arg3) |
1045 return SendMessageCallbackW (hWnd, Msg, wParam, lParam, lpResultCallBack, dwData); | 2539 { |
1046 else | 2540 if (XEUNICODE_P) |
1047 return SendMessageCallbackA (hWnd, Msg, wParam, lParam, lpResultCallBack, dwData); | 2541 return GetKerningPairsW (arg1, arg2, arg3); |
1048 } | 2542 else |
1049 | 2543 return GetKerningPairsA (arg1, arg2, arg3); |
1050 /* Error if BroadcastSystemMessage used: win95 version not split; NT 4.0+ only */ | 2544 } |
1051 | 2545 |
1052 /* Error if RegisterDeviceNotification used: NT 5.0+ only */ | 2546 /* Error if GetLogColorSpace used: split-sized LPLOGCOLORSPACE; NT 4.0+ only */ |
1053 | 2547 |
1054 BOOL | 2548 /* Error if CreateColorSpace used: split-sized LPLOGCOLORSPACE; NT 4.0+ only */ |
1055 qxePostMessage (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam) | 2549 |
1056 { | 2550 /* Skipping GetICMProfile because NT 4.0+ only, error in Cygwin prototype */ |
1057 if (XEUNICODE_P) | |
1058 return PostMessageW (hWnd, Msg, wParam, lParam); | |
1059 else | |
1060 return PostMessageA (hWnd, Msg, wParam, lParam); | |
1061 } | |
1062 | |
1063 BOOL | |
1064 qxePostThreadMessage (DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam) | |
1065 { | |
1066 if (XEUNICODE_P) | |
1067 return PostThreadMessageW (idThread, Msg, wParam, lParam); | |
1068 else | |
1069 return PostThreadMessageA (idThread, Msg, wParam, lParam); | |
1070 } | |
1071 | |
1072 /* Skipping DefWindowProc because return value is conditionalized on _MAC, messes up parser */ | |
1073 | |
1074 /* Error if CallWindowProc used: two versions, STRICT and non-STRICT */ | |
1075 | |
1076 /* Error if CallWindowProc used: two versions, STRICT and non-STRICT */ | |
1077 | |
1078 /* Skipping RegisterClass because need to intercept so we can provide our own window procedure and handle split notify messages; split-simple WNDCLASS */ | |
1079 | |
1080 /* Skipping UnregisterClass because need to intercept for reasons related to RegisterClass */ | |
1081 | |
1082 BOOL | |
1083 qxeGetClassInfo (HINSTANCE hInstance, const Extbyte * lpClassName, LPWNDCLASSW lpWndClass) | |
1084 { | |
1085 if (XEUNICODE_P) | |
1086 return GetClassInfoW (hInstance, (LPCWSTR) lpClassName, lpWndClass); | |
1087 else | |
1088 return GetClassInfoA (hInstance, (LPCSTR) lpClassName, (LPWNDCLASSA) lpWndClass); | |
1089 } | |
1090 | |
1091 /* Skipping RegisterClassEx because need to intercept so we can provide our own window procedure and handle split notify messages; split-simple WNDCLASSEX; NT 4.0+ only */ | |
1092 | 2551 |
1093 /* NOTE: NT 4.0+ only */ | 2552 /* NOTE: NT 4.0+ only */ |
1094 BOOL | 2553 BOOL |
1095 qxeGetClassInfoEx (HINSTANCE arg1, const Extbyte * arg2, LPWNDCLASSEXW arg3) | 2554 qxeSetICMProfile (HDC arg1, Extbyte * arg2) |
1096 { | 2555 { |
1097 if (XEUNICODE_P) | 2556 if (XEUNICODE_P) |
1098 return GetClassInfoExW (arg1, (LPCWSTR) arg2, arg3); | 2557 return SetICMProfileW (arg1, (LPWSTR) arg2); |
1099 else | 2558 else |
1100 return GetClassInfoExA (arg1, (LPCSTR) arg2, (LPWNDCLASSEXA) arg3); | 2559 return SetICMProfileA (arg1, (LPSTR) arg2); |
1101 } | |
1102 | |
1103 HWND | |
1104 qxeCreateWindowEx (DWORD dwExStyle, const Extbyte * lpClassName, const Extbyte * lpWindowName, DWORD dwStyle, int X, int Y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam) | |
1105 { | |
1106 if (XEUNICODE_P) | |
1107 return CreateWindowExW (dwExStyle, (LPCWSTR) lpClassName, (LPCWSTR) lpWindowName, dwStyle, X, Y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam); | |
1108 else | |
1109 return CreateWindowExA (dwExStyle, (LPCSTR) lpClassName, (LPCSTR) lpWindowName, dwStyle, X, Y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam); | |
1110 } | |
1111 | |
1112 HWND | |
1113 qxeCreateDialogParam (HINSTANCE hInstance, const Extbyte * lpTemplateName, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam) | |
1114 { | |
1115 if (XEUNICODE_P) | |
1116 return CreateDialogParamW (hInstance, (LPCWSTR) lpTemplateName, hWndParent, lpDialogFunc, dwInitParam); | |
1117 else | |
1118 return CreateDialogParamA (hInstance, (LPCSTR) lpTemplateName, hWndParent, lpDialogFunc, dwInitParam); | |
1119 } | |
1120 | |
1121 /* NOTE: error in Cygwin prototype (no split) but fixable with typedef */ | |
1122 HWND | |
1123 qxeCreateDialogIndirectParam (HINSTANCE hInstance, LPCDLGTEMPLATEW lpTemplate, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam) | |
1124 { | |
1125 if (XEUNICODE_P) | |
1126 return CreateDialogIndirectParamW (hInstance, lpTemplate, hWndParent, lpDialogFunc, dwInitParam); | |
1127 else | |
1128 return CreateDialogIndirectParamA (hInstance, (LPCDLGTEMPLATEA) lpTemplate, hWndParent, lpDialogFunc, dwInitParam); | |
1129 } | |
1130 | |
1131 int | |
1132 qxeDialogBoxParam (HINSTANCE hInstance, const Extbyte * lpTemplateName, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam) | |
1133 { | |
1134 if (XEUNICODE_P) | |
1135 return DialogBoxParamW (hInstance, (LPCWSTR) lpTemplateName, hWndParent, lpDialogFunc, dwInitParam); | |
1136 else | |
1137 return DialogBoxParamA (hInstance, (LPCSTR) lpTemplateName, hWndParent, lpDialogFunc, dwInitParam); | |
1138 } | |
1139 | |
1140 /* NOTE: error in Cygwin prototype (no split) but fixable with typedef */ | |
1141 int | |
1142 qxeDialogBoxIndirectParam (HINSTANCE hInstance, LPCDLGTEMPLATEW hDialogTemplate, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam) | |
1143 { | |
1144 if (XEUNICODE_P) | |
1145 return DialogBoxIndirectParamW (hInstance, hDialogTemplate, hWndParent, lpDialogFunc, dwInitParam); | |
1146 else | |
1147 return DialogBoxIndirectParamA (hInstance, (LPCDLGTEMPLATEA) hDialogTemplate, hWndParent, lpDialogFunc, dwInitParam); | |
1148 } | |
1149 | |
1150 BOOL | |
1151 qxeSetDlgItemText (HWND hDlg, int nIDDlgItem, const Extbyte * lpString) | |
1152 { | |
1153 if (XEUNICODE_P) | |
1154 return SetDlgItemTextW (hDlg, nIDDlgItem, (LPCWSTR) lpString); | |
1155 else | |
1156 return SetDlgItemTextA (hDlg, nIDDlgItem, (LPCSTR) lpString); | |
1157 } | |
1158 | |
1159 UINT | |
1160 qxeGetDlgItemText (HWND hDlg, int nIDDlgItem, Extbyte * lpString, int nMaxCount) | |
1161 { | |
1162 if (XEUNICODE_P) | |
1163 return GetDlgItemTextW (hDlg, nIDDlgItem, (LPWSTR) lpString, nMaxCount); | |
1164 else | |
1165 return GetDlgItemTextA (hDlg, nIDDlgItem, (LPSTR) lpString, nMaxCount); | |
1166 } | |
1167 | |
1168 LONG | |
1169 qxeSendDlgItemMessage (HWND hDlg, int nIDDlgItem, UINT Msg, WPARAM wParam, LPARAM lParam) | |
1170 { | |
1171 if (XEUNICODE_P) | |
1172 return SendDlgItemMessageW (hDlg, nIDDlgItem, Msg, wParam, lParam); | |
1173 else | |
1174 return SendDlgItemMessageA (hDlg, nIDDlgItem, Msg, wParam, lParam); | |
1175 } | |
1176 | |
1177 /* Error if DefDlgProc used: return value is conditionalized on _MAC, messes up parser */ | |
1178 | |
1179 #if !defined (CYGWIN_HEADERS) | |
1180 | |
1181 BOOL | |
1182 qxeCallMsgFilter (LPMSG lpMsg, int nCode) | |
1183 { | |
1184 if (XEUNICODE_P) | |
1185 return CallMsgFilterW (lpMsg, nCode); | |
1186 else | |
1187 return CallMsgFilterA (lpMsg, nCode); | |
1188 } | |
1189 | |
1190 #endif /* !defined (CYGWIN_HEADERS) */ | |
1191 | |
1192 UINT | |
1193 qxeRegisterClipboardFormat (const Extbyte * lpszFormat) | |
1194 { | |
1195 if (XEUNICODE_P) | |
1196 return RegisterClipboardFormatW ((LPCWSTR) lpszFormat); | |
1197 else | |
1198 return RegisterClipboardFormatA ((LPCSTR) lpszFormat); | |
1199 } | |
1200 | |
1201 int | |
1202 qxeGetClipboardFormatName (UINT format, Extbyte * lpszFormatName, int cchMaxCount) | |
1203 { | |
1204 if (XEUNICODE_P) | |
1205 return GetClipboardFormatNameW (format, (LPWSTR) lpszFormatName, cchMaxCount); | |
1206 else | |
1207 return GetClipboardFormatNameA (format, (LPSTR) lpszFormatName, cchMaxCount); | |
1208 } | |
1209 | |
1210 BOOL | |
1211 qxeCharToOem (const Extbyte * lpszSrc, LPSTR lpszDst) | |
1212 { | |
1213 if (XEUNICODE_P) | |
1214 return CharToOemW ((LPCWSTR) lpszSrc, lpszDst); | |
1215 else | |
1216 return CharToOemA ((LPCSTR) lpszSrc, lpszDst); | |
1217 } | |
1218 | |
1219 BOOL | |
1220 qxeOemToChar (LPCSTR lpszSrc, Extbyte * lpszDst) | |
1221 { | |
1222 if (XEUNICODE_P) | |
1223 return OemToCharW (lpszSrc, (LPWSTR) lpszDst); | |
1224 else | |
1225 return OemToCharA (lpszSrc, (LPSTR) lpszDst); | |
1226 } | |
1227 | |
1228 BOOL | |
1229 qxeCharToOemBuff (const Extbyte * lpszSrc, LPSTR lpszDst, DWORD cchDstLength) | |
1230 { | |
1231 if (XEUNICODE_P) | |
1232 return CharToOemBuffW ((LPCWSTR) lpszSrc, lpszDst, cchDstLength); | |
1233 else | |
1234 return CharToOemBuffA ((LPCSTR) lpszSrc, lpszDst, cchDstLength); | |
1235 } | |
1236 | |
1237 BOOL | |
1238 qxeOemToCharBuff (LPCSTR lpszSrc, Extbyte * lpszDst, DWORD cchDstLength) | |
1239 { | |
1240 if (XEUNICODE_P) | |
1241 return OemToCharBuffW (lpszSrc, (LPWSTR) lpszDst, cchDstLength); | |
1242 else | |
1243 return OemToCharBuffA (lpszSrc, (LPSTR) lpszDst, cchDstLength); | |
1244 } | |
1245 | |
1246 Extbyte * | |
1247 qxeCharUpper (Extbyte * lpsz) | |
1248 { | |
1249 if (XEUNICODE_P) | |
1250 return (Extbyte *) CharUpperW ((LPWSTR) lpsz); | |
1251 else | |
1252 return (Extbyte *) CharUpperA ((LPSTR) lpsz); | |
1253 } | |
1254 | |
1255 DWORD | |
1256 qxeCharUpperBuff (Extbyte * lpsz, DWORD cchLength) | |
1257 { | |
1258 if (XEUNICODE_P) | |
1259 return CharUpperBuffW ((LPWSTR) lpsz, cchLength); | |
1260 else | |
1261 return CharUpperBuffA ((LPSTR) lpsz, cchLength); | |
1262 } | |
1263 | |
1264 Extbyte * | |
1265 qxeCharLower (Extbyte * lpsz) | |
1266 { | |
1267 if (XEUNICODE_P) | |
1268 return (Extbyte *) CharLowerW ((LPWSTR) lpsz); | |
1269 else | |
1270 return (Extbyte *) CharLowerA ((LPSTR) lpsz); | |
1271 } | |
1272 | |
1273 DWORD | |
1274 qxeCharLowerBuff (Extbyte * lpsz, DWORD cchLength) | |
1275 { | |
1276 if (XEUNICODE_P) | |
1277 return CharLowerBuffW ((LPWSTR) lpsz, cchLength); | |
1278 else | |
1279 return CharLowerBuffA ((LPSTR) lpsz, cchLength); | |
1280 } | |
1281 | |
1282 Extbyte * | |
1283 qxeCharNext (const Extbyte * lpsz) | |
1284 { | |
1285 if (XEUNICODE_P) | |
1286 return (Extbyte *) CharNextW ((LPCWSTR) lpsz); | |
1287 else | |
1288 return (Extbyte *) CharNextA ((LPCSTR) lpsz); | |
1289 } | |
1290 | |
1291 Extbyte * | |
1292 qxeCharPrev (const Extbyte * lpszStart, const Extbyte * lpszCurrent) | |
1293 { | |
1294 if (XEUNICODE_P) | |
1295 return (Extbyte *) CharPrevW ((LPCWSTR) lpszStart, (LPCWSTR) lpszCurrent); | |
1296 else | |
1297 return (Extbyte *) CharPrevA ((LPCSTR) lpszStart, (LPCSTR) lpszCurrent); | |
1298 } | |
1299 | |
1300 /* Error if IsCharAlpha used: split CHAR */ | |
1301 | |
1302 /* Error if IsCharAlphaNumeric used: split CHAR */ | |
1303 | |
1304 /* Error if IsCharUpper used: split CHAR */ | |
1305 | |
1306 /* Error if IsCharLower used: split CHAR */ | |
1307 | |
1308 int | |
1309 qxeGetKeyNameText (LONG lParam, Extbyte * lpString, int nSize) | |
1310 { | |
1311 if (XEUNICODE_P) | |
1312 return GetKeyNameTextW (lParam, (LPWSTR) lpString, nSize); | |
1313 else | |
1314 return GetKeyNameTextA (lParam, (LPSTR) lpString, nSize); | |
1315 } | |
1316 | |
1317 /* Skipping VkKeyScan because split CHAR */ | |
1318 | |
1319 /* Error if VkKeyScanEx used: split CHAR; NT 4.0+ only */ | |
1320 | |
1321 UINT | |
1322 qxeMapVirtualKey (UINT uCode, UINT uMapType) | |
1323 { | |
1324 if (XEUNICODE_P) | |
1325 return MapVirtualKeyW (uCode, uMapType); | |
1326 else | |
1327 return MapVirtualKeyA (uCode, uMapType); | |
1328 } | |
1329 | |
1330 /* NOTE: NT 4.0+ only */ | |
1331 UINT | |
1332 qxeMapVirtualKeyEx (UINT uCode, UINT uMapType, HKL dwhkl) | |
1333 { | |
1334 if (XEUNICODE_P) | |
1335 return MapVirtualKeyExW (uCode, uMapType, dwhkl); | |
1336 else | |
1337 return MapVirtualKeyExA (uCode, uMapType, dwhkl); | |
1338 } | |
1339 | |
1340 HACCEL | |
1341 qxeLoadAccelerators (HINSTANCE hInstance, const Extbyte * lpTableName) | |
1342 { | |
1343 if (XEUNICODE_P) | |
1344 return LoadAcceleratorsW (hInstance, (LPCWSTR) lpTableName); | |
1345 else | |
1346 return LoadAcceleratorsA (hInstance, (LPCSTR) lpTableName); | |
1347 } | |
1348 | |
1349 HACCEL | |
1350 qxeCreateAcceleratorTable (LPACCEL arg1, int arg2) | |
1351 { | |
1352 if (XEUNICODE_P) | |
1353 return CreateAcceleratorTableW (arg1, arg2); | |
1354 else | |
1355 return CreateAcceleratorTableA (arg1, arg2); | |
1356 } | |
1357 | |
1358 int | |
1359 qxeCopyAcceleratorTable (HACCEL hAccelSrc, LPACCEL lpAccelDst, int cAccelEntries) | |
1360 { | |
1361 if (XEUNICODE_P) | |
1362 return CopyAcceleratorTableW (hAccelSrc, lpAccelDst, cAccelEntries); | |
1363 else | |
1364 return CopyAcceleratorTableA (hAccelSrc, lpAccelDst, cAccelEntries); | |
1365 } | |
1366 | |
1367 int | |
1368 qxeTranslateAccelerator (HWND hWnd, HACCEL hAccTable, LPMSG lpMsg) | |
1369 { | |
1370 if (XEUNICODE_P) | |
1371 return TranslateAcceleratorW (hWnd, hAccTable, lpMsg); | |
1372 else | |
1373 return TranslateAcceleratorA (hWnd, hAccTable, lpMsg); | |
1374 } | |
1375 | |
1376 HMENU | |
1377 qxeLoadMenu (HINSTANCE hInstance, const Extbyte * lpMenuName) | |
1378 { | |
1379 if (XEUNICODE_P) | |
1380 return LoadMenuW (hInstance, (LPCWSTR) lpMenuName); | |
1381 else | |
1382 return LoadMenuA (hInstance, (LPCSTR) lpMenuName); | |
1383 } | |
1384 | |
1385 HMENU | |
1386 qxeLoadMenuIndirect (CONST MENUTEMPLATEW * lpMenuTemplate) | |
1387 { | |
1388 if (XEUNICODE_P) | |
1389 return LoadMenuIndirectW (lpMenuTemplate); | |
1390 else | |
1391 return LoadMenuIndirectA ((CONST MENUTEMPLATEA *) lpMenuTemplate); | |
1392 } | |
1393 | |
1394 BOOL | |
1395 qxeChangeMenu (HMENU hMenu, UINT cmd, const Extbyte * lpszNewItem, UINT cmdInsert, UINT flags) | |
1396 { | |
1397 if (XEUNICODE_P) | |
1398 return ChangeMenuW (hMenu, cmd, (LPCWSTR) lpszNewItem, cmdInsert, flags); | |
1399 else | |
1400 return ChangeMenuA (hMenu, cmd, (LPCSTR) lpszNewItem, cmdInsert, flags); | |
1401 } | |
1402 | |
1403 int | |
1404 qxeGetMenuString (HMENU hMenu, UINT uIDItem, Extbyte * lpString, int nMaxCount, UINT uFlag) | |
1405 { | |
1406 if (XEUNICODE_P) | |
1407 return GetMenuStringW (hMenu, uIDItem, (LPWSTR) lpString, nMaxCount, uFlag); | |
1408 else | |
1409 return GetMenuStringA (hMenu, uIDItem, (LPSTR) lpString, nMaxCount, uFlag); | |
1410 } | |
1411 | |
1412 BOOL | |
1413 qxeInsertMenu (HMENU hMenu, UINT uPosition, UINT uFlags, UINT uIDNewItem, const Extbyte * lpNewItem) | |
1414 { | |
1415 if (XEUNICODE_P) | |
1416 return InsertMenuW (hMenu, uPosition, uFlags, uIDNewItem, (LPCWSTR) lpNewItem); | |
1417 else | |
1418 return InsertMenuA (hMenu, uPosition, uFlags, uIDNewItem, (LPCSTR) lpNewItem); | |
1419 } | |
1420 | |
1421 BOOL | |
1422 qxeAppendMenu (HMENU hMenu, UINT uFlags, UINT uIDNewItem, const Extbyte * lpNewItem) | |
1423 { | |
1424 if (XEUNICODE_P) | |
1425 return AppendMenuW (hMenu, uFlags, uIDNewItem, (LPCWSTR) lpNewItem); | |
1426 else | |
1427 return AppendMenuA (hMenu, uFlags, uIDNewItem, (LPCSTR) lpNewItem); | |
1428 } | |
1429 | |
1430 BOOL | |
1431 qxeModifyMenu (HMENU hMnu, UINT uPosition, UINT uFlags, UINT uIDNewItem, const Extbyte * lpNewItem) | |
1432 { | |
1433 if (XEUNICODE_P) | |
1434 return ModifyMenuW (hMnu, uPosition, uFlags, uIDNewItem, (LPCWSTR) lpNewItem); | |
1435 else | |
1436 return ModifyMenuA (hMnu, uPosition, uFlags, uIDNewItem, (LPCSTR) lpNewItem); | |
1437 } | |
1438 | |
1439 /* NOTE: NT 4.0+ only */ | |
1440 BOOL | |
1441 qxeInsertMenuItem (HMENU arg1, UINT arg2, BOOL arg3, LPCMENUITEMINFOW arg4) | |
1442 { | |
1443 if (XEUNICODE_P) | |
1444 return InsertMenuItemW (arg1, arg2, arg3, arg4); | |
1445 else | |
1446 return InsertMenuItemA (arg1, arg2, arg3, (LPCMENUITEMINFOA) arg4); | |
1447 } | |
1448 | |
1449 /* NOTE: NT 4.0+ only */ | |
1450 BOOL | |
1451 qxeGetMenuItemInfo (HMENU arg1, UINT arg2, BOOL arg3, LPMENUITEMINFOW arg4) | |
1452 { | |
1453 if (XEUNICODE_P) | |
1454 return GetMenuItemInfoW (arg1, arg2, arg3, arg4); | |
1455 else | |
1456 return GetMenuItemInfoA (arg1, arg2, arg3, (LPMENUITEMINFOA) arg4); | |
1457 } | |
1458 | |
1459 /* NOTE: NT 4.0+ only */ | |
1460 BOOL | |
1461 qxeSetMenuItemInfo (HMENU arg1, UINT arg2, BOOL arg3, LPCMENUITEMINFOW arg4) | |
1462 { | |
1463 if (XEUNICODE_P) | |
1464 return SetMenuItemInfoW (arg1, arg2, arg3, arg4); | |
1465 else | |
1466 return SetMenuItemInfoA (arg1, arg2, arg3, (LPCMENUITEMINFOA) arg4); | |
1467 } | |
1468 | |
1469 int | |
1470 qxeDrawText (HDC hDC, const Extbyte * lpString, int nCount, LPRECT lpRect, UINT uFormat) | |
1471 { | |
1472 if (XEUNICODE_P) | |
1473 return DrawTextW (hDC, (LPCWSTR) lpString, nCount, lpRect, uFormat); | |
1474 else | |
1475 return DrawTextA (hDC, (LPCSTR) lpString, nCount, lpRect, uFormat); | |
1476 } | 2560 } |
1477 | 2561 |
1478 /* NOTE: NT 4.0+ only */ | 2562 /* NOTE: NT 4.0+ only */ |
1479 int | 2563 int |
1480 qxeDrawTextEx (HDC arg1, Extbyte * arg2, int arg3, LPRECT arg4, UINT arg5, LPDRAWTEXTPARAMS arg6) | 2564 qxeEnumICMProfiles (HDC arg1, ICMENUMPROCW arg2, LPARAM arg3) |
1481 { | 2565 { |
1482 if (XEUNICODE_P) | 2566 if (XEUNICODE_P) |
1483 return DrawTextExW (arg1, (LPWSTR) arg2, arg3, arg4, arg5, arg6); | 2567 return EnumICMProfilesW (arg1, arg2, arg3); |
1484 else | 2568 else |
1485 return DrawTextExA (arg1, (LPSTR) arg2, arg3, arg4, arg5, arg6); | 2569 return EnumICMProfilesA (arg1, (ICMENUMPROCA) arg2, arg3); |
1486 } | 2570 } |
1487 | 2571 |
1488 BOOL | 2572 /* Skipping UpdateICMRegKey because NT 4.0+ only, error in Cygwin prototype */ |
1489 qxeGrayString (HDC hDC, HBRUSH hBrush, GRAYSTRINGPROC lpOutputFunc, LPARAM lpData, int nCount, int X, int Y, int nWidth, int nHeight) | 2573 |
1490 { | 2574 /* Error if wglUseFontBitmaps used: causes link error */ |
1491 if (XEUNICODE_P) | 2575 |
1492 return GrayStringW (hDC, hBrush, lpOutputFunc, lpData, nCount, X, Y, nWidth, nHeight); | 2576 /* Error if wglUseFontOutlines used: causes link error */ |
1493 else | 2577 |
1494 return GrayStringA (hDC, hBrush, lpOutputFunc, lpData, nCount, X, Y, nWidth, nHeight); | 2578 |
1495 } | 2579 /*----------------------------------------------------------------------*/ |
1496 | 2580 /* Processing file WINNLS.H */ |
1497 /* NOTE: NT 4.0+ only */ | 2581 /*----------------------------------------------------------------------*/ |
1498 BOOL | 2582 |
1499 qxeDrawState (HDC arg1, HBRUSH arg2, DRAWSTATEPROC arg3, LPARAM arg4, WPARAM arg5, int arg6, int arg7, int arg8, int arg9, UINT arg10) | 2583 /* Error if GetCPInfoEx used: not used, not examined yet */ |
1500 { | 2584 |
1501 if (XEUNICODE_P) | 2585 /* Error if CompareString used: not used, not examined yet */ |
1502 return DrawStateW (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10); | 2586 |
1503 else | 2587 /* Error if LCMapString used: not used, not examined yet */ |
1504 return DrawStateA (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10); | 2588 |
1505 } | |
1506 | |
1507 LONG | |
1508 qxeTabbedTextOut (HDC hDC, int X, int Y, const Extbyte * lpString, int nCount, int nTabPositions, LPINT lpnTabStopPositions, int nTabOrigin) | |
1509 { | |
1510 if (XEUNICODE_P) | |
1511 return TabbedTextOutW (hDC, X, Y, (LPCWSTR) lpString, nCount, nTabPositions, lpnTabStopPositions, nTabOrigin); | |
1512 else | |
1513 return TabbedTextOutA (hDC, X, Y, (LPCSTR) lpString, nCount, nTabPositions, lpnTabStopPositions, nTabOrigin); | |
1514 } | |
1515 | |
1516 DWORD | |
1517 qxeGetTabbedTextExtent (HDC hDC, const Extbyte * lpString, int nCount, int nTabPositions, LPINT lpnTabStopPositions) | |
1518 { | |
1519 if (XEUNICODE_P) | |
1520 return GetTabbedTextExtentW (hDC, (LPCWSTR) lpString, nCount, nTabPositions, lpnTabStopPositions); | |
1521 else | |
1522 return GetTabbedTextExtentA (hDC, (LPCSTR) lpString, nCount, nTabPositions, lpnTabStopPositions); | |
1523 } | |
1524 | |
1525 BOOL | |
1526 qxeSetProp (HWND hWnd, const Extbyte * lpString, HANDLE hData) | |
1527 { | |
1528 if (XEUNICODE_P) | |
1529 return SetPropW (hWnd, (LPCWSTR) lpString, hData); | |
1530 else | |
1531 return SetPropA (hWnd, (LPCSTR) lpString, hData); | |
1532 } | |
1533 | |
1534 HANDLE | |
1535 qxeGetProp (HWND hWnd, const Extbyte * lpString) | |
1536 { | |
1537 if (XEUNICODE_P) | |
1538 return GetPropW (hWnd, (LPCWSTR) lpString); | |
1539 else | |
1540 return GetPropA (hWnd, (LPCSTR) lpString); | |
1541 } | |
1542 | |
1543 HANDLE | |
1544 qxeRemoveProp (HWND hWnd, const Extbyte * lpString) | |
1545 { | |
1546 if (XEUNICODE_P) | |
1547 return RemovePropW (hWnd, (LPCWSTR) lpString); | |
1548 else | |
1549 return RemovePropA (hWnd, (LPCSTR) lpString); | |
1550 } | |
1551 | |
1552 /* NOTE: // callback fun differs only in string pointer type */ | |
1553 int | 2589 int |
1554 qxeEnumPropsEx (HWND hWnd, PROPENUMPROCEXW lpEnumFunc, LPARAM lParam) | 2590 qxeGetLocaleInfo (LCID Locale, LCTYPE LCType, Extbyte * lpLCData, int cchData) |
1555 { | 2591 { |
1556 if (XEUNICODE_P) | 2592 if (XEUNICODE_P) |
1557 return EnumPropsExW (hWnd, lpEnumFunc, lParam); | 2593 return GetLocaleInfoW (Locale, LCType, (LPWSTR) lpLCData, cchData); |
1558 else | 2594 else |
1559 return EnumPropsExA (hWnd, (PROPENUMPROCEXA) lpEnumFunc, lParam); | 2595 return GetLocaleInfoA (Locale, LCType, (LPSTR) lpLCData, cchData); |
1560 } | 2596 } |
1561 | 2597 |
1562 /* NOTE: // callback fun differs only in string pointer type */ | 2598 BOOL |
1563 int | 2599 qxeSetLocaleInfo (LCID Locale, LCTYPE LCType, const Extbyte * lpLCData) |
1564 qxeEnumProps (HWND hWnd, PROPENUMPROCW lpEnumFunc) | 2600 { |
1565 { | 2601 if (XEUNICODE_P) |
1566 if (XEUNICODE_P) | 2602 return SetLocaleInfoW (Locale, LCType, (LPCWSTR) lpLCData); |
1567 return EnumPropsW (hWnd, lpEnumFunc); | 2603 else |
1568 else | 2604 return SetLocaleInfoA (Locale, LCType, (LPCSTR) lpLCData); |
1569 return EnumPropsA (hWnd, (PROPENUMPROCA) lpEnumFunc); | 2605 } |
1570 } | 2606 |
1571 | 2607 /* Error if GetTimeFormat used: not used, not examined yet */ |
1572 BOOL | 2608 |
1573 qxeSetWindowText (HWND hWnd, const Extbyte * lpString) | 2609 /* Error if GetDateFormat used: not used, not examined yet */ |
1574 { | 2610 |
1575 if (XEUNICODE_P) | 2611 /* Error if GetNumberFormat used: not used, not examined yet */ |
1576 return SetWindowTextW (hWnd, (LPCWSTR) lpString); | 2612 |
1577 else | 2613 /* Error if GetCurrencyFormat used: not used, not examined yet */ |
1578 return SetWindowTextA (hWnd, (LPCSTR) lpString); | 2614 |
1579 } | 2615 /* Error if EnumCalendarInfo used: not used, not examined yet */ |
1580 | 2616 |
1581 int | 2617 /* Error if EnumCalendarInfoEx used: not used, not examined yet */ |
1582 qxeGetWindowText (HWND hWnd, Extbyte * lpString, int nMaxCount) | 2618 |
1583 { | 2619 /* Error if EnumTimeFormats used: not used, not examined yet */ |
1584 if (XEUNICODE_P) | 2620 |
1585 return GetWindowTextW (hWnd, (LPWSTR) lpString, nMaxCount); | 2621 /* Error if EnumDateFormats used: not used, not examined yet */ |
1586 else | 2622 |
1587 return GetWindowTextA (hWnd, (LPSTR) lpString, nMaxCount); | 2623 /* Error if EnumDateFormatsEx used: not used, not examined yet */ |
1588 } | 2624 |
1589 | 2625 /* Error if GetStringTypeEx used: not used, not examined yet */ |
1590 int | 2626 |
1591 qxeGetWindowTextLength (HWND hWnd) | 2627 /* Error if GetStringType used: no such fun; A and W versions have different nos. of args */ |
1592 { | 2628 |
1593 if (XEUNICODE_P) | 2629 /* Error if FoldString used: not used, not examined yet */ |
1594 return GetWindowTextLengthW (hWnd); | 2630 |
1595 else | 2631 /* Error if EnumSystemLocales used: not used, not examined yet */ |
1596 return GetWindowTextLengthA (hWnd); | 2632 |
1597 } | 2633 /* Error if EnumSystemCodePages used: not used, not examined yet */ |
1598 | |
1599 int | |
1600 qxeMessageBox (HWND hWnd, const Extbyte * lpText, const Extbyte * lpCaption, UINT uType) | |
1601 { | |
1602 if (XEUNICODE_P) | |
1603 return MessageBoxW (hWnd, (LPCWSTR) lpText, (LPCWSTR) lpCaption, uType); | |
1604 else | |
1605 return MessageBoxA (hWnd, (LPCSTR) lpText, (LPCSTR) lpCaption, uType); | |
1606 } | |
1607 | |
1608 int | |
1609 qxeMessageBoxEx (HWND hWnd, const Extbyte * lpText, const Extbyte * lpCaption, UINT uType, WORD wLanguageId) | |
1610 { | |
1611 if (XEUNICODE_P) | |
1612 return MessageBoxExW (hWnd, (LPCWSTR) lpText, (LPCWSTR) lpCaption, uType, wLanguageId); | |
1613 else | |
1614 return MessageBoxExA (hWnd, (LPCSTR) lpText, (LPCSTR) lpCaption, uType, wLanguageId); | |
1615 } | |
1616 | |
1617 /* NOTE: NT 4.0+ only */ | |
1618 int | |
1619 qxeMessageBoxIndirect (LPMSGBOXPARAMSW arg1) | |
1620 { | |
1621 if (XEUNICODE_P) | |
1622 return MessageBoxIndirectW (arg1); | |
1623 else | |
1624 return MessageBoxIndirectA ((LPMSGBOXPARAMSA) arg1); | |
1625 } | |
1626 | |
1627 LONG | |
1628 qxeGetWindowLong (HWND hWnd, int nIndex) | |
1629 { | |
1630 if (XEUNICODE_P) | |
1631 return GetWindowLongW (hWnd, nIndex); | |
1632 else | |
1633 return GetWindowLongA (hWnd, nIndex); | |
1634 } | |
1635 | |
1636 LONG | |
1637 qxeSetWindowLong (HWND hWnd, int nIndex, LONG dwNewLong) | |
1638 { | |
1639 if (XEUNICODE_P) | |
1640 return SetWindowLongW (hWnd, nIndex, dwNewLong); | |
1641 else | |
1642 return SetWindowLongA (hWnd, nIndex, dwNewLong); | |
1643 } | |
1644 | |
1645 DWORD | |
1646 qxeGetClassLong (HWND hWnd, int nIndex) | |
1647 { | |
1648 if (XEUNICODE_P) | |
1649 return GetClassLongW (hWnd, nIndex); | |
1650 else | |
1651 return GetClassLongA (hWnd, nIndex); | |
1652 } | |
1653 | |
1654 DWORD | |
1655 qxeSetClassLong (HWND hWnd, int nIndex, LONG dwNewLong) | |
1656 { | |
1657 if (XEUNICODE_P) | |
1658 return SetClassLongW (hWnd, nIndex, dwNewLong); | |
1659 else | |
1660 return SetClassLongA (hWnd, nIndex, dwNewLong); | |
1661 } | |
1662 | |
1663 HWND | |
1664 qxeFindWindow (const Extbyte * lpClassName, const Extbyte * lpWindowName) | |
1665 { | |
1666 if (XEUNICODE_P) | |
1667 return FindWindowW ((LPCWSTR) lpClassName, (LPCWSTR) lpWindowName); | |
1668 else | |
1669 return FindWindowA ((LPCSTR) lpClassName, (LPCSTR) lpWindowName); | |
1670 } | |
1671 | |
1672 /* NOTE: NT 4.0+ only */ | |
1673 HWND | |
1674 qxeFindWindowEx (HWND arg1, HWND arg2, const Extbyte * arg3, const Extbyte * arg4) | |
1675 { | |
1676 if (XEUNICODE_P) | |
1677 return FindWindowExW (arg1, arg2, (LPCWSTR) arg3, (LPCWSTR) arg4); | |
1678 else | |
1679 return FindWindowExA (arg1, arg2, (LPCSTR) arg3, (LPCSTR) arg4); | |
1680 } | |
1681 | |
1682 int | |
1683 qxeGetClassName (HWND hWnd, Extbyte * lpClassName, int nMaxCount) | |
1684 { | |
1685 if (XEUNICODE_P) | |
1686 return GetClassNameW (hWnd, (LPWSTR) lpClassName, nMaxCount); | |
1687 else | |
1688 return GetClassNameA (hWnd, (LPSTR) lpClassName, nMaxCount); | |
1689 } | |
1690 | |
1691 /* Error if SetWindowsHook used: obsolete; two versions, STRICT and non-STRICT */ | |
1692 | |
1693 /* Error if SetWindowsHook used: obsolete; two versions, STRICT and non-STRICT */ | |
1694 | |
1695 HHOOK | |
1696 qxeSetWindowsHookEx (int idHook, HOOKPROC lpfn, HINSTANCE hmod, DWORD dwThreadId) | |
1697 { | |
1698 if (XEUNICODE_P) | |
1699 return SetWindowsHookExW (idHook, lpfn, hmod, dwThreadId); | |
1700 else | |
1701 return SetWindowsHookExA (idHook, lpfn, hmod, dwThreadId); | |
1702 } | |
1703 | |
1704 HBITMAP | |
1705 qxeLoadBitmap (HINSTANCE hInstance, const Extbyte * lpBitmapName) | |
1706 { | |
1707 if (XEUNICODE_P) | |
1708 return LoadBitmapW (hInstance, (LPCWSTR) lpBitmapName); | |
1709 else | |
1710 return LoadBitmapA (hInstance, (LPCSTR) lpBitmapName); | |
1711 } | |
1712 | |
1713 HCURSOR | |
1714 qxeLoadCursor (HINSTANCE hInstance, const Extbyte * lpCursorName) | |
1715 { | |
1716 if (XEUNICODE_P) | |
1717 return LoadCursorW (hInstance, (LPCWSTR) lpCursorName); | |
1718 else | |
1719 return LoadCursorA (hInstance, (LPCSTR) lpCursorName); | |
1720 } | |
1721 | |
1722 HCURSOR | |
1723 qxeLoadCursorFromFile (const Extbyte * lpFileName) | |
1724 { | |
1725 if (XEUNICODE_P) | |
1726 return LoadCursorFromFileW ((LPCWSTR) lpFileName); | |
1727 else | |
1728 return LoadCursorFromFileA ((LPCSTR) lpFileName); | |
1729 } | |
1730 | |
1731 HICON | |
1732 qxeLoadIcon (HINSTANCE hInstance, const Extbyte * lpIconName) | |
1733 { | |
1734 if (XEUNICODE_P) | |
1735 return LoadIconW (hInstance, (LPCWSTR) lpIconName); | |
1736 else | |
1737 return LoadIconA (hInstance, (LPCSTR) lpIconName); | |
1738 } | |
1739 | |
1740 /* NOTE: NT 4.0+ only */ | |
1741 HANDLE | |
1742 qxeLoadImage (HINSTANCE arg1, const Extbyte * arg2, UINT arg3, int arg4, int arg5, UINT arg6) | |
1743 { | |
1744 if (XEUNICODE_P) | |
1745 return LoadImageW (arg1, (LPCWSTR) arg2, arg3, arg4, arg5, arg6); | |
1746 else | |
1747 return LoadImageA (arg1, (LPCSTR) arg2, arg3, arg4, arg5, arg6); | |
1748 } | |
1749 | |
1750 int | |
1751 qxeLoadString (HINSTANCE hInstance, UINT uID, Extbyte * lpBuffer, int nBufferMax) | |
1752 { | |
1753 if (XEUNICODE_P) | |
1754 return LoadStringW (hInstance, uID, (LPWSTR) lpBuffer, nBufferMax); | |
1755 else | |
1756 return LoadStringA (hInstance, uID, (LPSTR) lpBuffer, nBufferMax); | |
1757 } | |
1758 | |
1759 BOOL | |
1760 qxeIsDialogMessage (HWND hDlg, LPMSG lpMsg) | |
1761 { | |
1762 if (XEUNICODE_P) | |
1763 return IsDialogMessageW (hDlg, lpMsg); | |
1764 else | |
1765 return IsDialogMessageA (hDlg, lpMsg); | |
1766 } | |
1767 | |
1768 int | |
1769 qxeDlgDirList (HWND hDlg, Extbyte * lpPathSpec, int nIDListBox, int nIDStaticPath, UINT uFileType) | |
1770 { | |
1771 if (XEUNICODE_P) | |
1772 return DlgDirListW (hDlg, (LPWSTR) lpPathSpec, nIDListBox, nIDStaticPath, uFileType); | |
1773 else | |
1774 return DlgDirListA (hDlg, (LPSTR) lpPathSpec, nIDListBox, nIDStaticPath, uFileType); | |
1775 } | |
1776 | |
1777 BOOL | |
1778 qxeDlgDirSelectEx (HWND hDlg, Extbyte * lpString, int nCount, int nIDListBox) | |
1779 { | |
1780 if (XEUNICODE_P) | |
1781 return DlgDirSelectExW (hDlg, (LPWSTR) lpString, nCount, nIDListBox); | |
1782 else | |
1783 return DlgDirSelectExA (hDlg, (LPSTR) lpString, nCount, nIDListBox); | |
1784 } | |
1785 | |
1786 int | |
1787 qxeDlgDirListComboBox (HWND hDlg, Extbyte * lpPathSpec, int nIDComboBox, int nIDStaticPath, UINT uFiletype) | |
1788 { | |
1789 if (XEUNICODE_P) | |
1790 return DlgDirListComboBoxW (hDlg, (LPWSTR) lpPathSpec, nIDComboBox, nIDStaticPath, uFiletype); | |
1791 else | |
1792 return DlgDirListComboBoxA (hDlg, (LPSTR) lpPathSpec, nIDComboBox, nIDStaticPath, uFiletype); | |
1793 } | |
1794 | |
1795 BOOL | |
1796 qxeDlgDirSelectComboBoxEx (HWND hDlg, Extbyte * lpString, int nCount, int nIDComboBox) | |
1797 { | |
1798 if (XEUNICODE_P) | |
1799 return DlgDirSelectComboBoxExW (hDlg, (LPWSTR) lpString, nCount, nIDComboBox); | |
1800 else | |
1801 return DlgDirSelectComboBoxExA (hDlg, (LPSTR) lpString, nCount, nIDComboBox); | |
1802 } | |
1803 | |
1804 LRESULT | |
1805 qxeDefFrameProc (HWND hWnd, HWND hWndMDIClient, UINT uMsg, WPARAM wParam, LPARAM lParam) | |
1806 { | |
1807 if (XEUNICODE_P) | |
1808 return DefFrameProcW (hWnd, hWndMDIClient, uMsg, wParam, lParam); | |
1809 else | |
1810 return DefFrameProcA (hWnd, hWndMDIClient, uMsg, wParam, lParam); | |
1811 } | |
1812 | |
1813 /* Error if DefMDIChildProc used: return value is conditionalized on _MAC, messes up parser */ | |
1814 | |
1815 HWND | |
1816 qxeCreateMDIWindow (Extbyte * lpClassName, Extbyte * lpWindowName, DWORD dwStyle, int X, int Y, int nWidth, int nHeight, HWND hWndParent, HINSTANCE hInstance, LPARAM lParam) | |
1817 { | |
1818 if (XEUNICODE_P) | |
1819 return CreateMDIWindowW ((LPWSTR) lpClassName, (LPWSTR) lpWindowName, dwStyle, X, Y, nWidth, nHeight, hWndParent, hInstance, lParam); | |
1820 else | |
1821 return CreateMDIWindowA ((LPSTR) lpClassName, (LPSTR) lpWindowName, dwStyle, X, Y, nWidth, nHeight, hWndParent, hInstance, lParam); | |
1822 } | |
1823 | |
1824 BOOL | |
1825 qxeWinHelp (HWND hWndMain, const Extbyte * lpszHelp, UINT uCommand, DWORD dwData) | |
1826 { | |
1827 if (XEUNICODE_P) | |
1828 return WinHelpW (hWndMain, (LPCWSTR) lpszHelp, uCommand, dwData); | |
1829 else | |
1830 return WinHelpA (hWndMain, (LPCSTR) lpszHelp, uCommand, dwData); | |
1831 } | |
1832 | |
1833 /* Error if ChangeDisplaySettings used: split-sized LPDEVMODE */ | |
1834 | |
1835 /* Error if ChangeDisplaySettingsEx used: split-sized LPDEVMODE; NT 5.0/Win98+ only */ | |
1836 | |
1837 /* Error if EnumDisplaySettings used: split-sized LPDEVMODE */ | |
1838 | |
1839 /* Error if EnumDisplayDevices used: split-sized PDISPLAY_DEVICE; NT 5.0+ only, no Win98 */ | |
1840 | |
1841 /* NOTE: probs w/ICONMETRICS, NONCLIENTMETRICS */ | |
1842 BOOL | |
1843 qxeSystemParametersInfo (UINT uiAction, UINT uiParam, PVOID pvParam, UINT fWinIni) | |
1844 { | |
1845 if (XEUNICODE_P) | |
1846 return SystemParametersInfoW (uiAction, uiParam, pvParam, fWinIni); | |
1847 else | |
1848 return SystemParametersInfoA (uiAction, uiParam, pvParam, fWinIni); | |
1849 } | |
1850 | |
1851 /* Error if GetMonitorInfo used: NT 5.0/Win98+ only */ | |
1852 | |
1853 /* Error if GetWindowModuleFileName used: NT 5.0+ only */ | |
1854 | |
1855 /* Error if RealGetWindowClass used: NT 5.0+ only */ | |
1856 | |
1857 /* Error if GetAltTabInfo used: NT 5.0+ only */ | |
1858 | |
1859 | |
1860 /*----------------------------------------------------------------------*/ | |
1861 /* Processing file DDEML.H */ | |
1862 /*----------------------------------------------------------------------*/ | |
1863 | |
1864 UINT | |
1865 qxeDdeInitialize (LPDWORD pidInst, PFNCALLBACK pfnCallback, DWORD afCmd, DWORD ulRes) | |
1866 { | |
1867 if (XEUNICODE_P) | |
1868 return DdeInitializeW (pidInst, pfnCallback, afCmd, ulRes); | |
1869 else | |
1870 return DdeInitializeA (pidInst, pfnCallback, afCmd, ulRes); | |
1871 } | |
1872 | |
1873 /* Skipping DdeCreateStringHandle because error in Cygwin prototype */ | |
1874 | |
1875 DWORD | |
1876 qxeDdeQueryString (DWORD idInst, HSZ hsz, Extbyte * psz, DWORD cchMax, int iCodePage) | |
1877 { | |
1878 if (XEUNICODE_P) | |
1879 return DdeQueryStringW (idInst, hsz, (LPWSTR) psz, cchMax, iCodePage); | |
1880 else | |
1881 return DdeQueryStringA (idInst, hsz, (LPSTR) psz, cchMax, iCodePage); | |
1882 } | |
1883 | 2634 |
1884 | 2635 |
1885 /*----------------------------------------------------------------------*/ | 2636 /*----------------------------------------------------------------------*/ |
1886 /* Processing file WINREG.H */ | 2637 /* Processing file WINREG.H */ |
1887 /*----------------------------------------------------------------------*/ | 2638 /*----------------------------------------------------------------------*/ |
2108 return AbortSystemShutdownA ((LPSTR) lpMachineName); | 2859 return AbortSystemShutdownA ((LPSTR) lpMachineName); |
2109 } | 2860 } |
2110 | 2861 |
2111 | 2862 |
2112 /*----------------------------------------------------------------------*/ | 2863 /*----------------------------------------------------------------------*/ |
2113 /* Processing file WINNLS.H */ | 2864 /* Processing file COMMDLG.H */ |
2114 /*----------------------------------------------------------------------*/ | 2865 /*----------------------------------------------------------------------*/ |
2115 | 2866 |
2116 /* Error if GetCPInfoEx used: not used, not examined yet */ | |
2117 | |
2118 /* Error if CompareString used: not used, not examined yet */ | |
2119 | |
2120 /* Error if LCMapString used: not used, not examined yet */ | |
2121 | |
2122 int | |
2123 qxeGetLocaleInfo (LCID Locale, LCTYPE LCType, Extbyte * lpLCData, int cchData) | |
2124 { | |
2125 if (XEUNICODE_P) | |
2126 return GetLocaleInfoW (Locale, LCType, (LPWSTR) lpLCData, cchData); | |
2127 else | |
2128 return GetLocaleInfoA (Locale, LCType, (LPSTR) lpLCData, cchData); | |
2129 } | |
2130 | |
2131 BOOL | |
2132 qxeSetLocaleInfo (LCID Locale, LCTYPE LCType, const Extbyte * lpLCData) | |
2133 { | |
2134 if (XEUNICODE_P) | |
2135 return SetLocaleInfoW (Locale, LCType, (LPCWSTR) lpLCData); | |
2136 else | |
2137 return SetLocaleInfoA (Locale, LCType, (LPCSTR) lpLCData); | |
2138 } | |
2139 | |
2140 /* Error if GetTimeFormat used: not used, not examined yet */ | |
2141 | |
2142 /* Error if GetDateFormat used: not used, not examined yet */ | |
2143 | |
2144 /* Error if GetNumberFormat used: not used, not examined yet */ | |
2145 | |
2146 /* Error if GetCurrencyFormat used: not used, not examined yet */ | |
2147 | |
2148 /* Error if EnumCalendarInfo used: not used, not examined yet */ | |
2149 | |
2150 /* Error if EnumCalendarInfoEx used: not used, not examined yet */ | |
2151 | |
2152 /* Error if EnumTimeFormats used: not used, not examined yet */ | |
2153 | |
2154 /* Error if EnumDateFormats used: not used, not examined yet */ | |
2155 | |
2156 /* Error if EnumDateFormatsEx used: not used, not examined yet */ | |
2157 | |
2158 /* Error if GetStringTypeEx used: not used, not examined yet */ | |
2159 | |
2160 /* Error if GetStringType used: no such fun; A and W versions have different nos. of args */ | |
2161 | |
2162 /* Error if FoldString used: not used, not examined yet */ | |
2163 | |
2164 /* Error if EnumSystemLocales used: not used, not examined yet */ | |
2165 | |
2166 /* Error if EnumSystemCodePages used: not used, not examined yet */ | |
2167 | |
2168 | |
2169 /*----------------------------------------------------------------------*/ | |
2170 /* Processing file IME.H */ | |
2171 /*----------------------------------------------------------------------*/ | |
2172 | |
2173 /* Error if SendIMEMessageEx used: obsolete, no docs available */ | |
2174 | |
2175 | |
2176 /*----------------------------------------------------------------------*/ | |
2177 /* Processing file WINGDI.H */ | |
2178 /*----------------------------------------------------------------------*/ | |
2179 | |
2180 int | |
2181 qxeAddFontResource (const Extbyte * arg1) | |
2182 { | |
2183 if (XEUNICODE_P) | |
2184 return AddFontResourceW ((LPCWSTR) arg1); | |
2185 else | |
2186 return AddFontResourceA ((LPCSTR) arg1); | |
2187 } | |
2188 | |
2189 HMETAFILE | |
2190 qxeCopyMetaFile (HMETAFILE arg1, const Extbyte * arg2) | |
2191 { | |
2192 if (XEUNICODE_P) | |
2193 return CopyMetaFileW (arg1, (LPCWSTR) arg2); | |
2194 else | |
2195 return CopyMetaFileA (arg1, (LPCSTR) arg2); | |
2196 } | |
2197 | |
2198 /* Skipping CreateDC because split-sized DEVMODE */ | |
2199 | |
2200 /* Skipping CreateFontIndirect because split-sized LOGFONT */ | |
2201 | |
2202 HFONT | |
2203 qxeCreateFont (int arg1, int arg2, int arg3, int arg4, int arg5, DWORD arg6, DWORD arg7, DWORD arg8, DWORD arg9, DWORD arg10, DWORD arg11, DWORD arg12, DWORD arg13, const Extbyte * arg14) | |
2204 { | |
2205 if (XEUNICODE_P) | |
2206 return CreateFontW (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, (LPCWSTR) arg14); | |
2207 else | |
2208 return CreateFontA (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, (LPCSTR) arg14); | |
2209 } | |
2210 | |
2211 /* Skipping CreateIC because split-sized DEVMODE */ | |
2212 | |
2213 HDC | |
2214 qxeCreateMetaFile (const Extbyte * arg1) | |
2215 { | |
2216 if (XEUNICODE_P) | |
2217 return CreateMetaFileW ((LPCWSTR) arg1); | |
2218 else | |
2219 return CreateMetaFileA ((LPCSTR) arg1); | |
2220 } | |
2221 | |
2222 BOOL | |
2223 qxeCreateScalableFontResource (DWORD arg1, const Extbyte * arg2, const Extbyte * arg3, const Extbyte * arg4) | |
2224 { | |
2225 if (XEUNICODE_P) | |
2226 return CreateScalableFontResourceW (arg1, (LPCWSTR) arg2, (LPCWSTR) arg3, (LPCWSTR) arg4); | |
2227 else | |
2228 return CreateScalableFontResourceA (arg1, (LPCSTR) arg2, (LPCSTR) arg3, (LPCSTR) arg4); | |
2229 } | |
2230 | |
2231 /* Skipping DeviceCapabilities because split-sized DEVMODE */ | |
2232 | |
2233 /* Skipping EnumFontFamiliesEx because split-complex FONTENUMPROC; NT 4.0+ only */ | |
2234 | |
2235 /* Error if EnumFontFamilies used: split-complex FONTENUMPROC */ | |
2236 | |
2237 /* Error if EnumFonts used: split-complex FONTENUMPROC */ | |
2238 | |
2239 BOOL | |
2240 qxeGetCharWidth (HDC arg1, UINT arg2, UINT arg3, LPINT arg4) | |
2241 { | |
2242 if (XEUNICODE_P) | |
2243 return GetCharWidthW (arg1, arg2, arg3, arg4); | |
2244 else | |
2245 return GetCharWidthA (arg1, arg2, arg3, arg4); | |
2246 } | |
2247 | |
2248 BOOL | |
2249 qxeGetCharWidth32 (HDC arg1, UINT arg2, UINT arg3, LPINT arg4) | |
2250 { | |
2251 if (XEUNICODE_P) | |
2252 return GetCharWidth32W (arg1, arg2, arg3, arg4); | |
2253 else | |
2254 return GetCharWidth32A (arg1, arg2, arg3, arg4); | |
2255 } | |
2256 | |
2257 BOOL | 2867 BOOL |
2258 qxeGetCharWidthFloat (HDC arg1, UINT arg2, UINT arg3, PFLOAT arg4) | 2868 qxeGetOpenFileName (LPOPENFILENAMEW arg1) |
2259 { | 2869 { |
2260 if (XEUNICODE_P) | 2870 if (XEUNICODE_P) |
2261 return GetCharWidthFloatW (arg1, arg2, arg3, arg4); | 2871 return GetOpenFileNameW (arg1); |
2262 else | 2872 else |
2263 return GetCharWidthFloatA (arg1, arg2, arg3, arg4); | 2873 return GetOpenFileNameA ((LPOPENFILENAMEA) arg1); |
2264 } | 2874 } |
2265 | 2875 |
2266 BOOL | 2876 BOOL |
2267 qxeGetCharABCWidths (HDC arg1, UINT arg2, UINT arg3, LPABC arg4) | 2877 qxeGetSaveFileName (LPOPENFILENAMEW arg1) |
2268 { | 2878 { |
2269 if (XEUNICODE_P) | 2879 if (XEUNICODE_P) |
2270 return GetCharABCWidthsW (arg1, arg2, arg3, arg4); | 2880 return GetSaveFileNameW (arg1); |
2271 else | 2881 else |
2272 return GetCharABCWidthsA (arg1, arg2, arg3, arg4); | 2882 return GetSaveFileNameA ((LPOPENFILENAMEA) arg1); |
2883 } | |
2884 | |
2885 short | |
2886 qxeGetFileTitle (const Extbyte * arg1, Extbyte * arg2, WORD arg3) | |
2887 { | |
2888 if (XEUNICODE_P) | |
2889 return GetFileTitleW ((LPCWSTR) arg1, (LPWSTR) arg2, arg3); | |
2890 else | |
2891 return GetFileTitleA ((LPCSTR) arg1, (LPSTR) arg2, arg3); | |
2273 } | 2892 } |
2274 | 2893 |
2275 BOOL | 2894 BOOL |
2276 qxeGetCharABCWidthsFloat (HDC arg1, UINT arg2, UINT arg3, LPABCFLOAT arg4) | 2895 qxeChooseColor (LPCHOOSECOLORW arg1) |
2277 { | 2896 { |
2278 if (XEUNICODE_P) | 2897 if (XEUNICODE_P) |
2279 return GetCharABCWidthsFloatW (arg1, arg2, arg3, arg4); | 2898 return ChooseColorW (arg1); |
2280 else | 2899 else |
2281 return GetCharABCWidthsFloatA (arg1, arg2, arg3, arg4); | 2900 return ChooseColorA ((LPCHOOSECOLORA) arg1); |
2282 } | 2901 } |
2283 | 2902 |
2284 DWORD | 2903 HWND |
2285 qxeGetGlyphOutline (HDC arg1, UINT arg2, UINT arg3, LPGLYPHMETRICS arg4, DWORD arg5, LPVOID arg6, CONST MAT2 * arg7) | 2904 qxeFindText (LPFINDREPLACEW arg1) |
2286 { | 2905 { |
2287 if (XEUNICODE_P) | 2906 if (XEUNICODE_P) |
2288 return GetGlyphOutlineW (arg1, arg2, arg3, arg4, arg5, arg6, arg7); | 2907 return FindTextW (arg1); |
2289 else | 2908 else |
2290 return GetGlyphOutlineA (arg1, arg2, arg3, arg4, arg5, arg6, arg7); | 2909 return FindTextA ((LPFINDREPLACEA) arg1); |
2291 } | 2910 } |
2292 | 2911 |
2293 HMETAFILE | 2912 HWND |
2294 qxeGetMetaFile (const Extbyte * arg1) | 2913 qxeReplaceText (LPFINDREPLACEW arg1) |
2295 { | 2914 { |
2296 if (XEUNICODE_P) | 2915 if (XEUNICODE_P) |
2297 return GetMetaFileW ((LPCWSTR) arg1); | 2916 return ReplaceTextW (arg1); |
2298 else | 2917 else |
2299 return GetMetaFileA ((LPCSTR) arg1); | 2918 return ReplaceTextA ((LPFINDREPLACEA) arg1); |
2300 } | 2919 } |
2301 | 2920 |
2302 /* Error if GetOutlineTextMetrics used: split-sized LPOUTLINETEXTMETRIC */ | 2921 /* Error if AfxReplaceText used: mac only */ |
2303 | 2922 |
2304 BOOL | 2923 /* Error if ChooseFont used: split-sized LPLOGFONT in LPCHOOSEFONT */ |
2305 qxeGetTextExtentPoint (HDC arg1, const Extbyte * arg2, int arg3, LPSIZE arg4) | 2924 |
2306 { | 2925 /* Skipping PrintDlg because LPPRINTDLG with split-sized DEVMODE handle */ |
2307 if (XEUNICODE_P) | 2926 |
2308 return GetTextExtentPointW (arg1, (LPCWSTR) arg2, arg3, arg4); | 2927 /* Skipping PageSetupDlg because LPPAGESETUPDLG with split-sized DEVMODE handle */ |
2309 else | |
2310 return GetTextExtentPointA (arg1, (LPCSTR) arg2, arg3, arg4); | |
2311 } | |
2312 | |
2313 BOOL | |
2314 qxeGetTextExtentPoint32 (HDC arg1, const Extbyte * arg2, int arg3, LPSIZE arg4) | |
2315 { | |
2316 if (XEUNICODE_P) | |
2317 return GetTextExtentPoint32W (arg1, (LPCWSTR) arg2, arg3, arg4); | |
2318 else | |
2319 return GetTextExtentPoint32A (arg1, (LPCSTR) arg2, arg3, arg4); | |
2320 } | |
2321 | |
2322 BOOL | |
2323 qxeGetTextExtentExPoint (HDC arg1, const Extbyte * arg2, int arg3, int arg4, LPINT arg5, LPINT arg6, LPSIZE arg7) | |
2324 { | |
2325 if (XEUNICODE_P) | |
2326 return GetTextExtentExPointW (arg1, (LPCWSTR) arg2, arg3, arg4, arg5, arg6, arg7); | |
2327 else | |
2328 return GetTextExtentExPointA (arg1, (LPCSTR) arg2, arg3, arg4, arg5, arg6, arg7); | |
2329 } | |
2330 | |
2331 /* NOTE: NT 4.0+ only */ | |
2332 DWORD | |
2333 qxeGetCharacterPlacement (HDC arg1, const Extbyte * arg2, int arg3, int arg4, LPGCP_RESULTSW arg5, DWORD arg6) | |
2334 { | |
2335 if (XEUNICODE_P) | |
2336 return GetCharacterPlacementW (arg1, (LPCWSTR) arg2, arg3, arg4, arg5, arg6); | |
2337 else | |
2338 return GetCharacterPlacementA (arg1, (LPCSTR) arg2, arg3, arg4, (LPGCP_RESULTSA) arg5, arg6); | |
2339 } | |
2340 | |
2341 /* Error if GetGlyphIndices used: NT 5.0+ only */ | |
2342 | |
2343 /* Error if AddFontResourceEx used: NT 5.0+ only */ | |
2344 | |
2345 /* Error if RemoveFontResourceEx used: NT 5.0+ only */ | |
2346 | |
2347 /* Error if CreateFontIndirectEx used: split-sized ENUMLOGFONTEXDV; NT 5.0+ only */ | |
2348 | |
2349 /* Skipping ResetDC because split-sized DEVMODE */ | |
2350 | |
2351 BOOL | |
2352 qxeRemoveFontResource (const Extbyte * arg1) | |
2353 { | |
2354 if (XEUNICODE_P) | |
2355 return RemoveFontResourceW ((LPCWSTR) arg1); | |
2356 else | |
2357 return RemoveFontResourceA ((LPCSTR) arg1); | |
2358 } | |
2359 | |
2360 HENHMETAFILE | |
2361 qxeCopyEnhMetaFile (HENHMETAFILE arg1, const Extbyte * arg2) | |
2362 { | |
2363 if (XEUNICODE_P) | |
2364 return CopyEnhMetaFileW (arg1, (LPCWSTR) arg2); | |
2365 else | |
2366 return CopyEnhMetaFileA (arg1, (LPCSTR) arg2); | |
2367 } | |
2368 | |
2369 HDC | |
2370 qxeCreateEnhMetaFile (HDC arg1, const Extbyte * arg2, CONST RECT * arg3, const Extbyte * arg4) | |
2371 { | |
2372 if (XEUNICODE_P) | |
2373 return CreateEnhMetaFileW (arg1, (LPCWSTR) arg2, arg3, (LPCWSTR) arg4); | |
2374 else | |
2375 return CreateEnhMetaFileA (arg1, (LPCSTR) arg2, arg3, (LPCSTR) arg4); | |
2376 } | |
2377 | |
2378 HENHMETAFILE | |
2379 qxeGetEnhMetaFile (const Extbyte * arg1) | |
2380 { | |
2381 if (XEUNICODE_P) | |
2382 return GetEnhMetaFileW ((LPCWSTR) arg1); | |
2383 else | |
2384 return GetEnhMetaFileA ((LPCSTR) arg1); | |
2385 } | |
2386 | |
2387 UINT | |
2388 qxeGetEnhMetaFileDescription (HENHMETAFILE arg1, UINT arg2, Extbyte * arg3) | |
2389 { | |
2390 if (XEUNICODE_P) | |
2391 return GetEnhMetaFileDescriptionW (arg1, arg2, (LPWSTR) arg3); | |
2392 else | |
2393 return GetEnhMetaFileDescriptionA (arg1, arg2, (LPSTR) arg3); | |
2394 } | |
2395 | |
2396 /* Skipping GetTextMetrics because split-sized LPTEXTMETRIC */ | |
2397 | |
2398 int | |
2399 qxeStartDoc (HDC arg1, CONST DOCINFOW * arg2) | |
2400 { | |
2401 if (XEUNICODE_P) | |
2402 return StartDocW (arg1, arg2); | |
2403 else | |
2404 return StartDocA (arg1, (CONST DOCINFOA *) arg2); | |
2405 } | |
2406 | |
2407 /* Skipping GetObject because split-sized LOGFONT */ | |
2408 | |
2409 BOOL | |
2410 qxeTextOut (HDC arg1, int arg2, int arg3, const Extbyte * arg4, int arg5) | |
2411 { | |
2412 if (XEUNICODE_P) | |
2413 return TextOutW (arg1, arg2, arg3, (LPCWSTR) arg4, arg5); | |
2414 else | |
2415 return TextOutA (arg1, arg2, arg3, (LPCSTR) arg4, arg5); | |
2416 } | |
2417 | |
2418 BOOL | |
2419 qxeExtTextOut (HDC arg1, int arg2, int arg3, UINT arg4, CONST RECT * arg5, const Extbyte * arg6, UINT arg7, CONST INT * arg8) | |
2420 { | |
2421 if (XEUNICODE_P) | |
2422 return ExtTextOutW (arg1, arg2, arg3, arg4, arg5, (LPCWSTR) arg6, arg7, arg8); | |
2423 else | |
2424 return ExtTextOutA (arg1, arg2, arg3, arg4, arg5, (LPCSTR) arg6, arg7, arg8); | |
2425 } | |
2426 | |
2427 BOOL | |
2428 qxePolyTextOut (HDC arg1, CONST POLYTEXTW * arg2, int arg3) | |
2429 { | |
2430 if (XEUNICODE_P) | |
2431 return PolyTextOutW (arg1, arg2, arg3); | |
2432 else | |
2433 return PolyTextOutA (arg1, (CONST POLYTEXTA *) arg2, arg3); | |
2434 } | |
2435 | |
2436 int | |
2437 qxeGetTextFace (HDC arg1, int arg2, Extbyte * arg3) | |
2438 { | |
2439 if (XEUNICODE_P) | |
2440 return GetTextFaceW (arg1, arg2, (LPWSTR) arg3); | |
2441 else | |
2442 return GetTextFaceA (arg1, arg2, (LPSTR) arg3); | |
2443 } | |
2444 | |
2445 DWORD | |
2446 qxeGetKerningPairs (HDC arg1, DWORD arg2, LPKERNINGPAIR arg3) | |
2447 { | |
2448 if (XEUNICODE_P) | |
2449 return GetKerningPairsW (arg1, arg2, arg3); | |
2450 else | |
2451 return GetKerningPairsA (arg1, arg2, arg3); | |
2452 } | |
2453 | |
2454 /* Error if GetLogColorSpace used: split-sized LPLOGCOLORSPACE; NT 4.0+ only */ | |
2455 | |
2456 /* Error if CreateColorSpace used: split-sized LPLOGCOLORSPACE; NT 4.0+ only */ | |
2457 | |
2458 /* Skipping GetICMProfile because NT 4.0+ only, error in Cygwin prototype */ | |
2459 | |
2460 /* NOTE: NT 4.0+ only */ | |
2461 BOOL | |
2462 qxeSetICMProfile (HDC arg1, Extbyte * arg2) | |
2463 { | |
2464 if (XEUNICODE_P) | |
2465 return SetICMProfileW (arg1, (LPWSTR) arg2); | |
2466 else | |
2467 return SetICMProfileA (arg1, (LPSTR) arg2); | |
2468 } | |
2469 | |
2470 /* NOTE: NT 4.0+ only */ | |
2471 int | |
2472 qxeEnumICMProfiles (HDC arg1, ICMENUMPROCW arg2, LPARAM arg3) | |
2473 { | |
2474 if (XEUNICODE_P) | |
2475 return EnumICMProfilesW (arg1, arg2, arg3); | |
2476 else | |
2477 return EnumICMProfilesA (arg1, (ICMENUMPROCA) arg2, arg3); | |
2478 } | |
2479 | |
2480 /* Skipping UpdateICMRegKey because NT 4.0+ only, error in Cygwin prototype */ | |
2481 | |
2482 /* Error if wglUseFontBitmaps used: causes link error */ | |
2483 | |
2484 /* Error if wglUseFontOutlines used: causes link error */ | |
2485 | 2928 |
2486 | 2929 |
2487 /*----------------------------------------------------------------------*/ | 2930 /*----------------------------------------------------------------------*/ |
2488 /* Processing file SHLOBJ.H */ | 2931 /* Processing file SHLOBJ.H */ |
2489 /*----------------------------------------------------------------------*/ | 2932 /*----------------------------------------------------------------------*/ |
2503 | 2946 |
2504 /* Skipping SHGetDataFromIDList because split-sized WIN32_FIND_DATA or split-simple NETRESOURCE, missing from Cygwin libraries */ | 2947 /* Skipping SHGetDataFromIDList because split-sized WIN32_FIND_DATA or split-simple NETRESOURCE, missing from Cygwin libraries */ |
2505 | 2948 |
2506 | 2949 |
2507 /*----------------------------------------------------------------------*/ | 2950 /*----------------------------------------------------------------------*/ |
2508 /* Processing file COMMDLG.H */ | |
2509 /*----------------------------------------------------------------------*/ | |
2510 | |
2511 BOOL | |
2512 qxeGetOpenFileName (LPOPENFILENAMEW arg1) | |
2513 { | |
2514 if (XEUNICODE_P) | |
2515 return GetOpenFileNameW (arg1); | |
2516 else | |
2517 return GetOpenFileNameA ((LPOPENFILENAMEA) arg1); | |
2518 } | |
2519 | |
2520 BOOL | |
2521 qxeGetSaveFileName (LPOPENFILENAMEW arg1) | |
2522 { | |
2523 if (XEUNICODE_P) | |
2524 return GetSaveFileNameW (arg1); | |
2525 else | |
2526 return GetSaveFileNameA ((LPOPENFILENAMEA) arg1); | |
2527 } | |
2528 | |
2529 short | |
2530 qxeGetFileTitle (const Extbyte * arg1, Extbyte * arg2, WORD arg3) | |
2531 { | |
2532 if (XEUNICODE_P) | |
2533 return GetFileTitleW ((LPCWSTR) arg1, (LPWSTR) arg2, arg3); | |
2534 else | |
2535 return GetFileTitleA ((LPCSTR) arg1, (LPSTR) arg2, arg3); | |
2536 } | |
2537 | |
2538 BOOL | |
2539 qxeChooseColor (LPCHOOSECOLORW arg1) | |
2540 { | |
2541 if (XEUNICODE_P) | |
2542 return ChooseColorW (arg1); | |
2543 else | |
2544 return ChooseColorA ((LPCHOOSECOLORA) arg1); | |
2545 } | |
2546 | |
2547 HWND | |
2548 qxeFindText (LPFINDREPLACEW arg1) | |
2549 { | |
2550 if (XEUNICODE_P) | |
2551 return FindTextW (arg1); | |
2552 else | |
2553 return FindTextA ((LPFINDREPLACEA) arg1); | |
2554 } | |
2555 | |
2556 HWND | |
2557 qxeReplaceText (LPFINDREPLACEW arg1) | |
2558 { | |
2559 if (XEUNICODE_P) | |
2560 return ReplaceTextW (arg1); | |
2561 else | |
2562 return ReplaceTextA ((LPFINDREPLACEA) arg1); | |
2563 } | |
2564 | |
2565 /* Error if AfxReplaceText used: mac only */ | |
2566 | |
2567 /* Error if ChooseFont used: split-sized LPLOGFONT in LPCHOOSEFONT */ | |
2568 | |
2569 /* Skipping PrintDlg because LPPRINTDLG with split-sized DEVMODE handle */ | |
2570 | |
2571 /* Skipping PageSetupDlg because LPPAGESETUPDLG with split-sized DEVMODE handle */ | |
2572 | |
2573 | |
2574 /*----------------------------------------------------------------------*/ | |
2575 /* Processing file IMM.H */ | |
2576 /*----------------------------------------------------------------------*/ | |
2577 | |
2578 #if defined (HAVE_MS_WINDOWS) | |
2579 | |
2580 HKL | |
2581 qxeImmInstallIME (const Extbyte * lpszIMEFileName, const Extbyte * lpszLayoutText) | |
2582 { | |
2583 if (XEUNICODE_P) | |
2584 return ImmInstallIMEW ((LPCWSTR) lpszIMEFileName, (LPCWSTR) lpszLayoutText); | |
2585 else | |
2586 return ImmInstallIMEA ((LPCSTR) lpszIMEFileName, (LPCSTR) lpszLayoutText); | |
2587 } | |
2588 | |
2589 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2590 | |
2591 #if defined (HAVE_MS_WINDOWS) | |
2592 | |
2593 UINT | |
2594 qxeImmGetDescription (HKL arg1, Extbyte * arg2, UINT uBufLen) | |
2595 { | |
2596 if (XEUNICODE_P) | |
2597 return ImmGetDescriptionW (arg1, (LPWSTR) arg2, uBufLen); | |
2598 else | |
2599 return ImmGetDescriptionA (arg1, (LPSTR) arg2, uBufLen); | |
2600 } | |
2601 | |
2602 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2603 | |
2604 #if defined (HAVE_MS_WINDOWS) | |
2605 | |
2606 UINT | |
2607 qxeImmGetIMEFileName (HKL arg1, Extbyte * arg2, UINT uBufLen) | |
2608 { | |
2609 if (XEUNICODE_P) | |
2610 return ImmGetIMEFileNameW (arg1, (LPWSTR) arg2, uBufLen); | |
2611 else | |
2612 return ImmGetIMEFileNameA (arg1, (LPSTR) arg2, uBufLen); | |
2613 } | |
2614 | |
2615 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2616 | |
2617 #if defined (HAVE_MS_WINDOWS) | |
2618 | |
2619 LONG | |
2620 qxeImmGetCompositionString (HIMC arg1, DWORD arg2, LPVOID arg3, DWORD arg4) | |
2621 { | |
2622 if (XEUNICODE_P) | |
2623 return ImmGetCompositionStringW (arg1, arg2, arg3, arg4); | |
2624 else | |
2625 return ImmGetCompositionStringA (arg1, arg2, arg3, arg4); | |
2626 } | |
2627 | |
2628 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2629 | |
2630 #if defined (HAVE_MS_WINDOWS) | |
2631 | |
2632 DWORD | |
2633 qxeImmGetCandidateListCount (HIMC arg1, LPDWORD lpdwListCount) | |
2634 { | |
2635 if (XEUNICODE_P) | |
2636 return ImmGetCandidateListCountW (arg1, lpdwListCount); | |
2637 else | |
2638 return ImmGetCandidateListCountA (arg1, lpdwListCount); | |
2639 } | |
2640 | |
2641 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2642 | |
2643 #if defined (HAVE_MS_WINDOWS) | |
2644 | |
2645 DWORD | |
2646 qxeImmGetCandidateList (HIMC arg1, DWORD deIndex, LPCANDIDATELIST arg3, DWORD dwBufLen) | |
2647 { | |
2648 if (XEUNICODE_P) | |
2649 return ImmGetCandidateListW (arg1, deIndex, arg3, dwBufLen); | |
2650 else | |
2651 return ImmGetCandidateListA (arg1, deIndex, arg3, dwBufLen); | |
2652 } | |
2653 | |
2654 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2655 | |
2656 #if defined (HAVE_MS_WINDOWS) | |
2657 | |
2658 DWORD | |
2659 qxeImmGetGuideLine (HIMC arg1, DWORD dwIndex, Extbyte * arg3, DWORD dwBufLen) | |
2660 { | |
2661 if (XEUNICODE_P) | |
2662 return ImmGetGuideLineW (arg1, dwIndex, (LPWSTR) arg3, dwBufLen); | |
2663 else | |
2664 return ImmGetGuideLineA (arg1, dwIndex, (LPSTR) arg3, dwBufLen); | |
2665 } | |
2666 | |
2667 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2668 | |
2669 #if defined (HAVE_MS_WINDOWS) | |
2670 | |
2671 /* Skipping ImmGetCompositionFont because split-sized LOGFONT */ | |
2672 | |
2673 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2674 | |
2675 #if defined (HAVE_MS_WINDOWS) | |
2676 | |
2677 /* Skipping ImmSetCompositionFont because split-sized LOGFONT */ | |
2678 | |
2679 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2680 | |
2681 #if defined (HAVE_MS_WINDOWS) | |
2682 | |
2683 /* NOTE: // split-simple REGISTERWORD */ | |
2684 BOOL | |
2685 qxeImmConfigureIME (HKL arg1, HWND arg2, DWORD arg3, LPVOID arg4) | |
2686 { | |
2687 if (XEUNICODE_P) | |
2688 return ImmConfigureIMEW (arg1, arg2, arg3, arg4); | |
2689 else | |
2690 return ImmConfigureIMEA (arg1, arg2, arg3, arg4); | |
2691 } | |
2692 | |
2693 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2694 | |
2695 #if defined (HAVE_MS_WINDOWS) | |
2696 | |
2697 /* NOTE: // strings of various sorts */ | |
2698 LRESULT | |
2699 qxeImmEscape (HKL arg1, HIMC arg2, UINT arg3, LPVOID arg4) | |
2700 { | |
2701 if (XEUNICODE_P) | |
2702 return ImmEscapeW (arg1, arg2, arg3, arg4); | |
2703 else | |
2704 return ImmEscapeA (arg1, arg2, arg3, arg4); | |
2705 } | |
2706 | |
2707 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2708 | |
2709 #if defined (HAVE_MS_WINDOWS) | |
2710 | |
2711 DWORD | |
2712 qxeImmGetConversionList (HKL arg1, HIMC arg2, const Extbyte * arg3, LPCANDIDATELIST arg4, DWORD dwBufLen, UINT uFlag) | |
2713 { | |
2714 if (XEUNICODE_P) | |
2715 return ImmGetConversionListW (arg1, arg2, (LPCWSTR) arg3, arg4, dwBufLen, uFlag); | |
2716 else | |
2717 return ImmGetConversionListA (arg1, arg2, (LPCSTR) arg3, arg4, dwBufLen, uFlag); | |
2718 } | |
2719 | |
2720 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2721 | |
2722 #if defined (HAVE_MS_WINDOWS) | |
2723 | |
2724 BOOL | |
2725 qxeImmIsUIMessage (HWND arg1, UINT arg2, WPARAM arg3, LPARAM arg4) | |
2726 { | |
2727 if (XEUNICODE_P) | |
2728 return ImmIsUIMessageW (arg1, arg2, arg3, arg4); | |
2729 else | |
2730 return ImmIsUIMessageA (arg1, arg2, arg3, arg4); | |
2731 } | |
2732 | |
2733 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2734 | |
2735 #if defined (HAVE_MS_WINDOWS) | |
2736 | |
2737 BOOL | |
2738 qxeImmRegisterWord (HKL arg1, const Extbyte * lpszReading, DWORD arg3, const Extbyte * lpszRegister) | |
2739 { | |
2740 if (XEUNICODE_P) | |
2741 return ImmRegisterWordW (arg1, (LPCWSTR) lpszReading, arg3, (LPCWSTR) lpszRegister); | |
2742 else | |
2743 return ImmRegisterWordA (arg1, (LPCSTR) lpszReading, arg3, (LPCSTR) lpszRegister); | |
2744 } | |
2745 | |
2746 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2747 | |
2748 #if defined (HAVE_MS_WINDOWS) | |
2749 | |
2750 BOOL | |
2751 qxeImmUnregisterWord (HKL arg1, const Extbyte * lpszReading, DWORD arg3, const Extbyte * lpszUnregister) | |
2752 { | |
2753 if (XEUNICODE_P) | |
2754 return ImmUnregisterWordW (arg1, (LPCWSTR) lpszReading, arg3, (LPCWSTR) lpszUnregister); | |
2755 else | |
2756 return ImmUnregisterWordA (arg1, (LPCSTR) lpszReading, arg3, (LPCSTR) lpszUnregister); | |
2757 } | |
2758 | |
2759 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2760 | |
2761 #if defined (HAVE_MS_WINDOWS) | |
2762 | |
2763 /* Error if ImmGetRegisterWordStyle used: split-sized STYLEBUF */ | |
2764 | |
2765 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2766 | |
2767 #if defined (HAVE_MS_WINDOWS) | |
2768 | |
2769 UINT | |
2770 qxeImmEnumRegisterWord (HKL arg1, REGISTERWORDENUMPROCW arg2, const Extbyte * lpszReading, DWORD arg4, const Extbyte * lpszRegister, LPVOID arg6) | |
2771 { | |
2772 if (XEUNICODE_P) | |
2773 return ImmEnumRegisterWordW (arg1, arg2, (LPCWSTR) lpszReading, arg4, (LPCWSTR) lpszRegister, arg6); | |
2774 else | |
2775 return ImmEnumRegisterWordA (arg1, (REGISTERWORDENUMPROCA) arg2, (LPCSTR) lpszReading, arg4, (LPCSTR) lpszRegister, arg6); | |
2776 } | |
2777 | |
2778 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2779 | |
2780 #if defined (HAVE_MS_WINDOWS) | |
2781 | |
2782 /* Error if ImmGetImeMenuItems used: split-sized IMEMENUITEMINFO */ | |
2783 | |
2784 #endif /* defined (HAVE_MS_WINDOWS) */ | |
2785 | |
2786 | |
2787 /*----------------------------------------------------------------------*/ | |
2788 /* Processing file WINBASE.H */ | 2951 /* Processing file WINBASE.H */ |
2789 /*----------------------------------------------------------------------*/ | 2952 /*----------------------------------------------------------------------*/ |
2790 | 2953 |
2791 BOOL | 2954 BOOL |
2792 qxeGetBinaryType (const Extbyte * lpApplicationName, LPDWORD lpBinaryType) | 2955 qxeGetBinaryType (const Extbyte * lpApplicationName, LPDWORD lpBinaryType) |
3130 return FindResourceExW (hModule, (LPCWSTR) lpType, (LPCWSTR) lpName, wLanguage); | 3293 return FindResourceExW (hModule, (LPCWSTR) lpType, (LPCWSTR) lpName, wLanguage); |
3131 else | 3294 else |
3132 return FindResourceExA (hModule, (LPCSTR) lpType, (LPCSTR) lpName, wLanguage); | 3295 return FindResourceExA (hModule, (LPCSTR) lpType, (LPCSTR) lpName, wLanguage); |
3133 } | 3296 } |
3134 | 3297 |
3298 /* Skipping EnumResourceTypes because different prototypes in VC6 and VC7 */ | |
3299 | |
3300 /* Skipping EnumResourceNames because different prototypes in VC6 and VC7 */ | |
3301 | |
3302 /* Skipping EnumResourceLanguages because different prototypes in VC6 and VC7 */ | |
3303 | |
3135 HANDLE | 3304 HANDLE |
3136 qxeBeginUpdateResource (const Extbyte * pFileName, BOOL bDeleteExistingResources) | 3305 qxeBeginUpdateResource (const Extbyte * pFileName, BOOL bDeleteExistingResources) |
3137 { | 3306 { |
3138 if (XEUNICODE_P) | 3307 if (XEUNICODE_P) |
3139 return BeginUpdateResourceW ((LPCWSTR) pFileName, bDeleteExistingResources); | 3308 return BeginUpdateResourceW ((LPCWSTR) pFileName, bDeleteExistingResources); |
3931 | 4100 |
3932 /* Error if OpenJobObject used: NT 5.0+ only */ | 4101 /* Error if OpenJobObject used: NT 5.0+ only */ |
3933 | 4102 |
3934 | 4103 |
3935 /*----------------------------------------------------------------------*/ | 4104 /*----------------------------------------------------------------------*/ |
3936 /* Processing file MMSYSTEM.H */ | 4105 /* Processing file ACLAPI.h */ |
3937 /*----------------------------------------------------------------------*/ | 4106 /*----------------------------------------------------------------------*/ |
3938 | 4107 |
3939 BOOL | 4108 DWORD |
3940 qxesndPlaySound (const Extbyte * pszSound, UINT fuSound) | 4109 qxeGetNamedSecurityInfo (IN Extbyte * pObjectName, IN SE_OBJECT_TYPE ObjectType, IN SECURITY_INFORMATION SecurityInfo, OUT PSID * ppsidOowner, OUT PSID * ppsidGroup, OUT PACL * ppDacl, OUT PACL * ppSacl, OUT PSECURITY_DESCRIPTOR * ppSecurityDescriptor) |
3941 { | 4110 { |
3942 if (XEUNICODE_P) | 4111 if (XEUNICODE_P) |
3943 return sndPlaySoundW ((LPCWSTR) pszSound, fuSound); | 4112 return GetNamedSecurityInfoW ((IN LPWSTR) pObjectName, ObjectType, SecurityInfo, ppsidOowner, ppsidGroup, ppDacl, ppSacl, ppSecurityDescriptor); |
3944 else | 4113 else |
3945 return sndPlaySoundA ((LPCSTR) pszSound, fuSound); | 4114 return GetNamedSecurityInfoA ((IN LPSTR) pObjectName, ObjectType, SecurityInfo, ppsidOowner, ppsidGroup, ppDacl, ppSacl, ppSecurityDescriptor); |
3946 } | 4115 } |
3947 | 4116 |
3948 BOOL | |
3949 qxePlaySound (const Extbyte * pszSound, HMODULE hmod, DWORD fdwSound) | |
3950 { | |
3951 if (XEUNICODE_P) | |
3952 return PlaySoundW ((LPCWSTR) pszSound, hmod, fdwSound); | |
3953 else | |
3954 return PlaySoundA ((LPCSTR) pszSound, hmod, fdwSound); | |
3955 } | |
3956 | |
3957 /* Error if waveOutGetDevCaps used: split-sized LPWAVEOUTCAPS */ | |
3958 | |
3959 MMRESULT | |
3960 qxewaveOutGetErrorText (MMRESULT mmrError, Extbyte * pszText, UINT cchText) | |
3961 { | |
3962 if (XEUNICODE_P) | |
3963 return waveOutGetErrorTextW (mmrError, (LPWSTR) pszText, cchText); | |
3964 else | |
3965 return waveOutGetErrorTextA (mmrError, (LPSTR) pszText, cchText); | |
3966 } | |
3967 | |
3968 /* Error if waveInGetDevCaps used: split-sized LPWAVEINCAPS */ | |
3969 | |
3970 MMRESULT | |
3971 qxewaveInGetErrorText (MMRESULT mmrError, Extbyte * pszText, UINT cchText) | |
3972 { | |
3973 if (XEUNICODE_P) | |
3974 return waveInGetErrorTextW (mmrError, (LPWSTR) pszText, cchText); | |
3975 else | |
3976 return waveInGetErrorTextA (mmrError, (LPSTR) pszText, cchText); | |
3977 } | |
3978 | |
3979 /* Error if midiOutGetDevCaps used: split-sized LPMIDIOUTCAPS */ | |
3980 | |
3981 MMRESULT | |
3982 qxemidiOutGetErrorText (MMRESULT mmrError, Extbyte * pszText, UINT cchText) | |
3983 { | |
3984 if (XEUNICODE_P) | |
3985 return midiOutGetErrorTextW (mmrError, (LPWSTR) pszText, cchText); | |
3986 else | |
3987 return midiOutGetErrorTextA (mmrError, (LPSTR) pszText, cchText); | |
3988 } | |
3989 | |
3990 /* Error if midiInGetDevCaps used: split-sized LPMIDIOUTCAPS */ | |
3991 | |
3992 MMRESULT | |
3993 qxemidiInGetErrorText (MMRESULT mmrError, Extbyte * pszText, UINT cchText) | |
3994 { | |
3995 if (XEUNICODE_P) | |
3996 return midiInGetErrorTextW (mmrError, (LPWSTR) pszText, cchText); | |
3997 else | |
3998 return midiInGetErrorTextA (mmrError, (LPSTR) pszText, cchText); | |
3999 } | |
4000 | |
4001 /* Error if auxGetDevCaps used: split-sized LPAUXCAPS */ | |
4002 | |
4003 /* Error if mixerGetDevCaps used: split-sized LPMIXERCAPS */ | |
4004 | |
4005 /* Error if mixerGetLineInfo used: split-sized LPMIXERLINE */ | |
4006 | |
4007 /* Error if mixerGetLineControls used: split-sized LPMIXERCONTROL */ | |
4008 | |
4009 /* Error if mixerGetControlDetails used: split-sized LPMIXERCONTROL in LPMIXERLINECONTROLS in LPMIXERCONTROLDETAILS */ | |
4010 | |
4011 /* Error if joyGetDevCaps used: split-sized LPJOYCAPS */ | |
4012 | |
4013 FOURCC | |
4014 qxemmioStringToFOURCC (const Extbyte * sz, UINT uFlags) | |
4015 { | |
4016 if (XEUNICODE_P) | |
4017 return mmioStringToFOURCCW ((LPCWSTR) sz, uFlags); | |
4018 else | |
4019 return mmioStringToFOURCCA ((LPCSTR) sz, uFlags); | |
4020 } | |
4021 | |
4022 LPMMIOPROC | |
4023 qxemmioInstallIOProc (FOURCC fccIOProc, LPMMIOPROC pIOProc, DWORD dwFlags) | |
4024 { | |
4025 if (XEUNICODE_P) | |
4026 return mmioInstallIOProcW (fccIOProc, pIOProc, dwFlags); | |
4027 else | |
4028 return mmioInstallIOProcA (fccIOProc, pIOProc, dwFlags); | |
4029 } | |
4030 | |
4031 HMMIO | |
4032 qxemmioOpen (Extbyte * pszFileName, LPMMIOINFO pmmioinfo, DWORD fdwOpen) | |
4033 { | |
4034 if (XEUNICODE_P) | |
4035 return mmioOpenW ((LPWSTR) pszFileName, pmmioinfo, fdwOpen); | |
4036 else | |
4037 return mmioOpenA ((LPSTR) pszFileName, pmmioinfo, fdwOpen); | |
4038 } | |
4039 | |
4040 MMRESULT | |
4041 qxemmioRename (const Extbyte * pszFileName, const Extbyte * pszNewFileName, LPCMMIOINFO pmmioinfo, DWORD fdwRename) | |
4042 { | |
4043 if (XEUNICODE_P) | |
4044 return mmioRenameW ((LPCWSTR) pszFileName, (LPCWSTR) pszNewFileName, pmmioinfo, fdwRename); | |
4045 else | |
4046 return mmioRenameA ((LPCSTR) pszFileName, (LPCSTR) pszNewFileName, pmmioinfo, fdwRename); | |
4047 } | |
4048 | |
4049 MCIERROR | |
4050 qxemciSendCommand (MCIDEVICEID mciId, UINT uMsg, DWORD dwParam1, DWORD dwParam2) | |
4051 { | |
4052 if (XEUNICODE_P) | |
4053 return mciSendCommandW (mciId, uMsg, dwParam1, dwParam2); | |
4054 else | |
4055 return mciSendCommandA (mciId, uMsg, dwParam1, dwParam2); | |
4056 } | |
4057 | |
4058 MCIERROR | |
4059 qxemciSendString (const Extbyte * lpstrCommand, Extbyte * lpstrReturnString, UINT uReturnLength, HWND hwndCallback) | |
4060 { | |
4061 if (XEUNICODE_P) | |
4062 return mciSendStringW ((LPCWSTR) lpstrCommand, (LPWSTR) lpstrReturnString, uReturnLength, hwndCallback); | |
4063 else | |
4064 return mciSendStringA ((LPCSTR) lpstrCommand, (LPSTR) lpstrReturnString, uReturnLength, hwndCallback); | |
4065 } | |
4066 | |
4067 MCIDEVICEID | |
4068 qxemciGetDeviceID (const Extbyte * pszDevice) | |
4069 { | |
4070 if (XEUNICODE_P) | |
4071 return mciGetDeviceIDW ((LPCWSTR) pszDevice); | |
4072 else | |
4073 return mciGetDeviceIDA ((LPCSTR) pszDevice); | |
4074 } | |
4075 | |
4076 #if !defined (MINGW) | |
4077 | |
4078 /* Error if mciGetDeviceIDFromElementID used: missing from Win98se version of ADVAPI32.dll */ | |
4079 | |
4080 #endif /* !defined (MINGW) */ | |
4081 | |
4082 BOOL | |
4083 qxemciGetErrorString (MCIERROR mcierr, Extbyte * pszText, UINT cchText) | |
4084 { | |
4085 if (XEUNICODE_P) | |
4086 return mciGetErrorStringW (mcierr, (LPWSTR) pszText, cchText); | |
4087 else | |
4088 return mciGetErrorStringA (mcierr, (LPSTR) pszText, cchText); | |
4089 } | |
4090 |