comparison src/syswindows.h @ 1683:74353ce403ce

[xemacs-hg @ 2003-09-15 15:24:56 by james] Fix some brokenness for new w32api versions on Cygwin.
author james
date Mon, 15 Sep 2003 15:24:57 +0000
parents 579d37cb4395
children 29c45c1b64f3
comparison
equal deleted inserted replaced
1682:33ac0945e3a2 1683:74353ce403ce
149 149
150 /* ------------------------- Cygwin header brokenness ---------------------- */ 150 /* ------------------------- Cygwin header brokenness ---------------------- */
151 151
152 #ifdef CYGWIN_HEADERS 152 #ifdef CYGWIN_HEADERS
153 153
154 #include <cygwin/stat.h> /* for struct stat */
154 #include <w32api.h> /* for version info */ 155 #include <w32api.h> /* for version info */
155 156
156 #if __W32API_MAJOR_VERSION > 2 || (__W32API_MAJOR_VERSION == 2 && __W32API_MINOR_VERSION >= 2) 157 /* Test for a specific version of w32api */
157 #define W32API_2_2 158 #define W32API_VER(major,minor) (((major) << 16) + (minor))
158 #endif 159 #define W32API_INSTALLED_VER \
160 W32API_VER (__W32API_MAJOR_VERSION, __W32API_MINOR_VERSION)
159 161
160 /* Various brokennesses in various versions of Cygwin */ 162 /* Various brokennesses in various versions of Cygwin */
161 163
162 /* windows.h defines. */ 164 /* windows.h defines. */
163 #ifndef SPI_GETWHEELSCROLLLINES 165 #ifndef SPI_GETWHEELSCROLLLINES
360 SYSTEMTIME st; 362 SYSTEMTIME st;
361 LPCWSTR pszDisplay; 363 LPCWSTR pszDisplay;
362 WCHAR szDisplay[64]; 364 WCHAR szDisplay[64];
363 } NMDATETIMEFORMATW, FAR * LPNMDATETIMEFORMATW; 365 } NMDATETIMEFORMATW, FAR * LPNMDATETIMEFORMATW;
364 366
365 #ifndef W32API_2_2 367 #if W32API_INSTALLED_VER < W32API_VER(2,2)
366 368
367 typedef struct tagNMTTDISPIFNOA 369 typedef struct tagNMTTDISPIFNOA
368 { 370 {
369 NMHDR hdr; 371 NMHDR hdr;
370 LPSTR lpszText; 372 LPSTR lpszText;
386 #if (_WIN32_IE >= 0x0300) 388 #if (_WIN32_IE >= 0x0300)
387 LPARAM lParam; 389 LPARAM lParam;
388 #endif 390 #endif
389 } NMTTDISPINFOW, FAR *LPNMTTDISPINFOW; 391 } NMTTDISPINFOW, FAR *LPNMTTDISPINFOW;
390 392
391 #endif /* not W32API_2_2 */ 393 #endif /* W32API_INSTALLED_VER < W32API_VER(2,2) */
392 394
393 #endif /* (_WIN32_IE >= 0x0400) */ 395 #endif /* (_WIN32_IE >= 0x0400) */
394 396
395 /* shlobj.h defines */ 397 /* shlobj.h defines */
396 #ifndef BFFM_VALIDATEFAILEDA 398 #ifndef BFFM_VALIDATEFAILEDA
472 #undef WM_IME_KEYDOWN 474 #undef WM_IME_KEYDOWN
473 #undef WM_IME_KEYUP 475 #undef WM_IME_KEYUP
474 476
475 #include <imm.h> 477 #include <imm.h>
476 478
479 #if W32API_INSTALLED_VER < W32API_VER(2,4)
477 typedef struct _SHQUERYRBINFO 480 typedef struct _SHQUERYRBINFO
478 { 481 {
479 DWORD cbSize; 482 DWORD cbSize;
480 __int64 i64Size; 483 __int64 i64Size;
481 __int64 i64NumItems; 484 __int64 i64NumItems;
482 } SHQUERYRBINFO, *LPSHQUERYRBINFO; 485 } SHQUERYRBINFO, *LPSHQUERYRBINFO;
486 #endif
483 487
484 typedef LPCDLGTEMPLATE LPCDLGTEMPLATEW; 488 typedef LPCDLGTEMPLATE LPCDLGTEMPLATEW;
485 typedef LPCDLGTEMPLATE LPCDLGTEMPLATEA; 489 typedef LPCDLGTEMPLATE LPCDLGTEMPLATEA;
486 490
487 #endif /* CYGWIN_HEADERS */ 491 #endif /* CYGWIN_HEADERS */