From 0590343445d54b270791dffb96c40e91fa4a60b7 Mon Sep 17 00:00:00 2001 From: Vitaly Lipatov Date: Wed, 5 Jan 2005 13:24:52 +0000 Subject: [PATCH] Add description for ExtTextOut (also include comments from Shachar Shemesh) and missed constants ETO_NUMERICSLOCAL, ETO_NUMERICSLATIN, ETO_PDY in wingdi.h. --- dlls/gdi/font.c | 32 ++++++++++++++++++++++++++++++++ include/wingdi.h | 3 +++ 2 files changed, 35 insertions(+) diff --git a/dlls/gdi/font.c b/dlls/gdi/font.c index 86c04830d25..bf97ff96ff0 100644 --- a/dlls/gdi/font.c +++ b/dlls/gdi/font.c @@ -1649,6 +1649,8 @@ BOOL WINAPI GetCharWidth32A( HDC hdc, UINT firstChar, UINT lastChar, /*********************************************************************** * ExtTextOutA (GDI32.@) + * + * See ExtTextOutW. */ BOOL WINAPI ExtTextOutA( HDC hdc, INT x, INT y, UINT flags, const RECT *lprect, LPCSTR str, UINT count, const INT *lpDx ) @@ -1684,6 +1686,33 @@ BOOL WINAPI ExtTextOutA( HDC hdc, INT x, INT y, UINT flags, /*********************************************************************** * ExtTextOutW (GDI32.@) + * + * Draws text using the currently selected font, background color, and text color. + * + * + * PARAMS + * x,y [I] coordinates of string + * flags [I] + * ETO_GRAYED - undocumented on MSDN + * ETO_OPAQUE - use background color for fill the rectangle + * ETO_CLIPPED - clipping text to the rectangle + * ETO_GLYPH_INDEX - Buffer is of glyph locations in fonts rather + * than encoded characters. Implies ETO_IGNORELANGUAGE + * ETO_RTLREADING - Paragraph is basically a right-to-left paragraph. + * Affects BiDi ordering + * ETO_IGNORELANGUAGE - Undocumented in MSDN - instructs ExtTextOut not to do BiDi reordering + * ETO_PDY - unimplemented + * ETO_NUMERICSLATIN - unimplemented always assumed - + * do not translate numbers into locale representations + * ETO_NUMERICSLOCAL - unimplemented - Numerals in Arabic/Farsi context should assume local form + * lprect [I] dimensions for clipping or/and opaquing + * str [I] text string + * count [I] number of symbols in string + * lpDx [I] optional parameter with distance between drawing characters + * + * RETURNS + * Success: TRUE + * Failure: FALSE */ BOOL WINAPI ExtTextOutW( HDC hdc, INT x, INT y, UINT flags, const RECT *lprect, LPCWSTR str, UINT count, const INT *lpDx ) @@ -1692,6 +1721,9 @@ BOOL WINAPI ExtTextOutW( HDC hdc, INT x, INT y, UINT flags, DC * dc = DC_GetDCUpdate( hdc ); if (dc) { + if (flags&(ETO_NUMERICSLOCAL|ETO_NUMERICSLATIN|ETO_PDY)) + FIXME("flags ETO_NUMERICSLOCAL|ETO_NUMERICSLATIN|ETO_PDY unimplemented\n"); + if(PATH_IsPathOpen(dc->path)) FIXME("called on an open path\n"); else if(dc->funcs->pExtTextOut) diff --git a/include/wingdi.h b/include/wingdi.h index 0ed6d1c0e79..81694b307bc 100644 --- a/include/wingdi.h +++ b/include/wingdi.h @@ -1251,7 +1251,10 @@ typedef FARPROC LINEDDAPROC; #define ETO_CLIPPED 0x0004 #define ETO_GLYPH_INDEX 0x0010 #define ETO_RTLREADING 0x0080 +#define ETO_NUMERICSLOCAL 0x0400 +#define ETO_NUMERICSLATIN 0x0800 #define ETO_IGNORELANGUAGE 0x1000 +#define ETO_PDY 0x2000 #define ASPECT_FILTERING 0x0001