+/**
+ * \file math_support.C
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author Alejandro Aguilar Sierra
+ * \author André Pönitz
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+
#include <config.h>
#include "math_support.h"
-#include "lyxfont.h"
+#include "math_data.h"
#include "math_inset.h"
+#include "math_mathmlstream.h"
#include "math_parser.h"
-#include "metricsinfo.h"
-#include "math_data.h"
+
+#include "debug.h"
+#include "LColor.h"
+
#include "frontends/Painter.h"
#include "frontends/font_metrics.h"
#include "frontends/lyx_gui.h"
-#include "debug.h"
-#include "lfuns.h"
-#include "dimension.h"
-#include "Lsstream.h"
-#include "math_mathmlstream.h"
+
+#include "support/std_sstream.h"
#include <map>
+
+using std::string;
using std::max;
using std::endl;
// does not work
fontinfo fontinfos[] = {
// math fonts
- {"mathnormal", inh_family, LyXFont::MEDIUM_SERIES,
- LyXFont::UP_SHAPE, LColor::math},
+ {"mathnormal", LyXFont::ROMAN_FAMILY, LyXFont::MEDIUM_SERIES,
+ LyXFont::ITALIC_SHAPE, LColor::math},
{"mathbf", inh_family, LyXFont::BOLD_SERIES,
inh_shape, LColor::math},
{"mathcal", LyXFont::CMSY_FAMILY, inh_series,
{"mathfrak", LyXFont::EUFRAK_FAMILY, inh_series,
inh_shape, LColor::math},
{"mathrm", LyXFont::ROMAN_FAMILY, inh_series,
- inh_shape, LColor::math},
+ LyXFont::UP_SHAPE, LColor::math},
{"mathsf", LyXFont::SANS_FAMILY, inh_series,
inh_shape, LColor::math},
{"mathbb", LyXFont::MSB_FAMILY, inh_series,
inh_shape, LColor::math},
{"mathtt", LyXFont::TYPEWRITER_FAMILY, inh_series,
inh_shape, LColor::math},
+ {"mathit", inh_family, inh_series,
+ LyXFont::ITALIC_SHAPE, LColor::math},
{"cmex", LyXFont::CMEX_FAMILY, inh_series,
inh_shape, LColor::none},
{"cmm", LyXFont::CMM_FAMILY, inh_series,
// LyX internal usage
{"lyxtex", inh_family, inh_series,
- inh_shape, LColor::latex},
+ LyXFont::UP_SHAPE, LColor::latex},
{"lyxert", LyXFont::TYPEWRITER_FAMILY, inh_series,
- inh_shape, LColor::latex},
+ LyXFont::UP_SHAPE, LColor::latex},
{"lyxsymbol", LyXFont::SYMBOL_FAMILY, inh_series,
inh_shape, LColor::math},
{"lyxboldsymbol", LyXFont::SYMBOL_FAMILY, LyXFont::BOLD_SERIES,
inh_shape, LColor::math},
- {"lyxitsymbol", LyXFont::SYMBOL_FAMILY, inh_series,
- LyXFont::ITALIC_SHAPE, LColor::math},
{"lyxblacktext", LyXFont::ROMAN_FAMILY, LyXFont::MEDIUM_SERIES,
LyXFont::UP_SHAPE, LColor::foreground},
{"lyxnochange", inh_family, inh_series,
std::ostringstream os;
WriteStream ws(os);
ws << ar;
- return STRCONV(os.str());
+ return os.str();
}
{
mathed_parse_cell(ar, str);
}
+
+
+string asString(MathInset const & inset)
+{
+ std::ostringstream os;
+ WriteStream ws(os);
+ inset.write(ws);
+ return os.str();
+}
+
+
+string asString(MathAtom const & at)
+{
+ std::ostringstream os;
+ WriteStream ws(os);
+ at->write(ws);
+ return os.str();
+}