1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: types.hxx,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
33 #include <sal/types.h>
35 #define FONTNAME_MATH "StarSymbol"
36 #define FONTNAME_MATH2 "OpenSymbol"
38 /////////////////////////////////////////////////////////////////
40 enum SmPrintSize
{ PRINT_SIZE_NORMAL
, PRINT_SIZE_SCALED
, PRINT_SIZE_ZOOMED
};
42 /////////////////////////////////////////////////////////////////
44 #define FONT_ARIAL "Arial"
45 #define FONT_SYMBOL "Symbol"
46 #define FONT_MS_PMINCHO "MS PMincho"
47 #define FONT_MS_PGOTHIC "MS PGothic"
48 #define FONT_SUN_BATANG "SunBatang"
51 inline sal_Bool
IsInPrivateUseArea( sal_Unicode cChar
) { return 0xE000 <= cChar
&& cChar
<= 0xF8FF; }
53 // Greek char range as seen in svx/.../charmap.cxx RID_SUBSETSTR_BASIC_GREEK
54 inline sal_Bool
IsGreekChar( sal_Unicode cChar
) { return 0x0370 <= cChar
&& cChar
<= 0x03FF; }
56 sal_Unicode
ConvertMathPrivateUseAreaToUnicode( sal_Unicode cChar
);
57 #ifdef TL_NOT_YET_USED
58 sal_Unicode
ConvertUnicodeToMathPrivateUseArea( sal_Unicode cChar
);
60 sal_Unicode
ConvertMathToMathType( sal_Unicode cChar
);
61 sal_Unicode
ConvertMathTypeToMath( sal_Unicode cChar
);
62 #endif //TL_NOT_YET_USED
64 sal_Unicode
ConvertMathToMathML( sal_Unicode cChar
);
65 #ifdef TL_NOT_YET_USED
66 sal_Unicode
ConvertMathMLToMath( sal_Unicode cChar
);
68 sal_Unicode
GetTokenChar( sal_Unicode cChar
, sal_Bool bConvertForExport
);
69 #endif //TL_NOT_YET_USED
71 /////////////////////////////////////////////////////////////////
72 // enum definitions for characters from the 'StarSymbol' font
73 // (some chars have more than one alias!)
74 //! Note: not listed here does not(!) mean "not used"
75 //! (see %alpha ... %gamma for example)
79 MS_FACT
= (sal_Unicode
) 0x0021,
80 MS_INFINITY
= (sal_Unicode
) 0x221E,
81 MS_SLASH
= (sal_Unicode
) 0x002F,
83 MS_NDIVIDES
= (sal_Unicode
) 0x2224,
84 MS_DRARROW
= (sal_Unicode
) 0x21D2,
85 MS_DLARROW
= (sal_Unicode
) 0x21D0,
86 MS_DLRARROW
= (sal_Unicode
) 0x21D4,
87 MS_UNDERBRACE
= (sal_Unicode
) 0xE081,
88 MS_OVERBRACE
= (sal_Unicode
) 0xE082,
89 MS_CIRC
= (sal_Unicode
) 0x00B0,
90 MS_ASSIGN
= (sal_Unicode
) 0x003D,
91 MS_ERROR
= (sal_Unicode
) 0x00BF,
93 MS_NEQ
= (sal_Unicode
) 0x2260,
94 MS_PLUS
= (sal_Unicode
) 0xE083,
95 MS_MINUS
= (sal_Unicode
) 0x2212,
96 MS_MULTIPLY
= (sal_Unicode
) 0x2217,
97 MS_TIMES
= (sal_Unicode
) 0x00D7,
98 MS_CDOT
= (sal_Unicode
) 0x22C5,
99 MS_DIV
= (sal_Unicode
) 0x00F7,
100 MS_PLUSMINUS
= (sal_Unicode
) 0x00B1,
101 MS_MINUSPLUS
= (sal_Unicode
) 0x2213,
102 MS_OPLUS
= (sal_Unicode
) 0x2295,
103 MS_OMINUS
= (sal_Unicode
) 0x2296,
104 MS_OTIMES
= (sal_Unicode
) 0x2297,
105 MS_ODIVIDE
= (sal_Unicode
) 0x2298,
106 MS_ODOT
= (sal_Unicode
) 0x2299,
107 MS_UNION
= (sal_Unicode
) 0x222A,
108 MS_INTERSECT
= (sal_Unicode
) 0x2229,
110 MS_LT
= (sal_Unicode
) 0xE084,
111 MS_GT
= (sal_Unicode
) 0xE085,
112 MS_LE
= (sal_Unicode
) 0x2264,
113 MS_GE
= (sal_Unicode
) 0x2265,
114 MS_LESLANT
= (sal_Unicode
) 0xE086,
115 MS_GESLANT
= (sal_Unicode
) 0xE087,
116 MS_LL
= (sal_Unicode
) 0x226A,
117 MS_GG
= (sal_Unicode
) 0x226B,
118 MS_SIM
= (sal_Unicode
) 0x007E,
119 MS_SIMEQ
= (sal_Unicode
) 0x2243,
120 MS_APPROX
= (sal_Unicode
) 0x2248,
121 MS_DEF
= (sal_Unicode
) 0x225D,
122 MS_EQUIV
= (sal_Unicode
) 0x2261,
123 MS_PROP
= (sal_Unicode
) 0x221D,
124 MS_PARTIAL
= (sal_Unicode
) 0x2202,
125 MS_SUBSET
= (sal_Unicode
) 0x2282,
127 MS_SUPSET
= (sal_Unicode
) 0x2283,
128 MS_SUBSETEQ
= (sal_Unicode
) 0x2286,
129 MS_SUPSETEQ
= (sal_Unicode
) 0x2287,
130 MS_NSUBSET
= (sal_Unicode
) 0x2284,
131 MS_NSUPSET
= (sal_Unicode
) 0x2285,
132 MS_NSUBSETEQ
= (sal_Unicode
) 0x2288,
133 MS_NSUPSETEQ
= (sal_Unicode
) 0x2289,
134 MS_IN
= (sal_Unicode
) 0x2208,
135 MS_NOTIN
= (sal_Unicode
) 0x2209,
136 MS_EXISTS
= (sal_Unicode
) 0x2203,
137 MS_BACKEPSILON
= (sal_Unicode
) 0x220D,
138 MS_ALEPH
= (sal_Unicode
) 0x2135,
139 MS_IM
= (sal_Unicode
) 0x2111,
140 MS_RE
= (sal_Unicode
) 0x211C,
141 MS_WP
= (sal_Unicode
) 0x2118,
143 MS_LINE
= (sal_Unicode
) 0x2223,
144 MS_DLINE
= (sal_Unicode
) 0x2225,
145 MS_ORTHO
= (sal_Unicode
) 0x22A5,
146 MS_DOTSLOW
= (sal_Unicode
) 0xE08B,
147 MS_DOTSAXIS
= (sal_Unicode
) 0x22EF,
148 MS_DOTSVERT
= (sal_Unicode
) 0x22EE,
149 MS_DOTSUP
= (sal_Unicode
) 0x22F0,
150 MS_DOTSDOWN
= (sal_Unicode
) 0x22F1,
151 MS_TRANSR
= (sal_Unicode
) 0x22B6,
152 MS_TRANSL
= (sal_Unicode
) 0x22B7,
153 MS_RIGHTARROW
= (sal_Unicode
) 0xE08C,
154 MS_BACKSLASH
= (sal_Unicode
) 0x2216,
155 MS_NEG
= (sal_Unicode
) 0x00AC,
157 MS_INT
= (sal_Unicode
) 0x222B,
158 MS_IINT
= (sal_Unicode
) 0x222C,
159 MS_IIINT
= (sal_Unicode
) 0x222D,
160 MS_LINT
= (sal_Unicode
) 0x222E,
161 MS_LLINT
= (sal_Unicode
) 0x222F,
162 MS_LLLINT
= (sal_Unicode
) 0x2230,
163 MS_SQRT
= (sal_Unicode
) 0xE08D,
164 MS_COPROD
= (sal_Unicode
) 0x2210,
165 MS_PROD
= (sal_Unicode
) 0x220F,
166 MS_SUM
= (sal_Unicode
) 0x2211,
167 MS_NABLA
= (sal_Unicode
) 0x2207,
168 MS_FORALL
= (sal_Unicode
) 0x2200,
170 MS_HAT
= (sal_Unicode
) 0xE091,
171 MS_CHECK
= (sal_Unicode
) 0xE092,
172 MS_BREVE
= (sal_Unicode
) 0xE093,
173 MS_ACUTE
= (sal_Unicode
) 0xE094,
174 MS_GRAVE
= (sal_Unicode
) 0xE095,
175 MS_TILDE
= (sal_Unicode
) 0xE096,
176 MS_BAR
= (sal_Unicode
) 0xE097,
177 MS_VEC
= (sal_Unicode
) 0xE098,
178 MS_DOT
= (sal_Unicode
) 0x02D9,
179 MS_DDOT
= (sal_Unicode
) 0x00A8,
180 MS_DDDOT
= (sal_Unicode
) 0xE09B,
181 MS_CIRCLE
= (sal_Unicode
) 0x02DA,
182 MS_AND
= (sal_Unicode
) 0x2227,
183 MS_OR
= (sal_Unicode
) 0x2228,
184 MS_NI
= (sal_Unicode
) 0x220B,
185 MS_EMPTYSET
= (sal_Unicode
) 0x2205,
187 MS_LBRACE
= (sal_Unicode
) 0x007B,
188 MS_RBRACE
= (sal_Unicode
) 0x007D,
189 MS_LPARENT
= (sal_Unicode
) 0xE09E,
190 MS_RPARENT
= (sal_Unicode
) 0xE09F,
191 MS_LANGLE
= (sal_Unicode
) 0x2329,
192 MS_RANGLE
= (sal_Unicode
) 0x232A,
193 MS_LBRACKET
= (sal_Unicode
) 0x005B,
194 MS_RBRACKET
= (sal_Unicode
) 0x005D,
196 MS_LDBRACKET
= (sal_Unicode
) 0x301A,
197 MS_RDBRACKET
= (sal_Unicode
) 0x301B,
198 MS_PLACE
= (sal_Unicode
) 0xE0AA,
200 MS_LCEIL
= (sal_Unicode
) 0x2308,
201 MS_LFLOOR
= (sal_Unicode
) 0x230A,
202 MS_RCEIL
= (sal_Unicode
) 0x2309,
203 MS_RFLOOR
= (sal_Unicode
) 0x230B,
205 MS_HBAR
= (sal_Unicode
) 0x210F,
206 MS_LAMBDABAR
= (sal_Unicode
) 0x019B,
207 MS_LEFTARROW
= (sal_Unicode
) 0xE0DB,
208 MS_UPARROW
= (sal_Unicode
) 0xE0DC,
209 MS_DOWNARROW
= (sal_Unicode
) 0xE0DD,
210 MS_SETN
= (sal_Unicode
) 0x2115,
211 MS_SETZ
= (sal_Unicode
) 0x2124,
212 MS_SETQ
= (sal_Unicode
) 0x211A,
213 MS_SETR
= (sal_Unicode
) 0x211D,
214 MS_SETC
= (sal_Unicode
) 0x2102