Module: wine Branch: master Commit: 341f32a36d9b31b1c2d9b5388a93114c73838fba URL: http://source.winehq.org/git/wine.git/?a=commit;h=341f32a36d9b31b1c2d9b5388a...
Author: Nikolay Sivov bunglehead@gmail.com Date: Wed Jul 30 15:07:04 2008 +0400
gdiplus: Implemented GdipStringFormatGetGenericDefault with tests.
---
dlls/gdiplus/stringformat.c | 11 ++++++++- dlls/gdiplus/tests/stringformat.c | 42 +++++++++++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+), 2 deletions(-)
diff --git a/dlls/gdiplus/stringformat.c b/dlls/gdiplus/stringformat.c index 2f8a290..201201a 100644 --- a/dlls/gdiplus/stringformat.c +++ b/dlls/gdiplus/stringformat.c @@ -67,12 +67,19 @@ GpStatus WINGDIPAPI GdipDeleteStringFormat(GpStringFormat *format)
GpStatus WINGDIPAPI GdipStringFormatGetGenericDefault(GpStringFormat **format) { + GpStatus stat; + if (!format) return InvalidParameter;
- FIXME("stub: %p\n", format); + stat = GdipCreateStringFormat(0, LANG_NEUTRAL, format); + if(stat != Ok) + return stat;
- return NotImplemented; + (*format)->align = StringAlignmentNear; + (*format)->vertalign = StringAlignmentNear; + + return Ok; }
GpStatus WINGDIPAPI GdipGetStringFormatAlign(GpStringFormat *format, diff --git a/dlls/gdiplus/tests/stringformat.c b/dlls/gdiplus/tests/stringformat.c index c851f1b..9331912 100644 --- a/dlls/gdiplus/tests/stringformat.c +++ b/dlls/gdiplus/tests/stringformat.c @@ -277,6 +277,47 @@ static void test_tabstops(void) expect(Ok, stat); }
+static void test_getgenericdefault(void) +{ + GpStringFormat *format; + GpStatus stat; + + INT flags; + INT n; + StringAlignment align, valign; + StringTrimming trimming; + StringDigitSubstitute digitsub; + LANGID digitlang; + INT tabcount; + + /* NULL arg */ + stat = GdipStringFormatGetGenericDefault(NULL); + expect(InvalidParameter, stat); + + stat = GdipStringFormatGetGenericDefault(&format); + expect(Ok, stat); + + GdipGetStringFormatFlags(format, &flags); + GdipGetStringFormatAlign(format, &align); + GdipGetStringFormatLineAlign(format, &valign); + GdipGetStringFormatHotkeyPrefix(format, &n); + GdipGetStringFormatTrimming(format, &trimming); + GdipGetStringFormatDigitSubstitution(format, &digitlang, &digitsub); + GdipGetStringFormatTabStopCount(format, &tabcount); + + expect(0, flags); + expect(HotkeyPrefixNone, n); + expect(StringAlignmentNear, align); + expect(StringAlignmentNear, align); + expect(StringTrimmingCharacter, trimming); + expect(StringDigitSubstituteUser, digitsub); + expect(LANG_NEUTRAL, digitlang); + expect(0, tabcount); + + stat = GdipDeleteStringFormat(format); + expect(Ok, stat); +} + START_TEST(stringformat) { struct GdiplusStartupInput gdiplusStartupInput; @@ -294,6 +335,7 @@ START_TEST(stringformat) test_digitsubstitution(); test_getgenerictypographic(); test_tabstops(); + test_getgenericdefault();
GdiplusShutdown(gdiplusToken); }