gdiplus: Add test for GdipSetTextRenderingHint and make it pass.

This commit is contained in:
Vincent Povirk 2011-03-28 17:38:38 -05:00 committed by Alexandre Julliard
parent 204253b6ba
commit b3dfe973ad
2 changed files with 50 additions and 1 deletions

View File

@ -5023,7 +5023,7 @@ GpStatus WINGDIPAPI GdipSetTextRenderingHint(GpGraphics *graphics,
{
TRACE("(%p, %d)\n", graphics, hint);
if(!graphics)
if(!graphics || hint > TextRenderingHintClearTypeGridFit)
return InvalidParameter;
if(graphics->busy)

View File

@ -3113,6 +3113,54 @@ static void test_get_set_interpolation(void)
ReleaseDC(hwnd, hdc);
}
static void test_get_set_textrenderinghint(void)
{
GpGraphics *graphics;
HDC hdc = GetDC( hwnd );
GpStatus status;
TextRenderingHint hint;
ok(hdc != NULL, "Expected HDC to be initialized\n");
status = GdipCreateFromHDC(hdc, &graphics);
expect(Ok, status);
ok(graphics != NULL, "Expected graphics to be initialized\n");
status = GdipGetTextRenderingHint(NULL, &hint);
expect(InvalidParameter, status);
status = GdipGetTextRenderingHint(graphics, NULL);
expect(InvalidParameter, status);
status = GdipSetTextRenderingHint(NULL, TextRenderingHintAntiAlias);
expect(InvalidParameter, status);
/* out of range */
status = GdipSetTextRenderingHint(graphics, TextRenderingHintClearTypeGridFit+1);
expect(InvalidParameter, status);
status = GdipGetTextRenderingHint(graphics, &hint);
expect(Ok, status);
expect(TextRenderingHintSystemDefault, hint);
status = GdipSetTextRenderingHint(graphics, TextRenderingHintSystemDefault);
expect(Ok, status);
status = GdipGetTextRenderingHint(graphics, &hint);
expect(Ok, status);
expect(TextRenderingHintSystemDefault, hint);
status = GdipSetTextRenderingHint(graphics, TextRenderingHintAntiAliasGridFit);
expect(Ok, status);
status = GdipGetTextRenderingHint(graphics, &hint);
expect(Ok, status);
expect(TextRenderingHintAntiAliasGridFit, hint);
GdipDeleteGraphics(graphics);
ReleaseDC(hwnd, hdc);
}
START_TEST(graphics)
{
struct GdiplusStartupInput gdiplusStartupInput;
@ -3172,6 +3220,7 @@ START_TEST(graphics)
test_fromMemoryBitmap();
test_string_functions();
test_get_set_interpolation();
test_get_set_textrenderinghint();
GdiplusShutdown(gdiplusToken);
DestroyWindow( hwnd );