make Windows look like X11, why does this work
[fanfix.git] / src / jexer / bits / GraphicsChars.java
CommitLineData
624ce48e 1/**
7b5261bc 2 * Jexer - Java Text User Interface
624ce48e
KL
3 *
4 * License: LGPLv3 or later
5 *
7b5261bc
KL
6 * This module is licensed under the GNU Lesser General Public License
7 * Version 3. Please see the file "COPYING" in this directory for more
8 * information about the GNU Lesser General Public License Version 3.
624ce48e
KL
9 *
10 * Copyright (C) 2015 Kevin Lamonte
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU Lesser General Public License
14 * as published by the Free Software Foundation; either version 3 of
15 * the License, or (at your option) any later version.
16 *
17 * This program is distributed in the hope that it will be useful, but
18 * WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 * General Public License for more details.
21 *
22 * You should have received a copy of the GNU Lesser General Public
23 * License along with this program; if not, see
24 * http://www.gnu.org/licenses/, or write to the Free Software
25 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
26 * 02110-1301 USA
7b5261bc
KL
27 *
28 * @author Kevin Lamonte [kevin.lamonte@gmail.com]
29 * @version 1
624ce48e
KL
30 */
31package jexer.bits;
32
624ce48e 33/**
7b5261bc
KL
34 * This class contains a collection of special characters used by the
35 * windowing system and the mappings from CP437 to Unicode.
624ce48e 36 */
7b5261bc 37public final class GraphicsChars {
624ce48e
KL
38
39 /**
7b5261bc 40 * Private constructor prevents accidental creation of this class.
624ce48e 41 */
7b5261bc
KL
42 private GraphicsChars() {
43 }
624ce48e 44
7b5261bc
KL
45 /**
46 * The CP437 to Unicode translation map.
47 */
48e27807 48 public static final char [] CP437 = {
7b5261bc
KL
49 '\u2007', '\u263A', '\u263B', '\u2665',
50 '\u2666', '\u2663', '\u2660', '\u2022',
51 '\u25D8', '\u25CB', '\u25D9', '\u2642',
52 '\u2640', '\u266A', '\u266B', '\u263C',
bd8d51fa
KL
53 // Terminus has 25B6 and 25C0 here, which I believe are better
54 // Unicode equivalents anyway.
55 // '\u25BA', '\u25C4', '\u2195', '\u203C',
56 '\u25B6', '\u25C0', '\u2195', '\u203C',
7b5261bc
KL
57 '\u00B6', '\u00A7', '\u25AC', '\u21A8',
58 '\u2191', '\u2193', '\u2192', '\u2190',
59 '\u221F', '\u2194', '\u25B2', '\u25BC',
60 '\u0020', '\u0021', '\"', '\u0023',
61 '\u0024', '\u0025', '\u0026', '\'',
62 '\u0028', '\u0029', '\u002a', '\u002b',
63 '\u002c', '\u002d', '\u002e', '\u002f',
64 '\u0030', '\u0031', '\u0032', '\u0033',
65 '\u0034', '\u0035', '\u0036', '\u0037',
66 '\u0038', '\u0039', '\u003a', '\u003b',
67 '\u003c', '\u003d', '\u003e', '\u003f',
68 '\u0040', '\u0041', '\u0042', '\u0043',
69 '\u0044', '\u0045', '\u0046', '\u0047',
70 '\u0048', '\u0049', '\u004a', '\u004b',
71 '\u004c', '\u004d', '\u004e', '\u004f',
72 '\u0050', '\u0051', '\u0052', '\u0053',
73 '\u0054', '\u0055', '\u0056', '\u0057',
74 '\u0058', '\u0059', '\u005a', '\u005b',
75 '\\', '\u005d', '\u005e', '\u005f',
76 '\u0060', '\u0061', '\u0062', '\u0063',
77 '\u0064', '\u0065', '\u0066', '\u0067',
78 '\u0068', '\u0069', '\u006a', '\u006b',
79 '\u006c', '\u006d', '\u006e', '\u006f',
80 '\u0070', '\u0071', '\u0072', '\u0073',
81 '\u0074', '\u0075', '\u0076', '\u0077',
82 '\u0078', '\u0079', '\u007a', '\u007b',
83 '\u007c', '\u007d', '\u007e', '\u007f',
84 '\u00c7', '\u00fc', '\u00e9', '\u00e2',
85 '\u00e4', '\u00e0', '\u00e5', '\u00e7',
86 '\u00ea', '\u00eb', '\u00e8', '\u00ef',
87 '\u00ee', '\u00ec', '\u00c4', '\u00c5',
88 '\u00c9', '\u00e6', '\u00c6', '\u00f4',
89 '\u00f6', '\u00f2', '\u00fb', '\u00f9',
90 '\u00ff', '\u00d6', '\u00dc', '\u00a2',
91 '\u00a3', '\u00a5', '\u20a7', '\u0192',
92 '\u00e1', '\u00ed', '\u00f3', '\u00fa',
93 '\u00f1', '\u00d1', '\u00aa', '\u00ba',
94 '\u00bf', '\u2310', '\u00ac', '\u00bd',
95 '\u00bc', '\u00a1', '\u00ab', '\u00bb',
96 '\u2591', '\u2592', '\u2593', '\u2502',
97 '\u2524', '\u2561', '\u2562', '\u2556',
98 '\u2555', '\u2563', '\u2551', '\u2557',
99 '\u255d', '\u255c', '\u255b', '\u2510',
100 '\u2514', '\u2534', '\u252c', '\u251c',
101 '\u2500', '\u253c', '\u255e', '\u255f',
102 '\u255a', '\u2554', '\u2569', '\u2566',
103 '\u2560', '\u2550', '\u256c', '\u2567',
104 '\u2568', '\u2564', '\u2565', '\u2559',
105 '\u2558', '\u2552', '\u2553', '\u256b',
106 '\u256a', '\u2518', '\u250c', '\u2588',
107 '\u2584', '\u258c', '\u2590', '\u2580',
108 '\u03b1', '\u00df', '\u0393', '\u03c0',
109 '\u03a3', '\u03c3', '\u00b5', '\u03c4',
110 '\u03a6', '\u0398', '\u03a9', '\u03b4',
111 '\u221e', '\u03c6', '\u03b5', '\u2229',
112 '\u2261', '\u00b1', '\u2265', '\u2264',
113 '\u2320', '\u2321', '\u00f7', '\u2248',
114 '\u00b0', '\u2219', '\u00b7', '\u221a',
115 '\u207f', '\u00b2', '\u25a0', '\u00a0'
624ce48e
KL
116 };
117
7b5261bc
KL
118 public static final char HATCH = CP437[0xB0];
119 public static final char DOUBLE_BAR = CP437[0xCD];
120 public static final char BOX = CP437[0xFE];
121 public static final char CHECK = CP437[0xFB];
122 public static final char TRIPLET = CP437[0xF0];
123 public static final char OMEGA = CP437[0xEA];
124 public static final char PI = CP437[0xE3];
125 public static final char UPARROW = CP437[0x18];
126 public static final char DOWNARROW = CP437[0x19];
127 public static final char RIGHTARROW = CP437[0x1A];
128 public static final char LEFTARROW = CP437[0x1B];
129 public static final char SINGLE_BAR = CP437[0xC4];
130 public static final char BACK_ARROWHEAD = CP437[0x11];
131 public static final char LRCORNER = CP437[0xD9];
132 public static final char URCORNER = CP437[0xBF];
133 public static final char LLCORNER = CP437[0xC0];
134 public static final char ULCORNER = CP437[0xDA];
135 public static final char DEGREE = CP437[0xF8];
136 public static final char PLUSMINUS = CP437[0xF1];
137 public static final char WINDOW_TOP = CP437[0xCD];
138 public static final char WINDOW_LEFT_TOP = CP437[0xD5];
139 public static final char WINDOW_RIGHT_TOP = CP437[0xB8];
140 public static final char WINDOW_SIDE = CP437[0xB3];
141 public static final char WINDOW_LEFT_BOTTOM = CP437[0xD4];
142 public static final char WINDOW_RIGHT_BOTTOM = CP437[0xBE];
143 public static final char WINDOW_LEFT_TEE = CP437[0xC6];
144 public static final char WINDOW_RIGHT_TEE = CP437[0xB5];
145 public static final char WINDOW_SIDE_DOUBLE = CP437[0xBA];
146 public static final char WINDOW_LEFT_TOP_DOUBLE = CP437[0xC9];
147 public static final char WINDOW_RIGHT_TOP_DOUBLE = CP437[0xBB];
148 public static final char WINDOW_LEFT_BOTTOM_DOUBLE = CP437[0xC8];
149 public static final char WINDOW_RIGHT_BOTTOM_DOUBLE = CP437[0xBC];
624ce48e 150}