Implement TIME_FORCE24HOURFORMAT and TIME_NOTIMEMARKER flags in

OLE_GetFormatA.
This commit is contained in:
Rein Klazes 2001-04-04 18:25:25 +00:00 committed by Alexandre Julliard
parent 2ec34e48a3
commit 77d06fc629
1 changed files with 15 additions and 26 deletions

View File

@ -2659,10 +2659,10 @@ static INT OLE_GetFormatA(LCID locale,
} }
} else if ( (count && (format[inpos] != type)) } else if ( (count && (format[inpos] != type))
|| count == 4 || count == 4
|| (count == 2 && strchr("ghHmst", type)) ) || (count == 2 && strchr("ghHmst", type)) ) {
{ if (type == 'h' && (tflags & TIME_FORCE24HOURFORMAT)) type= 'H';
if (type == 'd') { if (type == 'd') {
if (count == 4) { if (count == 4) {
GetLocaleInfoA(locale, GetLocaleInfoA(locale,
LOCALE_SDAYNAME1 LOCALE_SDAYNAME1
+ (xtime->wDayOfWeek+6)%7, + (xtime->wDayOfWeek+6)%7,
@ -2717,15 +2717,17 @@ static INT OLE_GetFormatA(LCID locale,
} else if ( type == 's') { } else if ( type == 's') {
sprintf(buf, dgfmt[count], xtime->wSecond); sprintf(buf, dgfmt[count], xtime->wSecond);
} else if (type == 't') { } else if (type == 't') {
if (count == 1) { if ((tflags & TIME_NOTIMEMARKER))
buf[0]='\0';
else if (count == 1) {
sprintf(buf, "%c", (xtime->wHour < 12) ? 'A' : 'P'); sprintf(buf, "%c", (xtime->wHour < 12) ? 'A' : 'P');
} else if (count == 2) { } else if (count == 2) {
/* sprintf(buf, "%s", (xtime->wHour < 12) ? "AM" : "PM"); */ /* sprintf(buf, "%s", (xtime->wHour < 12) ? "AM" : "PM"); */
GetLocaleInfoA(locale, GetLocaleInfoA(locale,
(xtime->wHour<12) (xtime->wHour<12)
? LOCALE_S1159 : LOCALE_S2359, ? LOCALE_S1159 : LOCALE_S2359,
buf, sizeof(buf)); buf, sizeof(buf));
} }
}; };
/* we need to check the next char in the format string /* we need to check the next char in the format string
@ -2787,8 +2789,7 @@ static INT OLE_GetFormatA(LCID locale,
if (outpos > datelen-1) outpos = datelen-1; if (outpos > datelen-1) outpos = datelen-1;
date[outpos] = '\0'; date[outpos] = '\0';
TRACE("OLE_GetFormatA returns string '%s', len %d\n", TRACE("returns string '%s', len %d\n", date, outpos);
date, outpos);
return outpos; return outpos;
} }
@ -4173,12 +4174,6 @@ GetTimeFormatA(LCID locale, /* [in] */
thislocale = OLE2NLS_CheckLocale ( locale ); thislocale = OLE2NLS_CheckLocale ( locale );
if ( flags & (TIME_NOTIMEMARKER | TIME_FORCE24HOURFORMAT ))
{ FIXME("TIME_NOTIMEMARKER or TIME_FORCE24HOURFORMAT not implemented\n");
}
flags &= (TIME_NOSECONDS | TIME_NOMINUTESORSECONDS); /* mask for OLE_GetFormatA*/
if (format == NULL) if (format == NULL)
{ if (flags & LOCALE_NOUSEROVERRIDE) /*use system default*/ { if (flags & LOCALE_NOUSEROVERRIDE) /*use system default*/
{ thislocale = GetSystemDefaultLCID(); { thislocale = GetSystemDefaultLCID();
@ -4228,12 +4223,6 @@ GetTimeFormatW(LCID locale, /* [in] */
thislocale = OLE2NLS_CheckLocale ( locale ); thislocale = OLE2NLS_CheckLocale ( locale );
if ( flags & (TIME_NOTIMEMARKER | TIME_FORCE24HOURFORMAT ))
{ FIXME("TIME_NOTIMEMARKER or TIME_FORCE24HOURFORMAT not implemented\n");
}
flags &= (TIME_NOSECONDS | TIME_NOMINUTESORSECONDS); /* mask for OLE_GetFormatA*/
if (format == NULL) if (format == NULL)
{ if (flags & LOCALE_NOUSEROVERRIDE) /*use system default*/ { if (flags & LOCALE_NOUSEROVERRIDE) /*use system default*/
{ thislocale = GetSystemDefaultLCID(); { thislocale = GetSystemDefaultLCID();