Windows CE support in MinGW.org headers
Keith Marshall <[email protected]> Mon, 19 Dec 2016 21:12:43 +0000
| Newsgroups | gmane.comp.gnu.mingw.devel |
|---|---|
| Organization | MinGW Project |
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format. --------------040008080304040904020502 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Do we really want to keep this? Right now, I see a dozen WinCE specific references, distributed among five W32API header files. Not only does this barely scratch the surface of what would need to change, to properly support WinCE, but AFAICT, much of it is wrong anyway. Frankly, this is a maintenance burden I would prefer not to carry. Unless someone else is prepared to take this on, I propose ripping out all of the existing WinCE specific references. FWIW, I have already done this for <winuser.h> and <wingdi.h>, while retaining the attached patch to reinstate them; (the FIXMEs are my additions, indicating what I perceive to be wrong with the present references, and how I believe they should be corrected). - -- Regards, Keith. Public key available from keys.gnupg.net Key fingerprint: C19E C018 1547 DE50 E1D4 8F53 C0AD 36C6 347E 5A3F -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (GNU/Linux) iQIcBAEBAgAGBQJYWE1LAAoJEMCtNsY0flo/RU8QAMKorjv+WJbgaVZcxxAhycsE Y3P84EbYZcMSP4IJZV3LhcCtwVaLnATmCB+d0pgr7anMBGTV7NUfqI+8syXJBrkk zWXlhSpBS7Vk4+6eqyf0UwDmHT2FAXnoE8Pcm0pEmUGh9a9w0mfNpGn4Mw98E3IB 2QOu9D4Yd5mrcid8VUDpFeTEuW3ScAid6X6e6Tofn1zWf9LQnDo4xXtjsgineq+W /YUlGe+yB7mJBKhOjS63Z9uP5SK4ZO2G/JMNVZ98AHq/EGo28WSJXofmlPC4XEgJ Qvsy9PAmtmnO8K4BB3DjgJ/kYegcmH+iYjYBlDL/RWjjDN1XOlNdGgHFPJTuSXEz ABwoB8Kbeerz9+YYRHS0xBKvFR1TmFUWLjOgLpn490iggVbB+GHc3+kllQCYS6UL 9OAmLr5KQPV3sAOCSGCGqekp2OyBl1eXJoosKmNHwXXYor6RJO8CFQI/8kcAR9d9 vDoblMp18hyac55IKz7iIX3RRcUW5qi4SUd0w8jIsvwrqIuMIJnNf8h0sk4y/b3b htEOQIWB6ECoLef3uBvYhpQy0PjDgBmurLskl+r9vKvVFdzyDCzAtZBY37G5f31U N0/y0w34/JLQJIr+ed2iMJ1kJWVt1Bzze3ZPqI8Tet07sAWpx0Y7JG6nST+aNoUM PTVIJchBHnKDTiBaS8jv =R2cS -----END PGP SIGNATURE----- --------------040008080304040904020502 Content-Type: text/x-patch; name="reinstate-wince.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="reinstate-wince.patch" # HG changeset patch # Parent 8439ebf4865a87d28548305b4cd00ede427d6dd1 diff --git a/w32api/include/wingdi.h b/w32api/include/wingdi.h --- a/w32api/include/wingdi.h +++ b/w32api/include/wingdi.h @@ -3375,13 +3375,32 @@ WINGDIAPI BOOL WINAPI GetTextExtentPoint WINGDIAPI BOOL WINAPI GetTextExtentExPointI (HDC, LPWORD, int, int, LPINT, LPINT, LPSIZE); #endif /* WINNT >= Win2K */ +#ifdef _WIN32_WCE +/* FIXME: This looks completely wrong! MSDN's WinCE-5.0 documentation + * at https://msdn.microsoft.com/en-us/library/ms901137.aspx offers no + * evidence for existence of either of these functions... + */ +extern BOOL GetTextExtentPoint32A (HDC, LPCSTR, int, LPSIZE); +extern BOOL GetTextExtentPoint32W (HDC, LPCWSTR, int, LPSIZE); +/* + * FIXME: Rather, if we are to keep this support, we should declare... + */ +extern BOOL GetTextExtentPoint32 (HDC, LPCTSTR, int, LPSIZE); +extern BOOL GetTextExtentPoint (HDC, LPCTSTR, int, LPSIZE); +/* + * ...(which appear to behave identically); each exposes ONLY a UTF-16 + * (is it universally UTF-16LE?) string handling API, (as seems to be + * the norm throughout WinCE). + */ +#else #define GetTextExtentPoint32 __AW_SUFFIXED__(GetTextExtentPoint32) WINGDIAPI BOOL WINAPI GetTextExtentPoint32A (HDC, LPCSTR, int, LPSIZE); WINGDIAPI BOOL WINAPI GetTextExtentPoint32W (HDC, LPCWSTR, int, LPSIZE); +#endif #define GetTextFace __AW_SUFFIXED__(GetTextFace) WINGDIAPI int WINAPI GetTextFaceA (HDC, int, LPSTR); WINGDIAPI int WINAPI GetTextFaceW (HDC, int, LPWSTR); diff --git a/w32api/include/winuser.h b/w32api/include/winuser.h --- a/w32api/include/winuser.h +++ b/w32api/include/winuser.h @@ -3991,13 +3991,30 @@ WINUSERAPI BOOL WINAPI DestroyWindow (HW #define DialogBoxIndirectParam __AW_SUFFIXED__(DialogBoxIndirectParam) WINUSERAPI int WINAPI DialogBoxIndirectParamA (HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM); WINUSERAPI int WINAPI DialogBoxIndirectParamW (HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC, LPARAM); +#ifdef _WIN32_WCE +/* FIXME: This looks completely wrong! MSDN's WinCE-5.0 documentation + * at https://msdn.microsoft.com/en-us/library/aa452950.aspx offers no + * evidence for existence of either of these functions... + */ +extern int DialogBoxParamA (HINSTANCE, LPCSTR, HWND, DLGPROC, LPARAM); +extern int DialogBoxParamW (HINSTANCE, LPCWSTR, HWND, DLGPROC, LPARAM); +/* + * FIXME: Rather, if we are to keep this support, we should declare... + */ +extern int DialogBoxParam (HINSTANCE, LPCTSTR, HWND, DLGPROC, PARAM); +/* + * ...which exposes ONLY a UTF-16 (is it universally UTF-16LE?) string + * handling API, (as seems to be the norm throughout WinCE). + */ +#else /* !_WIN32_WCE */ #define DialogBoxParam __AW_SUFFIXED__(DialogBoxParam) WINUSERAPI int WINAPI DialogBoxParamA (HINSTANCE, LPCSTR, HWND, DLGPROC, LPARAM); WINUSERAPI int WINAPI DialogBoxParamW (HINSTANCE, LPCWSTR, HWND, DLGPROC, LPARAM); +#endif /* !_WIN32_WCE */ #define DispatchMessage __AW_SUFFIXED__(DispatchMessage) WINUSERAPI LONG WINAPI DispatchMessageA (const MSG *); WINUSERAPI LONG WINAPI DispatchMessageW (const MSG *); --------------040008080304040904020502 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline ------------------------------------------------------------------------------ Developer Access Program for Intel Xeon Phi Processors Access to Intel Xeon Phi processor-based developer platforms. With one year of Intel Parallel Studio XE. Training and support from Colfax. Order your platform today.http://sdm.link/intel --------------040008080304040904020502 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ MinGW-dvlpr mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-dvlpr --------------040008080304040904020502--