| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228 |
- // Permission is hereby granted, free of charge, to any person obtaining
- // a copy of this software and associated documentation files (the
- // "Software"), to deal in the Software without restriction, including
- // without limitation the rights to use, copy, modify, merge, publish,
- // distribute, sublicense, and/or sell copies of the Software, and to
- // permit persons to whom the Software is furnished to do so, subject to
- // the following conditions:
- //
- // The above copyright notice and this permission notice shall be
- // included in all copies or substantial portions of the Software.
- //
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
- // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
- // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- //
- // Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
- //
- // Authors:
- // Peter Bartok ([email protected])
- //
- //
- // This map is for convencience only, any app can create/use it's own
- // StdCharCode -> <text> table
- using System.Collections;
- namespace System.Windows.Forms.RTF {
- internal class TextMap {
- #region Local Variables
- private string[] table;
- #endregion // Local Variables
- #region Public Constructors
- public TextMap() {
- table = new string[(int)StandardCharCode.MaxChar];
- for (int i = 0; i < (int)StandardCharCode.MaxChar; i++) {
- table[i] = string.Empty;
- }
- }
- #endregion // Public Constructors
- #region Public Instance Properties
- internal string this[StandardCharCode c] { // FIXME - this should be public, if the whole namespace was public (ie standalone RTF parser)
- get {
- return table[(int)c];
- }
- set {
- table[(int)c] = value;
- }
- }
- public string[] Table {
- get {
- return table;
- }
- }
- #endregion // Public Instance Properties
- #region Public Static Methods
- public static void SetupStandardTable(string[] table) {
- table[(int)StandardCharCode.space] = " ";
- table[(int)StandardCharCode.exclam] = "!";
- table[(int)StandardCharCode.quotedbl] = "\"";
- table[(int)StandardCharCode.numbersign] = "#";
- table[(int)StandardCharCode.dollar] = "$";
- table[(int)StandardCharCode.percent] = "%";
- table[(int)StandardCharCode.ampersand] = "&";
- table[(int)StandardCharCode.quoteright] = "'";
- table[(int)StandardCharCode.parenleft] = "(";
- table[(int)StandardCharCode.parenright] = ")";
- table[(int)StandardCharCode.asterisk] = "*";
- table[(int)StandardCharCode.plus] = "+";
- table[(int)StandardCharCode.comma] = ",";
- table[(int)StandardCharCode.hyphen] = "-";
- table[(int)StandardCharCode.period] = ".";
- table[(int)StandardCharCode.slash] = "/";
- table[(int)StandardCharCode.zero] = "0";
- table[(int)StandardCharCode.one] = "1";
- table[(int)StandardCharCode.two] = "2";
- table[(int)StandardCharCode.three] = "3";
- table[(int)StandardCharCode.four] = "4";
- table[(int)StandardCharCode.five] = "5";
- table[(int)StandardCharCode.six] = "6";
- table[(int)StandardCharCode.seven] = "7";
- table[(int)StandardCharCode.eight] = "8";
- table[(int)StandardCharCode.nine] = "9";
- table[(int)StandardCharCode.colon] = ":";
- table[(int)StandardCharCode.semicolon] = ";";
- table[(int)StandardCharCode.less] = "<";
- table[(int)StandardCharCode.equal] = "=";
- table[(int)StandardCharCode.greater] = ">";
- table[(int)StandardCharCode.question] = "?";
- table[(int)StandardCharCode.at] = "@";
- table[(int)StandardCharCode.A] = "A";
- table[(int)StandardCharCode.B] = "B";
- table[(int)StandardCharCode.C] = "C";
- table[(int)StandardCharCode.D] = "D";
- table[(int)StandardCharCode.E] = "E";
- table[(int)StandardCharCode.F] = "F";
- table[(int)StandardCharCode.G] = "G";
- table[(int)StandardCharCode.H] = "H";
- table[(int)StandardCharCode.I] = "I";
- table[(int)StandardCharCode.J] = "J";
- table[(int)StandardCharCode.K] = "K";
- table[(int)StandardCharCode.L] = "L";
- table[(int)StandardCharCode.M] = "M";
- table[(int)StandardCharCode.N] = "N";
- table[(int)StandardCharCode.O] = "O";
- table[(int)StandardCharCode.P] = "P";
- table[(int)StandardCharCode.Q] = "Q";
- table[(int)StandardCharCode.R] = "R";
- table[(int)StandardCharCode.S] = "S";
- table[(int)StandardCharCode.T] = "T";
- table[(int)StandardCharCode.U] = "U";
- table[(int)StandardCharCode.V] = "V";
- table[(int)StandardCharCode.W] = "W";
- table[(int)StandardCharCode.X] = "X";
- table[(int)StandardCharCode.Y] = "Y";
- table[(int)StandardCharCode.Z] = "Z";
- table[(int)StandardCharCode.bracketleft] = "[";
- table[(int)StandardCharCode.backslash] = "\\";
- table[(int)StandardCharCode.bracketright] = "]";
- table[(int)StandardCharCode.asciicircum] = "^";
- table[(int)StandardCharCode.underscore] = "_";
- table[(int)StandardCharCode.quoteleft] = "`";
- table[(int)StandardCharCode.a] = "a";
- table[(int)StandardCharCode.b] = "b";
- table[(int)StandardCharCode.c] = "c";
- table[(int)StandardCharCode.d] = "d";
- table[(int)StandardCharCode.e] = "e";
- table[(int)StandardCharCode.f] = "f";
- table[(int)StandardCharCode.g] = "g";
- table[(int)StandardCharCode.h] = "h";
- table[(int)StandardCharCode.i] = "i";
- table[(int)StandardCharCode.j] = "j";
- table[(int)StandardCharCode.k] = "k";
- table[(int)StandardCharCode.l] = "l";
- table[(int)StandardCharCode.m] = "m";
- table[(int)StandardCharCode.n] = "n";
- table[(int)StandardCharCode.o] = "o";
- table[(int)StandardCharCode.p] = "p";
- table[(int)StandardCharCode.q] = "q";
- table[(int)StandardCharCode.r] = "r";
- table[(int)StandardCharCode.s] = "s";
- table[(int)StandardCharCode.t] = "t";
- table[(int)StandardCharCode.u] = "u";
- table[(int)StandardCharCode.v] = "v";
- table[(int)StandardCharCode.w] = "w";
- table[(int)StandardCharCode.x] = "x";
- table[(int)StandardCharCode.y] = "y";
- table[(int)StandardCharCode.z] = "z";
- table[(int)StandardCharCode.braceleft] = "{";
- table[(int)StandardCharCode.bar] = "|";
- table[(int)StandardCharCode.braceright] = "}";
- table[(int)StandardCharCode.asciitilde] = "~";
- table[(int)StandardCharCode.AE] = "AE";
- table[(int)StandardCharCode.OE] = "OE";
- table[(int)StandardCharCode.acute] = "'";
- table[(int)StandardCharCode.ae] = "ae";
- table[(int)StandardCharCode.angleleft] = "<";
- table[(int)StandardCharCode.angleright] = ">";
- table[(int)StandardCharCode.arrowboth] = "<->";
- table[(int)StandardCharCode.arrowdblboth] = "<=>";
- table[(int)StandardCharCode.arrowdblleft] = "<=";
- table[(int)StandardCharCode.arrowdblright] = "=>";
- table[(int)StandardCharCode.arrowleft] = "<-";
- table[(int)StandardCharCode.arrowright] = "->";
- table[(int)StandardCharCode.bullet] = "o";
- table[(int)StandardCharCode.cent] = "cent";
- table[(int)StandardCharCode.circumflex] = "^";
- table[(int)StandardCharCode.copyright] = "(c)";
- table[(int)StandardCharCode.copyrightsans] = "(c)";
- table[(int)StandardCharCode.degree] = "deg.";
- table[(int)StandardCharCode.divide] = "/";
- table[(int)StandardCharCode.dotlessi] = "i";
- table[(int)StandardCharCode.ellipsis] = "...";
- table[(int)StandardCharCode.emdash] = "--";
- table[(int)StandardCharCode.endash] = "-";
- table[(int)StandardCharCode.fi] = "fi";
- table[(int)StandardCharCode.fl] = "fl";
- table[(int)StandardCharCode.fraction] = "/";
- table[(int)StandardCharCode.germandbls] = "ss";
- table[(int)StandardCharCode.grave] = "`";
- table[(int)StandardCharCode.greaterequal] = ">=";
- table[(int)StandardCharCode.guillemotleft] = "<<";
- table[(int)StandardCharCode.guillemotright] = ">>";
- table[(int)StandardCharCode.guilsinglleft] = "<";
- table[(int)StandardCharCode.guilsinglright] = ">";
- table[(int)StandardCharCode.lessequal] = "<=";
- table[(int)StandardCharCode.logicalnot] = "~";
- table[(int)StandardCharCode.mathasterisk] = "*";
- table[(int)StandardCharCode.mathequal] = "=";
- table[(int)StandardCharCode.mathminus] = "-";
- table[(int)StandardCharCode.mathnumbersign] = "#";
- table[(int)StandardCharCode.mathplus] = "+";
- table[(int)StandardCharCode.mathtilde] = "~";
- table[(int)StandardCharCode.minus] = "-";
- table[(int)StandardCharCode.mu] = "u";
- table[(int)StandardCharCode.multiply] = "x";
- table[(int)StandardCharCode.nobrkhyphen] = "-";
- table[(int)StandardCharCode.nobrkspace] = "";
- table[(int)StandardCharCode.notequal] = "!=";
- table[(int)StandardCharCode.oe] = "oe";
- table[(int)StandardCharCode.onehalf] = "1/2";
- table[(int)StandardCharCode.onequarter] = "1/4";
- table[(int)StandardCharCode.periodcentered] = ".";
- table[(int)StandardCharCode.plusminus] = "+/-";
- table[(int)StandardCharCode.quotedblbase] = ",,";
- table[(int)StandardCharCode.quotedblleft] = "\"";
- table[(int)StandardCharCode.quotedblright] = "\"";
- table[(int)StandardCharCode.quotesinglbase] = ",";
- table[(int)StandardCharCode.registered] = "reg.";
- table[(int)StandardCharCode.registersans] = "reg.";
- table[(int)StandardCharCode.threequarters] = "3/4";
- table[(int)StandardCharCode.tilde] = "~";
- table[(int)StandardCharCode.trademark] = "(TM)";
- table[(int)StandardCharCode.trademarksans] = "(TM)";
- }
- #endregion // Public Static Methods
- }
- }
|