[Scummvm-cvs-logs] SF.net SVN: scummvm:[33373] scummvm/trunk/engines/saga

thebluegr at users.sourceforge.net thebluegr at users.sourceforge.net
Mon Jul 28 14:46:31 CEST 2008


Revision: 33373
          http://scummvm.svn.sourceforge.net/scummvm/?rev=33373&view=rev
Author:   thebluegr
Date:     2008-07-28 12:46:30 +0000 (Mon, 28 Jul 2008)

Log Message:
-----------
Cleanup

Modified Paths:
--------------
    scummvm/trunk/engines/saga/font.cpp
    scummvm/trunk/engines/saga/font.h
    scummvm/trunk/engines/saga/font_map.cpp

Modified: scummvm/trunk/engines/saga/font.cpp
===================================================================
--- scummvm/trunk/engines/saga/font.cpp	2008-07-28 12:30:19 UTC (rev 33372)
+++ scummvm/trunk/engines/saga/font.cpp	2008-07-28 12:46:30 UTC (rev 33373)
@@ -240,6 +240,13 @@
 	}
 }
 
+int Font::translateChar(int charId) {
+	if (charId <= 127)
+		return charId;					// normal character
+	else
+		return _charMap[charId - 128];	// extended character
+}
+
 // Returns the horizontal length in pixels of the graphical representation
 // of at most 'count' characters of the string 'text', taking
 // into account any formatting options specified by 'flags'.
@@ -259,7 +266,7 @@
 	for (ct = count; *txt && (!count || ct > 0); txt++, ct--) {
 		ch = *txt & 0xFFU;
 		// Translate character
-		ch = _charMap[ch];
+		ch = translateChar(ch);
 		assert(ch < FONT_CHARCOUNT);
 		width += font->normal.fontCharEntry[ch].tracking;
 	}
@@ -338,11 +345,11 @@
 				// Don't do any special font mapping for the Italian fan
 				// translation of ITE
 				if (_vm->getLanguage() != Common::IT_ITA)
-					c_code = _charMap[c_code];
+					c_code = translateChar(c_code);
 			}
 		} else if (_fontMapping == 1) {
 			// Force font mapping
-			c_code = _charMap[c_code];
+			c_code = translateChar(c_code);
 		} else {
 			// In all other cases, ignore font mapping
 		}

Modified: scummvm/trunk/engines/saga/font.h
===================================================================
--- scummvm/trunk/engines/saga/font.h	2008-07-28 12:30:19 UTC (rev 33372)
+++ scummvm/trunk/engines/saga/font.h	2008-07-28 12:46:30 UTC (rev 33373)
@@ -158,6 +158,7 @@
 	 };
 
 	 Font::FontId knownFont2FontIdx(KnownFont font);
+	 int translateChar(int charId);
 
 	 int getStringWidth(FontId fontId, const char *text, size_t count, FontEffectFlags flags);
 	 int getHeight(FontId fontId, const char *text, int width, FontEffectFlags flags);
@@ -196,7 +197,7 @@
 		 return byteLength;
 	 }
 
-	static const int _charMap[256];
+	static const int _charMap[128];
 	SagaEngine *_vm;
 
 	bool _initialized;

Modified: scummvm/trunk/engines/saga/font_map.cpp
===================================================================
--- scummvm/trunk/engines/saga/font_map.cpp	2008-07-28 12:30:19 UTC (rev 33372)
+++ scummvm/trunk/engines/saga/font_map.cpp	2008-07-28 12:46:30 UTC (rev 33373)
@@ -32,135 +32,8 @@
 
 namespace Saga {
 
-const int Font::_charMap[256] = {
-	0,			//   0
-	1,			//   1
-	2,			//   2
-	3,			//   3
-	4,			//   4
-	5,			//   5
-	6,			//   6
-	7,			//   7
-	8,			//   8
-	9,			//   9
-	10,			//  10
-	11,			//  11
-	12,			//  12
-	13,			//  13
-	14,			//  14
-	15,			//  15
-	16,			//  16
-	17,			//  17
-	18,			//  18
-	19,			//  19
-	20,			//  20
-	21,			//  21
-	22,			//  22
-	23,			//  23
-	24,			//  24
-	25,			//  25
-	26,			//  26
-	27,			//  27
-	28,			//  28
-	29,			//  29
-	30,			//  30
-	31,			//  31
-	32,			//  32
-	33,			//  33
-	34,			//  34
-	35,			//  35
-	36,			//  36
-	37,			//  37
-	38,			//  38
-	39,			//  39
-	40,			//  40
-	41,			//  41
-	42,			//  42
-	43,			//  43
-	44,			//  44
-	45,			//  45
-	46,			//  46
-	47,			//  47
-	48,			//  48
-	49,			//  49
-	50,			//  50
-	51,			//  51
-	52,			//  52
-	53,			//  53
-	54,			//  54
-	55,			//  55
-	56,			//  56
-	57,			//  57
-	58,			//  58
-	59,			//  59
-	60,			//  60
-	61,			//  61
-	62,			//  62
-	63,			//  63
-	64,			//  64
-	65,			//  65
-	66,			//  66
-	67,			//  67
-	68,			//  68
-	69,			//  69
-	70,			//  70
-	71,			//  71
-	72,			//  72
-	73,			//  73
-	74,			//  74
-	75,			//  75
-	76,			//  76
-	77,			//  77
-	78,			//  78
-	79,			//  79
-	80,			//  80
-	81,			//  81
-	82,			//  82
-	83,			//  83
-	84,			//  84
-	85,			//  85
-	86,			//  86
-	87,			//  87
-	88,			//  88
-	89,			//  89
-	90,			//  90
-	91,			//  91
-	92,			//  92
-	93,			//  93
-	94,			//  94
-	95,			//  95
-	96,			//  96
-	97,			//  97
-	98,			//  98
-	99,			//  99
-	100,		// 100
-	101,		// 101
-	102,		// 102
-	103,		// 103
-	104,		// 104
-	105,		// 105
-	106,		// 106
-	107,		// 107
-	108,		// 108
-	109,		// 109
-	110,		// 110
-	111,		// 111
-	112,		// 112
-	113,		// 113
-	114,		// 114
-	115,		// 115
-	116,		// 116
-	117,		// 117
-	118,		// 118
-	119,		// 119
-	120,		// 120
-	121,		// 121
-	122,		// 122
-	123,		// 123
-	124,		// 124
-	125,		// 125
-	126,		// 126
-	127,		// 127
+const int Font::_charMap[128] = {
+	// Characters 0 - 127 are mapped directly to ISO 8859-1
 	199,		// 128 LATIN CAPITAL LETTER C WITH CEDILLA
 	252,		// 129 LATIN SMALL LETTER U WITH DIAERESIS
 	233,		// 130 LATIN SMALL LETTER E WITH ACUTE


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list