aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEinar Johan Trøan Sømåen2012-06-14 18:08:12 +0200
committerEinar Johan Trøan Sømåen2012-06-14 18:08:12 +0200
commitf7888fea6ee8d55778e792fbb4d04f0b3acf6885 (patch)
tree5d513cbf7c3bd93b81b840f7dd3ddcc6e2aecbf7
parentbcc93b735c0a6b48bfbc4ee8e10f9dccc7bcaa9f (diff)
downloadscummvm-rg350-f7888fea6ee8d55778e792fbb4d04f0b3acf6885.tar.gz
scummvm-rg350-f7888fea6ee8d55778e792fbb4d04f0b3acf6885.tar.bz2
scummvm-rg350-f7888fea6ee8d55778e792fbb4d04f0b3acf6885.zip
WINTERMUTE: Add Ansi->ISO conversion for \' (quick hack to make J.U.L.I.A.-demo look right)
-rw-r--r--engines/wintermute/utils/StringUtil.cpp20
1 files changed, 19 insertions, 1 deletions
diff --git a/engines/wintermute/utils/StringUtil.cpp b/engines/wintermute/utils/StringUtil.cpp
index 050f76b3b6..a1525f21b5 100644
--- a/engines/wintermute/utils/StringUtil.cpp
+++ b/engines/wintermute/utils/StringUtil.cpp
@@ -176,6 +176,19 @@ Utf8String StringUtil::WideToUtf8(const WideString &WideStr) {
return "";
}
+// Currently this only does Ansi->ISO 8859, and only for carets.
+char simpleAnsiToWide(const AnsiString &str, int &offset) {
+ char c = str[offset];
+
+ if (c == 92) {
+ offset++;
+ return '\'';
+ } else {
+ offset++;
+ return c;
+ }
+}
+
//////////////////////////////////////////////////////////////////////////
WideString StringUtil::AnsiToWide(const AnsiString &str) {
// TODO: This function gets called a lot, so warnings like these drown out the usefull information
@@ -184,6 +197,11 @@ WideString StringUtil::AnsiToWide(const AnsiString &str) {
hasWarned = true;
warning("StringUtil::AnsiToWide - WideString not supported yet");
}
+ Common::String converted = "";
+ int index = 0;
+ while (index != str.size()) {
+ converted += simpleAnsiToWide(str, index);
+ }
// using default os locale!
/* setlocale(LC_CTYPE, "");
@@ -193,7 +211,7 @@ WideString StringUtil::AnsiToWide(const AnsiString &str) {
WideString ResultString(wstr);
delete [] wstr;
return ResultString;*/
- return WideString(str);
+ return WideString(converted);
}
//////////////////////////////////////////////////////////////////////////