Core: InitCaps improved to capitalize letters after any !IsLeNum character

git-svn-id: svn://ultimatepp.org/upp/trunk@3327 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
cxl 2011-04-07 08:25:52 +00:00
parent ad55016723
commit 201d1ad12b

View file

@ -2725,7 +2725,7 @@ WString InitCaps(const wchar *s)
r.Cat(ToUpper(*s));
else
r.Cat(ToLower(*s));
spc = IsSpace(*s);
spc = !IsLeNum(*s);
s++;
}
return r;
@ -2742,7 +2742,7 @@ WString InitCaps(const WString& s)
r[i] = ToUpper(c);
else
r[i] = ToLower(c);
spc = IsSpace(c);
spc = !IsLeNum(c);
}
return r;
}
@ -2773,20 +2773,7 @@ WString ToAscii(const WString& w)
String InitCaps(const char *s, byte charset)
{
charset = ResolveCharset(charset);
if(charset == CHARSET_UTF8)
return ToUtf8(InitCaps(FromUtf8(s)));
StringBuffer r;
bool spc = true;
while(*s) {
if(spc)
r.Cat(ToUpper(*s, charset));
else
r.Cat(ToLower(*s, charset));
spc = IsSpace(*s);
s++;
}
return r;
return FromUnicode(InitCaps(ToUnicode(s, charset)), charset);
}
String ToUpper(const char *s, byte charset)